From commits-return-8209-apmail-activemq-commits-archive=activemq.apache.org@activemq.apache.org Thu Mar 13 03:10:12 2008 Return-Path: Delivered-To: apmail-activemq-commits-archive@www.apache.org Received: (qmail 83645 invoked from network); 13 Mar 2008 03:10:12 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 13 Mar 2008 03:10:12 -0000 Received: (qmail 90871 invoked by uid 500); 13 Mar 2008 03:10:09 -0000 Delivered-To: apmail-activemq-commits-archive@activemq.apache.org Received: (qmail 90844 invoked by uid 500); 13 Mar 2008 03:10:09 -0000 Mailing-List: contact commits-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@activemq.apache.org Delivered-To: mailing list commits@activemq.apache.org Received: (qmail 90835 invoked by uid 99); 13 Mar 2008 03:10:09 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 12 Mar 2008 20:10:09 -0700 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 13 Mar 2008 03:09:40 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 6A37A1A9832; Wed, 12 Mar 2008 20:09:51 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r636609 - in /activemq/trunk/activemq-core/src: main/java/org/apache/activemq/broker/BrokerService.java main/java/org/apache/activemq/broker/MutableBrokerFilter.java test/java/org/apache/activemq/transport/TransportBrokerTestSupport.java Date: Thu, 13 Mar 2008 03:09:50 -0000 To: commits@activemq.apache.org From: chirino@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20080313030951.6A37A1A9832@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: chirino Date: Wed Mar 12 20:09:48 2008 New Revision: 636609 URL: http://svn.apache.org/viewvc?rev=636609&view=rev Log: Allow the region broker implemenation to get changed by subclasses of BrokerService. Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/BrokerService.java activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/MutableBrokerFilter.java activemq/trunk/activemq-core/src/test/java/org/apache/activemq/transport/TransportBrokerTestSupport.java Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/BrokerService.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/BrokerService.java?rev=636609&r1=636608&r2=636609&view=diff ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/BrokerService.java (original) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/BrokerService.java Wed Mar 12 20:09:48 2008 @@ -126,7 +126,7 @@ private SystemUsage consumerSystemUsaage; private PersistenceAdapter persistenceAdapter; private PersistenceAdapterFactory persistenceFactory; - private DestinationFactory destinationFactory; + protected DestinationFactory destinationFactory; private MessageAuthorizationPolicy messageAuthorizationPolicy; private List transportConnectors = new CopyOnWriteArrayList(); private List networkConnectors = new CopyOnWriteArrayList(); @@ -1370,11 +1370,11 @@ } protected PersistenceAdapter registerPersistenceAdapterMBean(PersistenceAdapter adaptor) throws IOException { - MBeanServer mbeanServer = getManagementContext().getMBeanServer(); - if (mbeanServer != null) { - - - } +// MBeanServer mbeanServer = getManagementContext().getMBeanServer(); +// if (mbeanServer != null) { +// +// +// } return adaptor; } @@ -1487,17 +1487,16 @@ // Add a filter that will stop access to the broker once stopped broker = new MutableBrokerFilter(broker) { public void stop() throws Exception { - setNext(new ErrorBroker("Broker has been stopped: " + this) { + Broker old = this.next.getAndSet(new ErrorBroker("Broker has been stopped: " + this) { // Just ignore additional stop actions. public void stop() throws Exception { } }); - super.stop(); + old.stop(); } }; - RegionBroker rBroker = (RegionBroker)regionBroker; - rBroker.getDestinationStatistics().setEnabled(enableStatistics); +// RegionBroker rBroker = (RegionBroker)regionBroker; if (isUseJmx()) { ManagedRegionBroker managedBroker = (ManagedRegionBroker)regionBroker; @@ -1537,10 +1536,14 @@ configureServices(destinationInterceptors); DestinationInterceptor destinationInterceptor = new CompositeDestinationInterceptor(destinationInterceptors); - RegionBroker regionBroker = null; if (destinationFactory == null) { destinationFactory = new DestinationFactoryImpl(this, getTaskRunnerFactory(), getPersistenceAdapter()); } + return createRegionBroker(destinationInterceptor); + } + + protected Broker createRegionBroker(DestinationInterceptor destinationInterceptor) throws IOException { + RegionBroker regionBroker; if (isUseJmx()) { MBeanServer mbeanServer = getManagementContext().getMBeanServer(); regionBroker = new ManagedRegionBroker(this, mbeanServer, getBrokerObjectName(), getTaskRunnerFactory(), getConsumerSystemUsage(), destinationFactory, @@ -1552,8 +1555,10 @@ regionBroker.setKeepDurableSubsActive(keepDurableSubsActive); regionBroker.setBrokerName(getBrokerName()); - return regionBroker; - } + regionBroker.getDestinationStatistics().setEnabled(enableStatistics); + + return regionBroker; + } /** * Create the default destination interceptor Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/MutableBrokerFilter.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/MutableBrokerFilter.java?rev=636609&r1=636608&r2=636609&view=diff ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/MutableBrokerFilter.java (original) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/MutableBrokerFilter.java Wed Mar 12 20:09:48 2008 @@ -51,7 +51,7 @@ */ public class MutableBrokerFilter implements Broker { - private AtomicReference next = new AtomicReference(); + protected AtomicReference next = new AtomicReference(); public MutableBrokerFilter(Broker next) { this.next.set(next); Modified: activemq/trunk/activemq-core/src/test/java/org/apache/activemq/transport/TransportBrokerTestSupport.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/test/java/org/apache/activemq/transport/TransportBrokerTestSupport.java?rev=636609&r1=636608&r2=636609&view=diff ============================================================================== --- activemq/trunk/activemq-core/src/test/java/org/apache/activemq/transport/TransportBrokerTestSupport.java (original) +++ activemq/trunk/activemq-core/src/test/java/org/apache/activemq/transport/TransportBrokerTestSupport.java Wed Mar 12 20:09:48 2008 @@ -28,7 +28,7 @@ public abstract class TransportBrokerTestSupport extends BrokerTest { - private TransportConnector connector; + protected TransportConnector connector; private ArrayList connections = new ArrayList(); protected void setUp() throws Exception { @@ -49,7 +49,9 @@ connection.stop(); iter.remove(); } - connector.stop(); + if( connector!=null ) { + connector.stop(); + } super.tearDown(); }