You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by mc...@apache.org on 2002/02/21 17:35:46 UTC
cvs commit: jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/components/application LifecycleHelper.java
mcconnell 02/02/21 08:35:46
Modified: src/java/org/apache/avalon/phoenix/components/application
LifecycleHelper.java
Log:
updated to include Serviceable interface
Revision Changes Path
1.29 +24 -0 jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/components/application/LifecycleHelper.java
Index: LifecycleHelper.java
===================================================================
RCS file: /home/cvs/jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/components/application/LifecycleHelper.java,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- LifecycleHelper.java 26 Jan 2002 08:22:43 -0000 1.28
+++ LifecycleHelper.java 21 Feb 2002 16:35:46 -0000 1.29
@@ -17,6 +17,9 @@
import org.apache.avalon.framework.component.ComponentManager;
import org.apache.avalon.framework.component.Composable;
import org.apache.avalon.framework.component.DefaultComponentManager;
+import org.apache.avalon.framework.service.ServiceManager;
+import org.apache.avalon.framework.service.Serviceable;
+import org.apache.avalon.framework.service.DefaultServiceManager;
import org.apache.avalon.framework.configuration.Configurable;
import org.apache.avalon.framework.configuration.Configuration;
import org.apache.avalon.framework.configuration.ConfigurationException;
@@ -234,6 +237,12 @@
final ComponentManager componentManager = createComponentManager( metaData );
( (Composable)block ).compose( componentManager );
}
+ else if( block instanceof Serviceable )
+ {
+ notice( name, stage );
+ final ServiceManager manager = createServiceManager( metaData );
+ ( (Serviceable)block ).service( manager );
+ }
//Configuring stage
stage = STAGE_CONFIG;
@@ -491,6 +500,21 @@
}
return componentManager;
+ }
+
+ private ServiceManager createServiceManager( final BlockMetaData metaData )
+ {
+ final DefaultServiceManager manager = new DefaultServiceManager();
+ final DependencyMetaData[] roles = metaData.getDependencies();
+
+ for( int i = 0; i < roles.length; i++ )
+ {
+ final DependencyMetaData role = roles[ i ];
+ final Block dependency = m_application.getBlock( role.getName() );
+ manager.put( role.getRole(), dependency );
+ }
+
+ return manager;
}
/**
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>