Return-Path: Delivered-To: apmail-jakarta-avalon-cvs-archive@apache.org Received: (qmail 86452 invoked from network); 20 Aug 2002 10:33:18 -0000 Received: from unknown (HELO nagoya.betaversion.org) (192.18.49.131) by daedalus.apache.org with SMTP; 20 Aug 2002 10:33:18 -0000 Received: (qmail 590 invoked by uid 97); 20 Aug 2002 10:33:44 -0000 Delivered-To: qmlist-jakarta-archive-avalon-cvs@jakarta.apache.org Received: (qmail 565 invoked by uid 97); 20 Aug 2002 10:33:43 -0000 Mailing-List: contact avalon-cvs-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Avalon CVS List" Reply-To: "Avalon Developers List" Delivered-To: mailing list avalon-cvs@jakarta.apache.org Received: (qmail 551 invoked by uid 97); 20 Aug 2002 10:33:43 -0000 X-Antivirus: nagoya (v4198 created Apr 24 2002) Date: 20 Aug 2002 10:33:13 -0000 Message-ID: <20020820103313.76245.qmail@icarus.apache.org> From: leif@apache.org To: jakarta-avalon-excalibur-cvs@apache.org Subject: cvs commit: jakarta-avalon-excalibur/component/src/java/org/apache/avalon/excalibur/component ExcaliburComponentManagerCreator.java X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N leif 2002/08/20 03:33:13 Modified: component/src/java/org/apache/avalon/excalibur/component ExcaliburComponentManagerCreator.java Log: Fix a problem where the IM was not being shutdown correctly if the ECM threw any exceptions on startup. Revision Changes Path 1.3 +33 -9 jakarta-avalon-excalibur/component/src/java/org/apache/avalon/excalibur/component/ExcaliburComponentManagerCreator.java Index: ExcaliburComponentManagerCreator.java =================================================================== RCS file: /home/cvs/jakarta-avalon-excalibur/component/src/java/org/apache/avalon/excalibur/component/ExcaliburComponentManagerCreator.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- ExcaliburComponentManagerCreator.java 18 Aug 2002 01:59:12 -0000 1.2 +++ ExcaliburComponentManagerCreator.java 20 Aug 2002 10:33:13 -0000 1.3 @@ -200,10 +200,19 @@ // Unfortunately, there is not a very good place to make this settable. m_primordialLogger = new ConsoleLogger( ConsoleLogger.LEVEL_INFO ); - initializeLoggerManager( loggerManagerConfig ); - initializeRoleManager( roleManagerConfig ); - initializeInstrumentManager( instrumentManagerConfig ); - initializeComponentManager( componentManagerConfig ); + try + { + initializeLoggerManager( loggerManagerConfig ); + initializeRoleManager( roleManagerConfig ); + initializeInstrumentManager( instrumentManagerConfig ); + initializeComponentManager( componentManagerConfig ); + } + catch ( Exception e ) + { + // Clean up after the managers which were set up. + dispose(); + throw e; + } } /** @@ -289,10 +298,25 @@ // Clean up all of the objects that we created in the propper order. try { - ContainerUtil.shutdown( m_componentManager ); - ContainerUtil.shutdown( m_instrumentManager ); - ContainerUtil.shutdown( m_roleManager ); - ContainerUtil.shutdown( m_loggerManager ); + if ( m_componentManager != null ) + { + ContainerUtil.shutdown( m_componentManager ); + } + + if ( m_instrumentManager != null ) + { + ContainerUtil.shutdown( m_instrumentManager ); + } + + if ( m_roleManager != null ) + { + ContainerUtil.shutdown( m_roleManager ); + } + + if ( m_loggerManager != null ) + { + ContainerUtil.shutdown( m_loggerManager ); + } } catch ( Exception e ) { -- To unsubscribe, e-mail: For additional commands, e-mail: