Return-Path: Delivered-To: apmail-jakarta-avalon-cvs-archive@apache.org Received: (qmail 9654 invoked from network); 9 Jan 2003 11:26:31 -0000 Received: from exchange.sun.com (192.18.33.10) by daedalus.apache.org with SMTP; 9 Jan 2003 11:26:31 -0000 Received: (qmail 17586 invoked by uid 97); 9 Jan 2003 11:28:01 -0000 Delivered-To: qmlist-jakarta-archive-avalon-cvs@jakarta.apache.org Received: (qmail 17544 invoked by uid 97); 9 Jan 2003 11:28:01 -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 17532 invoked by uid 98); 9 Jan 2003 11:28:00 -0000 X-Antivirus: nagoya (v4218 created Aug 14 2002) Date: 9 Jan 2003 11:26:25 -0000 Message-ID: <20030109112625.11432.qmail@icarus.apache.org> From: mcconnell@apache.org To: avalon-sandbox-cvs@apache.org Subject: cvs commit: avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/kernel DefaultKernel.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 mcconnell 2003/01/09 03:26:25 Modified: merlin/src/java/org/apache/avalon/merlin/block Block.java DefaultBlock.java merlin/src/java/org/apache/avalon/merlin/container ContainerLoader.java merlin/src/java/org/apache/avalon/merlin/kernel DefaultKernel.java Log: Updates to sync with seperation of appliance factory concerns from the classloader implementation. Revision Changes Path 1.7 +1 -2 avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/block/Block.java Index: Block.java =================================================================== RCS file: /home/cvs/avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/block/Block.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- Block.java 9 Jan 2003 03:59:39 -0000 1.6 +++ Block.java 9 Jan 2003 11:26:25 -0000 1.7 @@ -62,7 +62,6 @@ * @author Avalon Development Team * @version $Revision$ $Date$ */ -//public interface Block extends Appliance, Container public interface Block extends Appliance { static final String AVALON_BLOCK_KEY = "Avalon-Block"; 1.12 +30 -10 avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/block/DefaultBlock.java Index: DefaultBlock.java =================================================================== RCS file: /home/cvs/avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/block/DefaultBlock.java,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- DefaultBlock.java 9 Jan 2003 03:59:39 -0000 1.11 +++ DefaultBlock.java 9 Jan 2003 11:26:25 -0000 1.12 @@ -18,6 +18,8 @@ import org.apache.avalon.assembly.appliance.ApplianceContext; import org.apache.avalon.assembly.appliance.ApplianceException; import org.apache.avalon.assembly.engine.EngineClassLoader; +import org.apache.avalon.assembly.locator.Locator; +import org.apache.avalon.assembly.locator.Contextualizable; import org.apache.avalon.assembly.lifestyle.LifestyleException; import org.apache.avalon.assembly.lifestyle.LifestyleService; import org.apache.avalon.assembly.lifecycle.AssemblyService; @@ -27,7 +29,6 @@ import org.apache.avalon.framework.activity.Initializable; import org.apache.avalon.framework.activity.Disposable; import org.apache.avalon.framework.context.Context; -import org.apache.avalon.framework.context.Contextualizable; import org.apache.avalon.framework.context.ContextException; import org.apache.avalon.framework.configuration.Configuration; import org.apache.avalon.framework.configuration.Configurable; @@ -92,6 +93,8 @@ // state //------------------------------------------------------------------------------- + EngineClassLoader m_engine; + /** * The root container instance that this block is managing. */ @@ -131,18 +134,35 @@ */ private BlockException m_error; - //------------------------------------------------------------------------------- - // constructor - //------------------------------------------------------------------------------- - public DefaultBlock( - EngineClassLoader engine, LifestyleService lifestyle, AssemblyService assembly, - ApplianceContext context, Context system, Logger logger ) - throws ApplianceException + //===================================================================== + // Contextualizable + //===================================================================== + + /** + * Supply a object locator to the instance. + * @param locator the object locator + * @exception LocatorException if a object location error occurs + */ + public void contextualize( Locator context ) throws ContextException + { + super.contextualize( context ); + m_engine = (EngineClassLoader) context.get( "urn:assembly:engine" ); + } + + //===================================================================== + // Initializable + //===================================================================== + + public void initialize() throws Exception { - super( engine, lifestyle, assembly, context, system, logger ); + super.initialize(); + if( m_engine == null ) + { + throw new IllegalStateException( "context" ); + } m_thread = new Thread( this, super.getPath() ); - m_thread.setContextClassLoader( engine ); + m_thread.setContextClassLoader( m_engine ); m_thread.start(); } 1.9 +1 -2 avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/container/ContainerLoader.java Index: ContainerLoader.java =================================================================== RCS file: /home/cvs/avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/container/ContainerLoader.java,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- ContainerLoader.java 27 Dec 2002 16:42:27 -0000 1.8 +++ ContainerLoader.java 9 Jan 2003 11:26:25 -0000 1.9 @@ -214,7 +214,6 @@ engine = new EngineClassLoader( parent ); } engine.enableLogging( logger.getChildLogger( "engine" ) ); - engine.configure( config ); DefaultContext context = new DefaultContext(); context.put( "urn:assembly:home", home ); context.put( "urn:assembly:engine.extensions", extensions ); 1.24 +2 -13 avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/kernel/DefaultKernel.java Index: DefaultKernel.java =================================================================== RCS file: /home/cvs/avalon-sandbox/merlin/src/java/org/apache/avalon/merlin/kernel/DefaultKernel.java,v retrieving revision 1.23 retrieving revision 1.24 diff -u -r1.23 -r1.24 --- DefaultKernel.java 8 Jan 2003 23:03:29 -0000 1.23 +++ DefaultKernel.java 9 Jan 2003 11:26:25 -0000 1.24 @@ -935,25 +935,14 @@ { EngineClassLoader engine = new EngineClassLoader( m_bootstrap ); engine.enableLogging( getLogger().getChildLogger( "engine" ) ); - - // - // configuration of the engine should be removed with a preference for - // creating the resources that the engine needs and supplying the - // resources - // - - engine.configure( config ); Context system = getSystemContext(); DefaultContext context = new DefaultContext( system ); context.put( "urn:assembly:engine.bootstrap", "true" ); context.put( "urn:assembly:engine.extensions", extensions ); context.put( "urn:assembly:engine.classpath", classpath ); + context.put( "urn:assembly:logging.manager", logging ); context.makeReadOnly(); engine.contextualize( context ); - DefaultServiceManager manager = new DefaultServiceManager(); - manager.put( "urn:assembly:logging.manager", logging ); - manager.makeReadOnly(); - engine.service( manager ); engine.initialize(); return engine; } -- To unsubscribe, e-mail: For additional commands, e-mail: