hivemind-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From hls...@apache.org
Subject cvs commit: jakarta-hivemind/library/src/descriptor/META-INF hivemodule.xml
Date Mon, 09 Aug 2004 14:53:48 GMT
hlship      2004/08/09 07:53:47

  Modified:    framework/src/test/hivemind/test/services EventRegister.xml
                        BuilderAccess.xml ComplexModule.xml
                        SetClassResolver.xml SmartFacet.xml
                        InitializeMethodFailure.xml
                        ConstructClassResolver.xml
                        InterceptorParameters.xml ConstructErrorHandler.xml
                        SetObject.xml Tracker.xml AutowireService.xml
                        ServiceTranslator.xml BuilderAccessFailure.xml
                        ConstructorFactory.xml SetErrorHandler.xml
                        Shutdown.xml
               examples/src/documentation/content/xdocs/hivemind-examples
                        panorama.xml calc.xml
               src/documentation/content/xdocs interceptors.xml
                        descriptor.xml links.ent bootstrap.xml override.xml
               library/src/test/hivemind/test/lib EJBProxy.xml
               framework/src/test/hivemind/test/rules
                        ConfigurationTranslator.xml
               framework/src/java/org/apache/hivemind/parse
                        DescriptorParser.properties DescriptorParser.java
               framework/src/descriptor/META-INF hivemodule.xml
               .        status.xml
               examples/src/descriptor/META-INF panorama.startup.xml
                        examples.xml
               library/src/descriptor/META-INF hivemodule.xml
  Log:
  Make hivemind.BuilderFactory the default for <invoke-factory>.
  
  Revision  Changes    Path
  1.3       +1 -1      jakarta-hivemind/framework/src/test/hivemind/test/services/EventRegister.xml
  
  Index: EventRegister.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/EventRegister.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- EventRegister.xml	25 Jun 2004 20:19:57 -0000	1.2
  +++ EventRegister.xml	9 Aug 2004 14:53:43 -0000	1.3
  @@ -23,7 +23,7 @@
     </service-point>
   
     <service-point id="ZapEventConsumer" interface="hivemind.test.services.ZapEventConsumer">
  -  	<invoke-factory service-id="hivemind.BuilderFactory">
  +  	<invoke-factory>
     		<construct class="hivemind.test.services.impl.ZapEventConsumerImpl">
     		  <event-listener service-id="ZapEventProducer"/>	
     		</construct>	
  
  
  
  1.5       +1 -1      jakarta-hivemind/framework/src/test/hivemind/test/services/BuilderAccess.xml
  
  Index: BuilderAccess.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/BuilderAccess.xml,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- BuilderAccess.xml	17 Jun 2004 15:16:10 -0000	1.4
  +++ BuilderAccess.xml	9 Aug 2004 14:53:43 -0000	1.5
  @@ -17,7 +17,7 @@
   <module id="hivemind.test.services" version="1.0.0">
   
     <service-point id="BuilderAccess" interface="hivemind.test.services.BuilderAccess">
  -  	<invoke-factory service-id="hivemind.BuilderFactory">
  +  	<invoke-factory>
     		<construct class="hivemind.test.services.impl.BuilderAccessImpl"
     			log-property="log"
     			messages-property="messages"
  
  
  
  1.6       +1 -1      jakarta-hivemind/framework/src/test/hivemind/test/services/ComplexModule.xml
  
  Index: ComplexModule.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/ComplexModule.xml,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- ComplexModule.xml	17 Jun 2004 15:16:10 -0000	1.5
  +++ ComplexModule.xml	9 Aug 2004 14:53:43 -0000	1.6
  @@ -23,7 +23,7 @@
   	</service-point>
   	
   	<service-point id="CountFactory" interface="org.apache.hivemind.ServiceInterceptorFactory">
  -		<invoke-factory service-id="hivemind.BuilderFactory">
  +		<invoke-factory>
   			<construct
           class="hivemind.test.services.impl.CountFactory"
           service-id-property="serviceId">
  
  
  
  1.2       +1 -1      jakarta-hivemind/framework/src/test/hivemind/test/services/SetClassResolver.xml
  
  Index: SetClassResolver.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/SetClassResolver.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- SetClassResolver.xml	3 Aug 2004 14:02:11 -0000	1.1
  +++ SetClassResolver.xml	9 Aug 2004 14:53:43 -0000	1.2
  @@ -17,7 +17,7 @@
   
   <module id="hivemind.test.services" version="1.0.0">
       <service-point id="SetClassResolver" interface="hivemind.test.services.ClassResolverHolder">
  -        <invoke-factory service-id="hivemind.BuilderFactory">
  +        <invoke-factory>
               <construct
                   class="hivemind.test.services.impl.ClassResolverHolderImpl" class-resolver-property="classResolver"/>
           </invoke-factory>
  
  
  
  1.2       +1 -1      jakarta-hivemind/framework/src/test/hivemind/test/services/SmartFacet.xml
  
  Index: SmartFacet.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/SmartFacet.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- SmartFacet.xml	29 Feb 2004 20:57:09 -0000	1.1
  +++ SmartFacet.xml	9 Aug 2004 14:53:43 -0000	1.2
  @@ -2,7 +2,7 @@
   <module id="hivemind.test.services" version="1.0.0">
   	
   	<service-point id="Simple" interface="hivemind.test.services.SimpleService">
  -		<invoke-factory service-id="hivemind.BuilderFactory">
  +		<invoke-factory>
   			<construct class="hivemind.test.services.impl.SimpleLiar">
   					<set property="fixedResult" value="99"/>				
   			</construct>	
  
  
  
  1.2       +1 -1      jakarta-hivemind/framework/src/test/hivemind/test/services/InitializeMethodFailure.xml
  
  Index: InitializeMethodFailure.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/InitializeMethodFailure.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- InitializeMethodFailure.xml	3 Aug 2004 14:02:11 -0000	1.1
  +++ InitializeMethodFailure.xml	9 Aug 2004 14:53:43 -0000	1.2
  @@ -17,7 +17,7 @@
   
   <module id="hivemind.test.services" version="1.0.0">
       <service-point id="Runnable" interface="java.lang.Runnable">
  -        <invoke-factory service-id="hivemind.BuilderFactory">
  +        <invoke-factory>
               <construct class="hivemind.test.services.impl.MockRunnable" initialize-method="doesNotExist"/>
           </invoke-factory>
       </service-point>
  
  
  
  1.2       +1 -1      jakarta-hivemind/framework/src/test/hivemind/test/services/ConstructClassResolver.xml
  
  Index: ConstructClassResolver.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/ConstructClassResolver.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ConstructClassResolver.xml	3 Aug 2004 14:02:11 -0000	1.1
  +++ ConstructClassResolver.xml	9 Aug 2004 14:53:44 -0000	1.2
  @@ -17,7 +17,7 @@
   
   <module id="hivemind.test.services" version="1.0.0">
       <service-point id="ConstructClassResolver" interface="hivemind.test.services.ClassResolverHolder">
  -        <invoke-factory service-id="hivemind.BuilderFactory">
  +        <invoke-factory>
               <construct class="hivemind.test.services.impl.ClassResolverHolderImpl">
                   <class-resolver/>
               </construct>
  
  
  
  1.6       +1 -1      jakarta-hivemind/framework/src/test/hivemind/test/services/InterceptorParameters.xml
  
  Index: InterceptorParameters.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/InterceptorParameters.xml,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- InterceptorParameters.xml	25 Jun 2004 20:19:57 -0000	1.5
  +++ InterceptorParameters.xml	9 Aug 2004 14:53:44 -0000	1.6
  @@ -31,7 +31,7 @@
       
     <service-point id="FilterLoggingInterceptor" interface="org.apache.hivemind.ServiceInterceptorFactory"
     		parameters-schema-id="FilterParameters">
  -    <invoke-factory service-id="hivemind.BuilderFactory">
  +    <invoke-factory>
       	<construct class="hivemind.test.services.impl.FilterLoggingInterceptor">
       	  <set-service property="classFactory" service-id="hivemind.ClassFactory"/>	
       	</construct>	
  
  
  
  1.2       +1 -1      jakarta-hivemind/framework/src/test/hivemind/test/services/ConstructErrorHandler.xml
  
  Index: ConstructErrorHandler.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/ConstructErrorHandler.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ConstructErrorHandler.xml	3 Aug 2004 14:02:11 -0000	1.1
  +++ ConstructErrorHandler.xml	9 Aug 2004 14:53:44 -0000	1.2
  @@ -17,7 +17,7 @@
   
   <module id="hivemind.test.services" version="1.0.0">
       <service-point id="ConstructErrorHandler" interface="hivemind.test.services.ErrorHandlerHolder">
  -        <invoke-factory service-id="hivemind.BuilderFactory">
  +        <invoke-factory>
               <construct class="hivemind.test.services.impl.ErrorHandlerHolderImpl">
                   <error-handler/>
               </construct>
  
  
  
  1.2       +1 -1      jakarta-hivemind/framework/src/test/hivemind/test/services/SetObject.xml
  
  Index: SetObject.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/SetObject.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- SetObject.xml	3 Aug 2004 14:02:12 -0000	1.1
  +++ SetObject.xml	9 Aug 2004 14:53:44 -0000	1.2
  @@ -17,7 +17,7 @@
   
   <module id="hivemind.test.services" version="1.0.0">
       <service-point id="SestObject" interface="hivemind.test.services.SetObjectFixture">
  -        <invoke-factory service-id="hivemind.BuilderFactory">
  +        <invoke-factory>
               <construct class="hivemind.test.services.impl.SetObjectFixtureImpl">
                   <set-object property="classFactory1" value="service:hivemind.ClassFactory"/>
                   <set-object property="classFactory2" value="service:hivemind.ClassFactory"/>
  
  
  
  1.5       +3 -3      jakarta-hivemind/framework/src/test/hivemind/test/services/Tracker.xml
  
  Index: Tracker.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/Tracker.xml,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- Tracker.xml	25 Jun 2004 20:19:57 -0000	1.4
  +++ Tracker.xml	9 Aug 2004 14:53:44 -0000	1.5
  @@ -17,7 +17,7 @@
   <module id="hivemind.test.services.tracker" version="0.0.1">
   	<service-point id="Fred"
   		interface="org.apache.hivemind.ServiceInterceptorFactory">
  -		<invoke-factory service-id="hivemind.BuilderFactory">
  +		<invoke-factory>
   			<construct class="hivemind.test.services.impl.TrackerFactory">
   				<set property="name" value="Fred"/>
   			</construct>
  @@ -25,7 +25,7 @@
   	</service-point>
   	<service-point id="Barney"
   		interface="org.apache.hivemind.ServiceInterceptorFactory">
  -		<invoke-factory service-id="hivemind.BuilderFactory">
  +		<invoke-factory>
   			<construct class="hivemind.test.services.impl.TrackerFactory">
   				<set property="name" value="Barney"/>
   			</construct>
  @@ -33,7 +33,7 @@
   	</service-point>
   	<service-point id="Wilma"
   		interface="org.apache.hivemind.ServiceInterceptorFactory">
  -		<invoke-factory service-id="hivemind.BuilderFactory">
  +		<invoke-factory>
   			<construct class="hivemind.test.services.impl.TrackerFactory">
   				<set property="name" value="Wilma"/>
   			</construct>
  
  
  
  1.2       +1 -1      jakarta-hivemind/framework/src/test/hivemind/test/services/AutowireService.xml
  
  Index: AutowireService.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/AutowireService.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- AutowireService.xml	3 Aug 2004 14:02:12 -0000	1.1
  +++ AutowireService.xml	9 Aug 2004 14:53:44 -0000	1.2
  @@ -17,7 +17,7 @@
   
   <module id="hivemind.test.services" version="1.0.0">
       <service-point id="AutowireService" interface="hivemind.test.services.SetObjectFixture">
  -        <invoke-factory service-id="hivemind.BuilderFactory">
  +        <invoke-factory>
               <construct class="hivemind.test.services.impl.SetObjectFixtureImpl"/>
           </invoke-factory>
       </service-point>
  
  
  
  1.5       +1 -1      jakarta-hivemind/framework/src/test/hivemind/test/services/ServiceTranslator.xml
  
  Index: ServiceTranslator.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/ServiceTranslator.xml,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- ServiceTranslator.xml	25 Jun 2004 20:19:57 -0000	1.4
  +++ ServiceTranslator.xml	9 Aug 2004 14:53:44 -0000	1.5
  @@ -23,7 +23,7 @@
   	</service-point>
   	
   	<service-point id="Constructed" interface="hivemind.test.services.Constructed">
  -		<invoke-factory service-id="hivemind.BuilderFactory">			
  +		<invoke-factory>			
   			<construct class="hivemind.test.services.impl.ConstructedImpl">
   				<set-service property="threadLocal" service-id="hivemind.ThreadLocalStorage"/>
   				<set-service property="simpleService" service-id="Simple"/>	
  
  
  
  1.5       +1 -1      jakarta-hivemind/framework/src/test/hivemind/test/services/BuilderAccessFailure.xml
  
  Index: BuilderAccessFailure.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/BuilderAccessFailure.xml,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- BuilderAccessFailure.xml	17 Jun 2004 15:16:10 -0000	1.4
  +++ BuilderAccessFailure.xml	9 Aug 2004 14:53:44 -0000	1.5
  @@ -17,7 +17,7 @@
   <module id="hivemind.test.services" version="1.0.0">
   
     <service-point id="BuilderAccessFailure" interface="hivemind.test.services.BuilderAccess">
  -  	<invoke-factory service-id="hivemind.BuilderFactory">
  +  	<invoke-factory>
     		<construct class="hivemind.test.services.impl.BuilderAccessImpl"
     			log-property="log"
     			messages-property="messages"
  
  
  
  1.2       +7 -7      jakarta-hivemind/framework/src/test/hivemind/test/services/ConstructorFactory.xml
  
  Index: ConstructorFactory.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/ConstructorFactory.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ConstructorFactory.xml	3 Oct 2003 20:00:16 -0000	1.1
  +++ ConstructorFactory.xml	9 Aug 2004 14:53:44 -0000	1.2
  @@ -2,7 +2,7 @@
   <module id="hivemind.test.services" version="1.0.0">
   
     <service-point id="DefaultConstructor" interface="hivemind.test.services.ConstructorAccess">
  -  	<invoke-factory service-id="hivemind.BuilderFactory">
  +  	<invoke-factory>
     		<construct class="hivemind.test.services.impl.ConstructorAccessImpl">
     			<set property="expectedConstructorMessage" value="()"/>
     		</construct>
  @@ -10,7 +10,7 @@
     </service-point>
   
     <service-point id="LongConstructor" interface="hivemind.test.services.ConstructorAccess">
  -  	<invoke-factory service-id="hivemind.BuilderFactory">
  +  	<invoke-factory>
     		<construct class="hivemind.test.services.impl.ConstructorAccessImpl">
     			<long>42</long>
     			<set property="expectedConstructorMessage" value="(long)"/>
  @@ -19,7 +19,7 @@
     </service-point>
   
     <service-point id="ServiceConstructor" interface="hivemind.test.services.ConstructorAccess">
  -  	<invoke-factory service-id="hivemind.BuilderFactory">
  +  	<invoke-factory>
     		<construct class="hivemind.test.services.impl.ConstructorAccessImpl">
     			<service>DefaultConstructor</service>
     			<set property="expectedConstructorMessage" value="(ConstructorAccess)"/>
  @@ -28,7 +28,7 @@
     </service-point>
   
     <service-point id="MultiConstructor" interface="hivemind.test.services.ConstructorAccess">
  -  	<invoke-factory service-id="hivemind.BuilderFactory">
  +  	<invoke-factory>
     		<construct class="hivemind.test.services.impl.ConstructorAccessImpl">
     			<service>DefaultConstructor</service>
     			<service-id/>
  @@ -38,7 +38,7 @@
     </service-point>
   
     <service-point id="ConfigurationConstructor" interface="hivemind.test.services.ConstructorAccess">
  -  	<invoke-factory service-id="hivemind.BuilderFactory">
  +  	<invoke-factory>
     		<construct class="hivemind.test.services.impl.ConstructorAccessImpl">
     			<configuration>DummyConfiguration</configuration>
     			<set property="expectedConstructorMessage" value="(List)"/>
  @@ -47,7 +47,7 @@
     </service-point>
   
     <service-point id="ConfigurationConstructor" interface="hivemind.test.services.ConstructorAccess">
  -  	<invoke-factory service-id="hivemind.BuilderFactory">
  +  	<invoke-factory>
     		<construct class="hivemind.test.services.impl.ConstructorAccessImpl">
     			<configuration>DummyConfiguration</configuration>
     			<set property="expectedConstructorMessage" value="(List)"/>
  @@ -56,7 +56,7 @@
     </service-point>
   
     <service-point id="LogAndMessagesConstructor" interface="hivemind.test.services.ConstructorAccess">
  -  	<invoke-factory service-id="hivemind.BuilderFactory">
  +  	<invoke-factory>
     		<construct class="hivemind.test.services.impl.ConstructorAccessImpl">
     			<log/>
     			<messages/>
  
  
  
  1.2       +1 -1      jakarta-hivemind/framework/src/test/hivemind/test/services/SetErrorHandler.xml
  
  Index: SetErrorHandler.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/SetErrorHandler.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- SetErrorHandler.xml	3 Aug 2004 14:02:11 -0000	1.1
  +++ SetErrorHandler.xml	9 Aug 2004 14:53:44 -0000	1.2
  @@ -17,7 +17,7 @@
   
   <module id="hivemind.test.services" version="1.0.0">
       <service-point id="SetErrorHandler" interface="hivemind.test.services.ErrorHandlerHolder">
  -        <invoke-factory service-id="hivemind.BuilderFactory">
  +        <invoke-factory>
               <construct
                   class="hivemind.test.services.impl.ErrorHandlerHolderImpl" error-handler-property="errorHandler"/>
           </invoke-factory>
  
  
  
  1.6       +1 -1      jakarta-hivemind/framework/src/test/hivemind/test/services/Shutdown.xml
  
  Index: Shutdown.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/services/Shutdown.xml,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- Shutdown.xml	25 Jun 2004 20:19:57 -0000	1.5
  +++ Shutdown.xml	9 Aug 2004 14:53:44 -0000	1.6
  @@ -27,7 +27,7 @@
   	</service-point>
   	
   	<service-point id="Singleton" interface="java.lang.Runnable">
  -		<invoke-factory service-id="hivemind.BuilderFactory">
  +		<invoke-factory>
   		  <construct class="hivemind.test.services.impl.RunnableImpl" log-property="log">
   		  	<set property="type" value="Singleton"/>
   		  	<event-listener service-id="hivemind.ShutdownCoordinator"/>
  
  
  
  1.5       +1 -1      jakarta-hivemind/examples/src/documentation/content/xdocs/hivemind-examples/panorama.xml
  
  Index: panorama.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/examples/src/documentation/content/xdocs/hivemind-examples/panorama.xml,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- panorama.xml	9 Aug 2004 01:10:37 -0000	1.4
  +++ panorama.xml	9 Aug 2004 14:53:45 -0000	1.5
  @@ -206,7 +206,7 @@
   <configuration-point id="Startup" schema-id="Tasks"/>
   
   <service-point id="Startup" interface="java.lang.Runnable">
  -  <invoke-factory service-id="hivemind.BuilderFactory">
  +  <invoke-factory>
       <construct class="com.panorama.startup.impl.TaskExecutor">
         <set-configuration property="tasks" configuration-id="Startup"/>
       </construct>
  
  
  
  1.4       +1 -1      jakarta-hivemind/examples/src/documentation/content/xdocs/hivemind-examples/calc.xml
  
  Index: calc.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/examples/src/documentation/content/xdocs/hivemind-examples/calc.xml,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- calc.xml	9 Aug 2004 01:10:37 -0000	1.3
  +++ calc.xml	9 Aug 2004 14:53:45 -0000	1.4
  @@ -118,7 +118,7 @@
       <interceptor service-id="hivemind.LoggingInterceptor"/>
     </service-point>
     <service-point id="Calculator" interface="org.apache.hivemind.examples.Calculator">
  -    <invoke-factory service-id="hivemind.BuilderFactory">
  +    <invoke-factory>
         <construct class="org.apache.hivemind.examples.impl.CalculatorImpl"/>
       </invoke-factory>
       <interceptor service-id="hivemind.LoggingInterceptor"/>
  
  
  
  1.6       +1 -1      jakarta-hivemind/src/documentation/content/xdocs/interceptors.xml
  
  Index: interceptors.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/src/documentation/content/xdocs/interceptors.xml,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- interceptors.xml	6 Aug 2004 14:16:41 -0000	1.5
  +++ interceptors.xml	9 Aug 2004 14:53:46 -0000	1.6
  @@ -140,7 +140,7 @@
   					deployment descriptor:</p>
   				<source><![CDATA[
   <service-point id="NullInterceptor" interface="org.apache.hivemind.ServiceInterceptorFactory">
  -  <invoke-factory service-id="hivemind.BuilderFactory">
  +  <invoke-factory>
       <construct class="com.example.impl.NullInterceptor"/>
     </invoke-factory>
   </service-point>]]></source>
  
  
  
  1.7       +14 -4     jakarta-hivemind/src/documentation/content/xdocs/descriptor.xml
  
  Index: descriptor.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/src/documentation/content/xdocs/descriptor.xml,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- descriptor.xml	8 Aug 2004 13:16:26 -0000	1.6
  +++ descriptor.xml	9 Aug 2004 14:53:46 -0000	1.7
  @@ -332,9 +332,10 @@
   				<tr>
   					<td>service-id</td>
   					<td>string</td>
  -					<td>yes</td>
  +					<td>no</td>
   					<td>The id of the factory service. This may be a simple id for a
  -						service within the same module, or a fully qualified service id.</td>
  +						service within the same module, or a fully qualified service id. The default, if not
  +            specified, is &hivemind.BuilderFactory;.</td>
   				</tr>
   				<tr>
   					<td>model</td>
  @@ -349,8 +350,9 @@
   			<p>A service factory defines its parameters in terms of a schema. The
   				content of the &_invoke-factory; is converted, in accordance with the
   				factory's schema, and provided to the factory.</p>
  -			<p>Additional service models can be defined via the &hivemind.ServiceModels;
  -				configuration point.</p>
  +			<note>
  +        Additional service models can be defined via the &hivemind.ServiceModels;
  +				configuration point.</note>
   		</section>
   		<section>
   			<title>map</title>
  @@ -413,6 +415,14 @@
   				HiveMind will include runtime dependency checking based on version
   				number.</warning>
   		</section>
  +    <section>
  +      <title>parameters-schema</title>
  +      
  +      <p>The &_parameters-schema; element is identical to the &schema; element, but only appears
  +        inside &service-point;, to define the schema for the parameters for a service implementation factory or service interceptor factory.
  +        </p>
  +    </section>
  +    
   		<section>
   			<title>rules</title>
   			<p> &_rules; is a container for element and attribute parsing rules within
  
  
  
  1.13      +2 -2      jakarta-hivemind/src/documentation/content/xdocs/links.ent
  
  Index: links.ent
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/src/documentation/content/xdocs/links.ent,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- links.ent	9 Aug 2004 13:24:48 -0000	1.12
  +++ links.ent	9 Aug 2004 14:53:46 -0000	1.13
  @@ -85,7 +85,7 @@
   <!ENTITY schema '<link href="&projectroot;descriptor.html#schema">&_schema;</link>'>
   
   <!ENTITY _parameters-schema '&lt;parameters-schema&gt;'>
  -<!ENTITY parameters-schema '<link href="&projectroot;descriptor.html#schema">&_parameters-schema;</link>'>
  +<!ENTITY parameters-schema '<link href="&projectroot;descriptor.html#parameters-schema">&_parameters-schema;</link>'>
   
   <!ENTITY _element '&lt;element&gt;'>
   <!ENTITY element '<link href="&projectroot;descriptor.html#element">&_element;</link>'>
  
  
  
  1.9       +1 -1      jakarta-hivemind/src/documentation/content/xdocs/bootstrap.xml
  
  Index: bootstrap.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/src/documentation/content/xdocs/bootstrap.xml,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- bootstrap.xml	3 Aug 2004 14:02:13 -0000	1.8
  +++ bootstrap.xml	9 Aug 2004 14:53:46 -0000	1.9
  @@ -178,7 +178,7 @@
     </service-point>
     
     <service-point id="Calculator" interface="hivemind.examples.Calculator">
  -    <invoke-factory service-id="hivemind.BuilderFactory">
  +    <invoke-factory>
         <!-- Autowires service properties based on interface! -->
         <constuct class="hivemind.examples.impl.CalculatorImpl"/>
       </invoke-factory>
  
  
  
  1.4       +4 -4      jakarta-hivemind/src/documentation/content/xdocs/override.xml
  
  Index: override.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/src/documentation/content/xdocs/override.xml,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- override.xml	6 Aug 2004 14:16:41 -0000	1.3
  +++ override.xml	9 Aug 2004 14:53:46 -0000	1.4
  @@ -53,7 +53,7 @@
     </service-point>
     
     <service-point id="Consumer" interface="ex.override.Consumer">
  -    <invoke-factory service-id="hivemind.BuilderFactory">
  +    <invoke-factory>
         <construct class="ex.override.impl.Consumer">
           <set-service property="provider" service-id="Provider"/>
       </invoke-factory>
  @@ -76,7 +76,7 @@
     </contribution>
     
     <service-point id="Consumer" interface="ex.override.Consumer">
  -    <invoke-factory service-id="hivemind.BuilderFactory">
  +    <invoke-factory>
         <construct class="ex.override.impl.Consumer">
           <set-service property="provider" service-id="${ex.override.Provider}"/>
       </invoke-factory>
  @@ -104,7 +104,7 @@
     </contribution>
     
     <service-point id="OverrideProvider" interface="ex.override.Provider">
  -    <invoke-factory service-id="hivemind.BuilderFactory">
  +    <invoke-factory>
         <construct class="ex.override.impl.OverrideProviderImpl">
           <set-service property="defaultProvider" service-id="Provider"/>
         </construct>
  @@ -120,7 +120,7 @@
     <!-- Consumer unchanged from step 2 -->
     
     <service-point id="Consumer" interface="ex.override.Consumer">
  -    <invoke-factory service-id="hivemind.BuilderFactory">
  +    <invoke-factory>
         <construct class="ex.override.impl.Consumer">
           <set-service property="provider" service-id="${ex.override.Provider}"/>
       </invoke-factory>
  
  
  
  1.6       +1 -1      jakarta-hivemind/library/src/test/hivemind/test/lib/EJBProxy.xml
  
  Index: EJBProxy.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/library/src/test/hivemind/test/lib/EJBProxy.xml,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- EJBProxy.xml	8 Aug 2004 13:16:26 -0000	1.5
  +++ EJBProxy.xml	9 Aug 2004 14:53:46 -0000	1.6
  @@ -35,7 +35,7 @@
   			A service which can perform name lookups of objects using JNDI.
   			
   		
  -		<invoke-factory service-id="hivemind.BuilderFactory">
  +		<invoke-factory>
   		  <construct
   		    class="hivemind.test.lib.impl.NameLookupHack">
   		    <set property="initialFactory" value="fred"/>
  
  
  
  1.4       +2 -2      jakarta-hivemind/framework/src/test/hivemind/test/rules/ConfigurationTranslator.xml
  
  Index: ConfigurationTranslator.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/test/hivemind/test/rules/ConfigurationTranslator.xml,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- ConfigurationTranslator.xml	17 Jun 2004 15:16:13 -0000	1.3
  +++ ConfigurationTranslator.xml	9 Aug 2004 14:53:46 -0000	1.4
  @@ -34,14 +34,14 @@
   	</contribution>
   	<service-point id="ExtensionPointTranslator"
   		interface="hivemind.test.rules.DatumHolder">
  -		<invoke-factory service-id="hivemind.BuilderFactory">
  +		<invoke-factory>
   			<construct class="hivemind.test.rules.impl.DatumHolderImpl">
   				<set-configuration property="elements" configuration-id="EP"/>
   			</construct>
   		</invoke-factory>
   	</service-point>
   	<service-point id="Failure" interface="hivemind.test.rules.DatumHolder">
  -		<invoke-factory service-id="hivemind.BuilderFactory">
  +		<invoke-factory>
   			<construct class="hivemind.test.rules.impl.DatumHolderImpl">
   				<set-configuration property="elements" configuration-id="missing"/>
   			</construct>
  
  
  
  1.9       +1 -1      jakarta-hivemind/framework/src/java/org/apache/hivemind/parse/DescriptorParser.properties
  
  Index: DescriptorParser.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/java/org/apache/hivemind/parse/DescriptorParser.properties,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- DescriptorParser.properties	17 Jun 2004 15:16:11 -0000	1.8
  +++ DescriptorParser.properties	9 Aug 2004 14:53:46 -0000	1.9
  @@ -61,7 +61,7 @@
   
   required.read-content.property=true
   
  -required.invoke-factory.service-id=true
  +required.invoke-factory.service-id=false
   required.invoke-factory.model=false
   
   required.schema.id=true
  
  
  
  1.24      +1 -1      jakarta-hivemind/framework/src/java/org/apache/hivemind/parse/DescriptorParser.java
  
  Index: DescriptorParser.java
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/java/org/apache/hivemind/parse/DescriptorParser.java,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -u -r1.23 -r1.24
  --- DescriptorParser.java	3 Aug 2004 14:02:19 -0000	1.23
  +++ DescriptorParser.java	9 Aug 2004 14:53:46 -0000	1.24
  @@ -954,7 +954,7 @@
   
           checkAttributes();
   
  -        ifd.setFactoryServiceId(getAttribute("service-id"));
  +        ifd.setFactoryServiceId(getAttribute("service-id", "hivemind.BuilderFactory"));
   
           String model = getAttribute("model", DEFAULT_SERVICE_MODEL);
   
  
  
  
  1.13      +645 -432  jakarta-hivemind/framework/src/descriptor/META-INF/hivemodule.xml
  
  Index: hivemodule.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/framework/src/descriptor/META-INF/hivemodule.xml,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- hivemodule.xml	3 Aug 2004 14:02:18 -0000	1.12
  +++ hivemodule.xml	9 Aug 2004 14:53:47 -0000	1.13
  @@ -6,7 +6,7 @@
      you may not use this file except in compliance with the License.
      You may obtain a copy of the License at
   
  -       http://www.apache.org/licenses/LICENSE-2.0
  +     http://www.apache.org/licenses/LICENSE-2.0
   
      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
  @@ -15,445 +15,658 @@
      limitations under the License.
   -->
   
  -<module id="hivemind"      version="1.0.0">
  -        
  +<module id="hivemind" version="1.0.0">
  +    
     The master module for HiveMind, defining core, universal functionality.
   
     <configuration-point id="SymbolSources">
  -              Provides a list of sources for values of substitution symbols.
  -                <schema>
  -<element name="source">Describes a single source of symbol values.
  -  <attribute name="name" required="true">
  -  A unique name used 
  -  to identify the source, used when ordering the sources.</attribute> 
  -    
  -      <attribute name="class" 
  -  translator="instance">
  -      Name of a class implementing the SymbolSource interface.</attribute>
  -  
  -   <attribute 
  -  name="service-id" translator="service">
  -  Service configuration id for a service which implements the SymbolSource 
  -  interface.</attribute> 
  -    <attribute name="before">
  -      A list of the names of other sources this source should 
  -  precede.</attribute> 
  -    <attribute name="after">
  -      A list of the names of other sources this source should 
  -  follow.</attribute> 
  -    
  -      <conversion class="org.apache.hivemind.SymbolSourceContribution"> 
  -        <map attribute="class" 
  -  property="source"/> 
  -    <map attribute="service-id" property="source"/> 
  -      <map attribute="before" 
  -  property="followingNames"/> 
  -    <map attribute="after" property="precedingNames"/> 
  -    </conversion> 
  +    Provides a list of sources for values of substitution symbols.
  +        
  +    <schema>
  +      <element name="source">
  +        
  +        Describes a single source of symbol values.
  +        
  +        <attribute name="name" required="true">
  +          A unique name used 
  +          to identify the source, used when ordering the sources.
  +        </attribute> 
  +  
  +        <attribute name="class" translator="instance">
  +          Name of a class implementing the SymbolSource interface.
  +        </attribute>
  +  
  +        <attribute name="service-id" translator="service">
  +          Service configuration id for a service which implements the SymbolSource 
  +          interface.
  +        </attribute> 
  +        
  +        <attribute name="before">
  +          A list of the names of other sources this source should 
  +          precede.
  +        </attribute> 
  +        
  +        <attribute name="after">
  +          A list of the names of other sources this source should 
  +          follow.
  +        </attribute> 
  +  
  +        <conversion class="org.apache.hivemind.SymbolSourceContribution"> 
  +          <map attribute="class" property="source"/> 
  +          <map attribute="service-id" property="source"/> 
  +          <map attribute="before" property="followingNames"/> 
  +          <map attribute="after" property="precedingNames"/> 
  +        </conversion> 
  +      </element>
  +    </schema>
  +  </configuration-point>
  +  
  +  <contribution configuration-id="SymbolSources">
  +    <source before="hivemind.FactoryDefaults"
  +      name="hivemind.ApplicationDefaults" service-id="ApplicationDefaultsSymbolSource"/>
  +    <source name="hivemind.FactoryDefaults" service-id="FactoryDefaultsSymbolSource"/>
  +  </contribution>
  +  
  +  <schema id="Defaults">
  +    <element name="default">
  +      
  +      Provides a default symbol value.
  +        
  +      <attribute name="symbol" required="true">
  +        The id of the symbol to define a default value for.
  +      </attribute>
  +      <attribute name="value" required="true">
  +        The value for the symbol.
  +      </attribute>
  +      <conversion class="org.apache.hivemind.service.impl.FactoryDefault"/>
       </element>
  -        </schema>
  -    </configuration-point>
  +  </schema>
  +  
  +  <configuration-point id="FactoryDefaults" schema-id="Defaults">
  +    Extension point for setting "factory defaults" for symbol values.
  +  </configuration-point>
  +  
  +  <service-point id="FactoryDefaultsSymbolSource" interface="org.apache.hivemind.SymbolSource">
       
  -    <contribution configuration-id="SymbolSources">
  -        <source before="hivemind.FactoryDefaults"
  -            name="hivemind.ApplicationDefaults" service-id="ApplicationDefaultsSymbolSource"/>
  -        <source name="hivemind.FactoryDefaults" service-id="FactoryDefaultsSymbolSource"/>
  -    </contribution>
  -    <schema id="Defaults">
  -        <element
  -                name="default">Provides a default symbol value.<attribute
  -                name="symbol" required="true">The id of the symbol to define a default value for.</attribute>
  -            <attribute name="value" required="true">The value for the symbol.</attribute>
  -            <conversion class="org.apache.hivemind.service.impl.FactoryDefault"/>
  +    SymbolSource implementation driven by the FactoryDefaults configuration point.
  +        
  +    <invoke-factory>
  +      <construct class="org.apache.hivemind.service.impl.DefaultsSymbolSource">
  +        <set-configuration configuration-id="FactoryDefaults" property="defaults"/>
  +      </construct>
  +    </invoke-factory>
  +  </service-point>
  +  
  +  <configuration-point id="ApplicationDefaults" schema-id="Defaults">
  +    Extension point for setting application defaults; these defaults will override factory defaults specified in the FactoryDefaults configuration point.
  +  </configuration-point>
  +  
  +  <service-point id="ApplicationDefaultsSymbolSource" interface="org.apache.hivemind.SymbolSource">
  +    
  +    SymbolSource implementation driven by the ApplicationDefaults configuration point.
  +      
  +    <invoke-factory>
  +      <construct class="org.apache.hivemind.service.impl.DefaultsSymbolSource">
  +        <set-configuration
  +          configuration-id="ApplicationDefaults" property="defaults"/>
  +      </construct>
  +    </invoke-factory>
  +  </service-point>
  +  
  +  <service-point id="ClassFactory" interface="org.apache.hivemind.service.ClassFactory">
  +    
  +    Wrapper around Javassist used to dynamically create classes such as service interceptors.
  +      
  +    <create-instance class="org.apache.hivemind.service.impl.ClassFactoryImpl" model="primitive"/>
  +  </service-point>
  +  
  +  <schema id="MethodFilter">
  +    Used primarily as parameters to interceptor factories (such as LoggingInterceptor) to define which methods of service interface are to be included and which excluded.
  +      
  +    <element name="include">
  +      Identifies a method, or set of methods, to be included.
  +        
  +      <attribute name="method" required="true">
  +        A method pattern used to identify the affected methods.
  +      </attribute>
  +      
  +      <rules>
  +        <create-object class="org.apache.hivemind.service.MethodContribution"/>
  +        <set-property property="include" value="true"/>
  +        <read-attribute attribute="method" property="methodPattern"/>
  +        <invoke-parent method="addElement"/>
  +      </rules>
  +    </element>
  +    <element name="exclude">
  +      Identifies a method, or set of methods, to be excluded.
  +        
  +      <attribute name="method" required="true">
  +        A method pattern used to identify the affected methods.
  +      </attribute>
  +      
  +      <rules>
  +        <create-object class="org.apache.hivemind.service.MethodContribution"/>
  +        <set-property property="include" value="false"/>
  +        <read-attribute attribute="method" property="methodPattern"/>
  +        <invoke-parent method="addElement"/>
  +      </rules>
  +    </element>
  +  </schema>
  +  
  +  <service-point id="LoggingInterceptor" interface="org.apache.hivemind.ServiceInterceptorFactory" parameters-schema-id="MethodFilter">
  +    
  +    An interceptor factory for adding method-level logging to a service. 
  +    Logging occurs at level DEBUG and uses the service id as the logger. 
  +    Method entry (with parameters) and method exit (with return value) are logged, as are any exceptions.
  +      
  +    <invoke-factory model="primitive">
  +      <construct class="org.apache.hivemind.service.impl.LoggingInterceptorFactory">
  +        <set-service property="factory" service-id="ClassFactory"/>
  +      </construct>
  +    </invoke-factory> 
  +  </service-point>
  +  
  +  <service-point id="BuilderFactory" interface="org.apache.hivemind.ServiceImplementationFactory">
  +    
  +    Used to construct a service from a class name and optional constructor parameters and properties.
  +      
  +    <parameters-schema>
  +      <element name="construct">
  +        A single construct element identifies the class to instantiate.
  +       
  +        <attribute name="class" required="true">The name of the class to instantiate.</attribute>
  +        <attribute name="messages-property">The name of a property to assign invoking module's messages to.</attribute>
  +        <attribute name="log-property">The name of a property to assign the Log instance for the service to. The Log instance is built from the service configuration point id.</attribute>
  +        <attribute name="service-id-property">The name of a property to assign the configuration point id of the service to.</attribute>
  +        <attribute name="initialize-method">The name of a public instance method (taking no parameters) to be invoked after the service is constructed.</attribute>
  +        <attribute name="error-handler-property">The name of a property to assign the module's ErrorHandler to.</attribute>
  +        <attribute name="class-resolver-property">The name of a property to assign the module's ClassResolver to.</attribute>
  +        <attribute name="autowire-services" translator="boolean,default=true">If true (the default), the BuilderFactory will attempt to connect unclaimed properties to services.</attribute>
  +        
  +        <rules>
  +          <create-object class="org.apache.hivemind.service.impl.BuilderParameter"/>
  +          <read-attribute attribute="class" property="className"/>
  +          <read-attribute attribute="initialize-method" property="initializeMethod"/>
  +          <read-attribute attribute="autowire-services" property="autowireServices" skip-if-null="false"/>
  +          <invoke-parent method="addElement"/>
  +          
  +          <create-object class="org.apache.hivemind.service.impl.BuilderMessagesFacet"/>
  +          <read-attribute attribute="messages-property" property="propertyName"/>
  +          <invoke-parent depth="1" method="addProperty"/>
  +          
  +          <create-object class="org.apache.hivemind.service.impl.BuilderLogFacet"/>
  +          <read-attribute attribute="log-property" property="propertyName"/>
  +          <invoke-parent depth="2" method="addProperty"/>
  +          
  +          <create-object class="org.apache.hivemind.service.impl.BuilderServiceIdFacet"/>
  +          <read-attribute attribute="service-id-property" property="propertyName"/>
  +          <invoke-parent depth="3" method="addProperty"/>
  +          
  +          <create-object class="org.apache.hivemind.service.impl.BuilderErrorHandlerFacet"/>
  +          <read-attribute attribute="error-handler-property" property="propertyName"/>
  +          <invoke-parent depth="4" method="addProperty"/>
  +          
  +          <create-object class="org.apache.hivemind.service.impl.BuilderClassResolverFacet"/>
  +          <read-attribute attribute="class-resolver-property" property="propertyName"/>
  +          <invoke-parent depth="5" method="addProperty"/>
  +        </rules>
  +        <element name="string">
  +          
  +          A string value constructor parameter.
  +          
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  +            <read-content property="value"/>
  +            <invoke-parent depth="6" method="addParameter"/>
  +          </rules>
           </element>
  -    </schema>
  -    <configuration-point id="FactoryDefaults" schema-id="Defaults">Extension point for setting "factory defaults" for symbol values.</configuration-point>
  -    <service-point id="FactoryDefaultsSymbolSource"
  -            interface="org.apache.hivemind.SymbolSource">SymbolSource implementation driven by the FactoryDefaults configuration point.<invoke-factory service-id="BuilderFactory">
  -            <construct class="org.apache.hivemind.service.impl.DefaultsSymbolSource">
  -                <set-configuration configuration-id="FactoryDefaults" property="defaults"/>
  -            </construct>
  -        </invoke-factory>
  -    </service-point>
  -    <configuration-point id="ApplicationDefaults" schema-id="Defaults">Extension point for setting application defaults; these defaults will override factory defaults specified in the FactoryDefaults configuration point.</configuration-point>
  -    <service-point id="ApplicationDefaultsSymbolSource"
  -            interface="org.apache.hivemind.SymbolSource">SymbolSource implementation driven by the ApplicationDefaults configuration point.<invoke-factory service-id="BuilderFactory">
  -            <construct class="org.apache.hivemind.service.impl.DefaultsSymbolSource">
  -                <set-configuration
  -                    configuration-id="ApplicationDefaults" property="defaults"/>
  -            </construct>
  -        </invoke-factory>
  -    </service-point>
  -    <service-point id="ClassFactory"
  -            interface="org.apache.hivemind.service.ClassFactory">Wrapper around Javassist used to dynamically create classes such as service interceptors.<create-instance
  -            class="org.apache.hivemind.service.impl.ClassFactoryImpl" model="primitive"/>
  -    </service-point>
  -    <schema
  -            id="MethodFilter">Used primarily as parameters to interceptor factories (such as LoggingInterceptor) to define which methods of service interface are to be included and which excluded.<element
  -                name="include">Identifies a method, or set of methods, to be included.<attribute
  -                name="method" required="true">A method pattern used to identify the affected methods.</attribute>
  -            <rules>
  -                <create-object class="org.apache.hivemind.service.MethodContribution"/>
  -                <set-property property="include" value="true"/>
  -                <read-attribute attribute="method" property="methodPattern"/>
  -                <invoke-parent method="addElement"/>
  -            </rules>
  +        
  +        <element content-translator="int" name="int">
  +          
  +          An integer value constructor parameter.
  +          
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  +            <read-content property="value"/>
  +            <invoke-parent depth="6" method="addParameter"/>
  +          </rules>
  +        </element>
  +        
  +        <element content-translator="long" name="long">
  +          
  +          A long (64-bit) integer value constructor parameter.
  +            
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  +            <read-content property="value"/>
  +            <invoke-parent depth="6" method="addParameter"/>
  +          </rules>
           </element>
  +        
           <element
  -                name="exclude">Identifies a method, or set of methods, to be excluded.<attribute
  -                name="method" required="true">A method pattern used to identify the affected methods.</attribute>
  -            <rules>
  -                <create-object class="org.apache.hivemind.service.MethodContribution"/>
  -                <set-property property="include" value="false"/>
  -                <read-attribute attribute="method" property="methodPattern"/>
  -                <invoke-parent method="addElement"/>
  -            </rules>
  +          content-translator="enumeration,java.lang.Boolean,true=TRUE,false=FALSE" name="boolean">
  +          
  +          A boolean value constructor parameter.
  +            
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  +            <read-content property="value"/>
  +            <invoke-parent depth="6" method="addParameter"/>
  +          </rules>
  +        </element>
  +        
  +        <element content-translator="service" name="service">
  +          
  +          A constructor parameter providing the identified HiveMind service.
  +          
  +         <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  +            <read-content property="value"/>
  +            <invoke-parent depth="6" method="addParameter"/>
  +          </rules>
  +        </element>
  +        
  +        <element content-translator="configuration" name="configuration">
  +          
  +          A constructor parameter providing a HiveMind configuration point (as a List).
  +            
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  +            <read-content property="value"/>
  +            <invoke-parent depth="6" method="addParameter"/>
  +          </rules>
  +        </element>
  +        
  +        <element content-translator="resource" name="resource">
  +          
  +          A Resource constructor parameter.
  +            
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  +            <read-content property="value"/>
  +            <invoke-parent depth="6" method="addParameter"/>
  +          </rules>
  +        </element>
  +        
  +        <element name="log">
  +          
  +          Placeholder for a Log instance for the constructed service as constructor parameter.
  +          
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderLogFacet"/>
  +            <invoke-parent depth="6" method="addParameter"/>
  +          </rules>
  +        </element>
  +        
  +        <element name="error-handler">
  +          
  +          Placeholder for the module's ErrorHandler instance passed in as a constructor parameter.
  +            
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderErrorHandlerFacet"/>
  +            <invoke-parent depth="6" method="addParameter"/>
  +          </rules>
  +        </element>
  +        
  +        <element name="class-resolver">
  +          
  +          Placeholder for the module's ClassResolver instance passed in as a constructor parameter.
  +            
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderClassResolverFacet"/>
  +            <invoke-parent depth="6" method="addParameter"/>
  +          </rules>
           </element>
  +        
  +        <element name="messages">
  +          
  +          Placeholder for a Messages object (from the invoking module) as constructor parameter.
  +            
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderMessagesFacet"/>
  +            <invoke-parent depth="6" method="addParameter"/>
  +          </rules>
  +        </element>
  +        
  +        <element name="service-id">
  +          
  +          Placeholder for the service id (of the constructed service) as constructor parameter.
  +            
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderServiceIdFacet"/>
  +            <invoke-parent depth="6" method="addParameter"/>
  +          </rules>
  +        </element>
  +        
  +        <element content-translator="object" name="object">
  +          
  +          Placeholder for an object provided by the object translator as a constructor parameter.
  +            
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  +            <read-content property="value"/>
  +            <invoke-parent depth="6" method="addParameter"/>
  +          </rules>
  +        </element>
  +        
  +        <element name="set">
  +          
  +          Configures a property of the service instance.
  +            
  +          <attribute name="property" required="true">The name of a property of the service instance to configure.</attribute>
  +          <attribute name="value" required="true">The value to set the property to. The value will be converted to the type of the property.</attribute>
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderSmartPropertyFacet"/>
  +            <read-attribute attribute="property" property="propertyName"/>
  +            <read-attribute attribute="value" property="attributeValue"/>
  +            <invoke-parent depth="6" method="addProperty"/>
  +          </rules>
  +        </element>
  +        
  +        <element name="set-object">
  +          
  +          Configures a property of the service instance using an object.
  +          
  +          <attribute name="property" required="true">The name of a property of the service instance to configure.</attribute>
  +          <attribute name="value" required="true" translator="object">The value to set the property to, in the form of a prefix and a locator for that prefix. Prefixes are defined by the ObjectProviders configuration point. Each prefix provides a different interpretation for the locator, such as a service id or class name.</attribute>
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  +            <read-attribute attribute="property" property="propertyName"/>
  +            <read-attribute attribute="value" property="value"/>
  +            <invoke-parent depth="6" method="addProperty"/>
  +          </rules>
  +        </element>
  +        
  +        <element name="set-service">
  +          
  +          Configures a property of the service instance to another service.
  +            
  +          <attribute name="property" required="true">The name of the property of the service instance to configure.</attribute>
  +          <attribute name="service-id" required="true" translator="service">The id of the service.</attribute>
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  +            <read-attribute attribute="property" property="propertyName"/>
  +            <read-attribute attribute="service-id" property="value"/>
  +            <invoke-parent depth="6" method="addProperty"/>
  +          </rules>
  +        </element>
  +        
  +        <element name="set-configuration">
  +          
  +          Configures a property of the service instance to the elements contributed to an configuration point.
  +          
  +          <attribute name="property" required="true">The name of the property of the service instance to configure.</attribute>
  +          <attribute name="configuration-id" required="true" translator="configuration">The id of the configuration point to access.</attribute>
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  +            <read-attribute attribute="property" property="propertyName"/>
  +            <read-attribute attribute="configuration-id" property="value"/>
  +            <invoke-parent depth="6" method="addProperty"/>
  +          </rules>
  +        </element>
  +        
  +        <element name="set-resource">
  +          
  +          Configures a property of the service instance to a resource.
  +            
  +          <attribute name="property" required="true">The name of the property of the service instance to configure.</attribute>
  +          <attribute name="path" required="true" translator="resource">The path, relative to the module's deployment descriptor, of the resource.</attribute>
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  +            <read-attribute attribute="property" property="propertyName"/>
  +            <read-attribute attribute="path" property="value"/>
  +            <invoke-parent depth="6" method="addProperty"/>
  +          </rules>
  +        </element>
  +        
  +        <element name="event-listener">
  +          
  +          Registers the new services as an event listener for events produced by the specified service.
  +            
  +          <attribute name="service-id" required="true" translator="service">The service which will produce events.</attribute>
  +          <attribute name="event-set">If given, the name of an event set for which the service will be registered. If omitted, the service will be registered for all events sets for which it implements the necessary listener interfaces.</attribute>
  +          <rules>
  +            <create-object class="org.apache.hivemind.service.impl.EventRegistration"/>
  +            <read-attribute attribute="service-id" property="producer"/>
  +            <read-attribute attribute="event-set" property="eventSetName"/>
  +            <invoke-parent depth="6" method="addEventRegistration"/>
  +          </rules>
  +        </element>
  +      </element>      
  +    </parameters-schema>
  +    
  +    <create-instance class="org.apache.hivemind.service.impl.BuilderFactory" model="primitive"/>
  +  </service-point>
  +  
  +  <service-point id="ThreadEventNotifier" interface="org.apache.hivemind.service.ThreadEventNotifier">
  +    
  +    Service used by other services to be alerted when a thread is cleaned up (typically, at the end of a request or transaction).
  +      
  +    <create-instance class="org.apache.hivemind.service.impl.ThreadEventNotifierImpl"/>
  +  </service-point>
  +  
  +  <service-point id="ThreadLocalStorage" interface="org.apache.hivemind.service.ThreadLocalStorage">
  +    
  +    Service which manages a thread-local map of data items. 
  +    This can be used for temporary storage of information when local variables can't be used. 
  +    All stored items are released when the thread is cleaned up.
  +      
  +    <invoke-factory>
  +      <construct class="org.apache.hivemind.service.impl.ThreadLocalStorageImpl">
  +        <set-service property="notifier" service-id="ThreadEventNotifier"/>
  +      </construct>
  +    </invoke-factory>
  +  </service-point>
  +  
  +  <configuration-point id="ServiceModels">
  +    
  +    Defines service models, providing a name and a class for each.
  +      
  +    <schema>
  +          
  +      Describes contributions that define new types of service models by providing service model factories.
  +            
  +      <element name="service-model">
  +        <attribute name="name" required="true">The name of the service model, which must be unique.</attribute>
  +        <attribute name="class" required="false" translator="instance">The name of the service model factory class to instantiate.</attribute>
  +        <conversion class="org.apache.hivemind.impl.ServiceModelContribution">
  +          <map attribute="class" property="factory"/>
  +        </conversion>
  +      </element>
  +    </schema>
  +  </configuration-point>
  +  
  +  <contribution configuration-id="ServiceModels">
  +    <service-model class="org.apache.hivemind.impl.servicemodel.PrimitiveServiceModelFactory" name="primitive"/>
  +    <service-model class="org.apache.hivemind.impl.servicemodel.SingletonServiceModelFactory" name="singleton"/>
  +    <service-model class="org.apache.hivemind.impl.servicemodel.ThreadedServiceModelFactory" name="threaded"/>
  +    <service-model class="org.apache.hivemind.impl.servicemodel.PooledServiceModelFactory" name="pooled"/>
  +  </contribution>
  +  
  +  <configuration-point id="Translators">
  +    
  +    Used to define new translators that can be used in contribution conversion rules. 
  +    Translators must have unique names.
  +      
  +    <schema>
  +      
  +      Maps translator names to translator classes.
  +        
  +      <element name="translator">Maps a translator name to a translator class.
  +        
  +        <attribute name="name" required="true">A unique name for a translator.</attribute>
  +        <attribute name="class" required="false" translator="class">The class to instantiate, which must implement the Translator interface.</attribute>
  +        <attribute name="service-id" required="false" translator="service">A service which implements the Translator interface.</attribute>
  +        <conversion class="org.apache.hivemind.impl.TranslatorContribution">
  +          <map attribute="class" property="translatorClass"/>
  +          <map attribute="service-id" property="translator"/>
  +        </conversion>
  +      </element>
  +    </schema>
  +  </configuration-point>
  +  
  +  <contribution configuration-id="Translators">
  +    <translator class="org.apache.hivemind.schema.rules.BooleanTranslator" name="boolean"/>
  +    <translator class="org.apache.hivemind.schema.rules.IntTranslator" name="int"/>
  +    <translator class="org.apache.hivemind.schema.rules.EnumerationTranslator" name="enumeration"/>
  +    <translator class="org.apache.hivemind.schema.rules.ConfigurationTranslator" name="configuration"/>
  +    <translator class="org.apache.hivemind.schema.rules.ResourceTranslator" name="resource"/>
  +    <translator class="org.apache.hivemind.schema.rules.LongTranslator" name="long"/>
  +    <translator class="org.apache.hivemind.schema.rules.DoubleTranslator" name="double"/>
  +    <translator class="org.apache.hivemind.schema.rules.ServicePointTranslator" name="service-point"/>
  +    <translator class="org.apache.hivemind.schema.rules.QualifiedIdTranslator" name="qualified-id"/>
  +    <translator class="org.apache.hivemind.schema.rules.IdListTranslator" name="id-list"/>
  +    <translator name="object" service-id="ObjectTranslator"/>
  +  </contribution>
  +  
  +  <service-point id="ShutdownCoordinator" interface="org.apache.hivemind.ShutdownCoordinator">
  +    
  +    A source of event notifications for when the Registry is shutdown.
  +      
  +    <invoke-factory>
  +      <construct class="org.apache.hivemind.impl.ShutdownCoordinatorImpl">
  +        <log/>
  +      </construct>
  +    </invoke-factory>
  +  </service-point>
  +  
  +  <configuration-point id="Startup">
  +    
  +    A configuration to which startup objects may be contributed (as objects or services). 
  +    Startup object must implement the java.lang.Runnable interface. Order of execution is expliclitly NOT defined.
  +      
  +    <schema>
  +      <element name="service">
  +        
  +        Defines a service that implements the Runnable interface.
  +          
  +       <attribute name="service-id" translator="service">The name of a service implementing the Runnable interface.</attribute>
  +        <rules>
  +          <push-attribute attribute="service-id"/>
  +          <invoke-parent method="addElement"/>
  +        </rules>
  +      </element>
  +      <element name="runnable">
  +        
  +        Allows an instance of a class implementing Runnable to be contributed.
  +          
  +        <attribute name="class" translator="instance">The name of a class implementing Runnable.</attribute>
  +        <rules>
  +          <push-attribute attribute="class"/>
  +          <invoke-parent method="addElement"/>
  +        </rules>
  +      </element>
  +    </schema>
  +  </configuration-point>
  +  
  +  <service-point id="Startup" interface="java.lang.Runnable">
  +    
  +    A service which is used to bootstrap HiveMind; it obtains the hivemind.Startup configuration and runs each 
  +    Runnable object or service within.
  +      
  +    <invoke-factory>
  +      <construct class="org.apache.hivemind.impl.StartupImpl">
  +        <set-configuration configuration-id="Startup" property="runnables"/>
  +      </construct>
  +    </invoke-factory>
  +  </service-point>
  +  
  +  <configuration-point id="EagerLoad">
  +    
  +    Configuration to which services may be contributed. The corresponding services are instantiated eagerly, as the Registry is started. 
  +    The order in which services are instantiated is not specified.
  +      
  +    <schema>
  +      <element name="load">
  +        
  +        Identifies a service that will be eagerly loaded.
  +          
  +        <attribute name="service-id" required="true" translator="service-point"/>
  +        <rules>
  +          <push-attribute attribute="service-id"/>
  +          <invoke-parent method="addElement"/>
  +        </rules>
  +      </element>
  +    </schema>
  +  </configuration-point>
  +  
  +  <service-point id="EagerLoad" interface="java.lang.Runnable">
  +    
  +    Service that performs eager loading of other services. This service is contributed into the hivemind.Startup configuration.
  +      
  +    <invoke-factory model="primitive">
  +      <construct class="org.apache.hivemind.service.impl.EagerLoader">
  +        <set-configuration configuration-id="EagerLoad" property="servicePoints"/>
  +      </construct>
  +    </invoke-factory>
  +  </service-point>
  +  
  +  <contribution configuration-id="Startup">
  +    <service service-id="EagerLoad"/>
  +  </contribution>
  +  
  +  <configuration-point id="ObjectProviders">
  +    
  +    Services that can provide objects for the object translator.
  +      
  +    <schema>
  +      <element name="provider">
  +        <attribute name="prefix" required="true">The prefix used to identify the provider.</attribute>
  +        <attribute name="service-id" required="true" translator="service">The object providing service.</attribute>
  +        <conversion class="org.apache.hivemind.service.impl.ObjectProviderContribution">
  +          <map attribute="service-id" property="provider"/>
  +        </conversion>
  +      </element>
       </schema>
  -    <service-point id="LoggingInterceptor"
  -        interface="org.apache.hivemind.ServiceInterceptorFactory"
  -            parameters-schema-id="MethodFilter">An interceptor factory for adding method-level logging to a service. Logging occurs at level DEBUG and uses the service id as the logger. Method entry (with parameters) and method exit (with return value) are logged, as are any exceptions.<invoke-factory
  -            model="primitive" service-id="BuilderFactory">
  -            <construct class="org.apache.hivemind.service.impl.LoggingInterceptorFactory">
  -                <set-service property="factory" service-id="ClassFactory"/>
  -            </construct>
  -        </invoke-factory>
  -    </service-point>
  -    <service-point id="BuilderFactory" interface="org.apache.hivemind.ServiceImplementationFactory">Used to construct a service from a class name and optional constructor parameters and properties.<parameters-schema>
  -            <element
  -                    name="construct">A single construct element identifies the class to instantiate.<attribute
  -                    name="class" required="true">The name of the class to instantiate.</attribute>
  -                <attribute name="messages-property">The name of a property to assign invoking module's messages to.</attribute>
  -                <attribute name="log-property">The name of a property to assign the Log instance for the service to. The Log instance is built from the service configuration point id.</attribute>
  -                <attribute name="service-id-property">The name of a property to assign the configuration point id of the service to.</attribute>
  -                <attribute name="initialize-method">The name of a public instance method (taking no parameters) to be invoked after the service is constructed.</attribute>
  -                <attribute name="error-handler-property">The name of a property to assign the module's ErrorHandler to.</attribute>
  -                <attribute name="class-resolver-property">The name of a property to assign the module's ClassResolver to.</attribute>
  -                <attribute name="autowire-services" translator="boolean,default=true">If true (the default), the BuilderFactory will attempt to connect unclaimed properties to services.</attribute>
  -                <rules>
  -                    <create-object class="org.apache.hivemind.service.impl.BuilderParameter"/>
  -                    <read-attribute attribute="class" property="className"/>
  -                    <read-attribute attribute="initialize-method" property="initializeMethod"/>
  -                    <read-attribute attribute="autowire-services"
  -                        property="autowireServices" skip-if-null="false"/>
  -                    <invoke-parent method="addElement"/>
  -                    <create-object class="org.apache.hivemind.service.impl.BuilderMessagesFacet"/>
  -                    <read-attribute attribute="messages-property" property="propertyName"/>
  -                    <invoke-parent depth="1" method="addProperty"/>
  -                    <create-object class="org.apache.hivemind.service.impl.BuilderLogFacet"/>
  -                    <read-attribute attribute="log-property" property="propertyName"/>
  -                    <invoke-parent depth="2" method="addProperty"/>
  -                    <create-object class="org.apache.hivemind.service.impl.BuilderServiceIdFacet"/>
  -                    <read-attribute attribute="service-id-property" property="propertyName"/>
  -                    <invoke-parent depth="3" method="addProperty"/>
  -                    <create-object class="org.apache.hivemind.service.impl.BuilderErrorHandlerFacet"/>
  -                    <read-attribute attribute="error-handler-property" property="propertyName"/>
  -                    <invoke-parent depth="4" method="addProperty"/>
  -                    <create-object class="org.apache.hivemind.service.impl.BuilderClassResolverFacet"/>
  -                    <read-attribute attribute="class-resolver-property" property="propertyName"/>
  -                    <invoke-parent depth="5" method="addProperty"/>
  -                </rules>
  -                <element name="string">A string value constructor parameter.<rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  -                        <read-content property="value"/>
  -                        <invoke-parent depth="6" method="addParameter"/>
  -                    </rules>
  -                </element>
  -                <element content-translator="int" name="int">An integer value constructor parameter.<rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  -                        <read-content property="value"/>
  -                        <invoke-parent depth="6" method="addParameter"/>
  -                    </rules>
  -                </element>
  -                <element content-translator="long" name="long">A long (64-bit) integer value constructor parameter.<rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  -                        <read-content property="value"/>
  -                        <invoke-parent depth="6" method="addParameter"/>
  -                    </rules>
  -                </element>
  -                <element
  -                    content-translator="enumeration,java.lang.Boolean,true=TRUE,false=FALSE" name="boolean">A boolean value constructor parameter.<rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  -                        <read-content property="value"/>
  -                        <invoke-parent depth="6" method="addParameter"/>
  -                    </rules>
  -                </element>
  -                <element content-translator="service" name="service">A constructor parameter providing the identified HiveMind service.<rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  -                        <read-content property="value"/>
  -                        <invoke-parent depth="6" method="addParameter"/>
  -                    </rules>
  -                </element>
  -                <element content-translator="configuration" name="configuration">A constructor parameter providing a HiveMind configuration point (as a List).<rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  -                        <read-content property="value"/>
  -                        <invoke-parent depth="6" method="addParameter"/>
  -                    </rules>
  -                </element>
  -                <element content-translator="resource" name="resource">A Resource constructor parameter.<rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  -                        <read-content property="value"/>
  -                        <invoke-parent depth="6" method="addParameter"/>
  -                    </rules>
  -                </element>
  -                <element name="log">Placeholder for a Log instance for the constructed service as constructor parameter.<rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderLogFacet"/>
  -                        <invoke-parent depth="6" method="addParameter"/>
  -                    </rules>
  -                </element>
  -                <element name="error-handler">Placeholder for the module's ErrorHandler instance passed in as a constructor parameter.<rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderErrorHandlerFacet"/>
  -                        <invoke-parent depth="6" method="addParameter"/>
  -                    </rules>
  -                </element>
  -                <element name="class-resolver">Placeholder for the module's ClassResolver instance passed in as a constructor parameter.<rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderClassResolverFacet"/>
  -                        <invoke-parent depth="6" method="addParameter"/>
  -                    </rules>
  -                </element>
  -                <element name="messages">Placeholder for a Messages object (from the invoking module) as constructor parameter.<rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderMessagesFacet"/>
  -                        <invoke-parent depth="6" method="addParameter"/>
  -                    </rules>
  -                </element>
  -                <element name="service-id">Placeholder for the service id (of the constructed service) as constructor parameter.<rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderServiceIdFacet"/>
  -                        <invoke-parent depth="6" method="addParameter"/>
  -                    </rules>
  -                </element>
  -                <element content-translator="object" name="object">Placeholder for an object provided by the object translator as a constructor parameter.<rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  -                        <read-content property="value"/>
  -                        <invoke-parent depth="6" method="addParameter"/>
  -                    </rules>
  -                </element>
  -                <element
  -                        name="set">Configures a property of the service instance.<attribute
  -                        name="property" required="true">The name of a property of the service instance to configure.</attribute>
  -                    <attribute name="value" required="true">The value to set the property to. The value will be converted to the type of the property.</attribute>
  -                    <rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderSmartPropertyFacet"/>
  -                        <read-attribute attribute="property" property="propertyName"/>
  -                        <read-attribute attribute="value" property="attributeValue"/>
  -                        <invoke-parent depth="6" method="addProperty"/>
  -                    </rules>
  -                </element>
  -                <element
  -                        name="set-object">Configures a property of the service instance using an object.<attribute
  -                        name="property" required="true">The name of a property of the service instance to configure.</attribute>
  -                    <attribute name="value" required="true" translator="object">The value to set the property to, in the form of a prefix and a locator for that prefix. Prefixes are defined by the ObjectProviders configuration point. Each prefix provides a different interpretation for the locator, such as a service id or class name.</attribute>
  -                    <rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  -                        <read-attribute attribute="property" property="propertyName"/>
  -                        <read-attribute attribute="value" property="value"/>
  -                        <invoke-parent depth="6" method="addProperty"/>
  -                    </rules>
  -                </element>
  -                <element
  -                        name="set-service">Configures a property of the service instance to another service.<attribute
  -                        name="property" required="true">The name of the property of the service instance to configure.</attribute>
  -                    <attribute name="service-id" required="true" translator="service">The id of the service.</attribute>
  -                    <rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  -                        <read-attribute attribute="property" property="propertyName"/>
  -                        <read-attribute attribute="service-id" property="value"/>
  -                        <invoke-parent depth="6" method="addProperty"/>
  -                    </rules>
  -                </element>
  -                <element
  -                        name="set-configuration">Configures a property of the service instance to the elements contributed to an configuration point.<attribute
  -                        name="property" required="true">The name of the property of the service instance to configure.</attribute>
  -                    <attribute name="configuration-id" required="true" translator="configuration">The id of the configuration point to access.</attribute>
  -                    <rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  -                        <read-attribute attribute="property" property="propertyName"/>
  -                        <read-attribute attribute="configuration-id" property="value"/>
  -                        <invoke-parent depth="6" method="addProperty"/>
  -                    </rules>
  -                </element>
  -                <element
  -                        name="set-resource">Configures a property of the service instance to a resource.<attribute
  -                        name="property" required="true">The name of the property of the service instance to configure.</attribute>
  -                    <attribute name="path" required="true" translator="resource">The path, relative to the module's deployment descriptor, of the resource.</attribute>
  -                    <rules>
  -                        <create-object class="org.apache.hivemind.service.impl.BuilderPropertyFacet"/>
  -                        <read-attribute attribute="property" property="propertyName"/>
  -                        <read-attribute attribute="path" property="value"/>
  -                        <invoke-parent depth="6" method="addProperty"/>
  -                    </rules>
  -                </element>
  -                <element
  -                        name="event-listener">Registers the new services as an event listener for events produced by the specified service.<attribute
  -                        name="service-id" required="true" translator="service">The service which will produce events.</attribute>
  -                    <attribute name="event-set">If given, the name of an event set for which the service will be registered. If omitted, the service will be registered for all events sets for which it implements the necessary listener interfaces.</attribute>
  -                    <rules>
  -                        <create-object class="org.apache.hivemind.service.impl.EventRegistration"/>
  -                        <read-attribute attribute="service-id" property="producer"/>
  -                        <read-attribute attribute="event-set" property="eventSetName"/>
  -                        <invoke-parent depth="6" method="addEventRegistration"/>
  -                    </rules>
  -                </element>
  -            </element>
  -        </parameters-schema>
  -        <create-instance
  -            class="org.apache.hivemind.service.impl.BuilderFactory" model="primitive"/>
  -    </service-point>
  -    <service-point id="ThreadEventNotifier"
  -            interface="org.apache.hivemind.service.ThreadEventNotifier">Service used by other services to be alerted when a thread is cleaned up (typically, at the end of a request or transaction).<create-instance class="org.apache.hivemind.service.impl.ThreadEventNotifierImpl"/>
  -    </service-point>
  -    <service-point id="ThreadLocalStorage"
  -            interface="org.apache.hivemind.service.ThreadLocalStorage">Service which manages a thread-local map of data items. This can be used for temporary storage of information when local variables can't be used. All stored items are released when the thread is cleaned up.<invoke-factory service-id="BuilderFactory">
  -            <construct class="org.apache.hivemind.service.impl.ThreadLocalStorageImpl">
  -                <set-service property="notifier" service-id="ThreadEventNotifier"/>
  -            </construct>
  -        </invoke-factory>
  -    </service-point>
  -    <configuration-point
  -                id="ServiceModels">Defines service models, providing a name and a class for each.<schema>Describes contributions that define new types of service models by providing service model factories.<element name="service-model">
  -                <attribute name="name" required="true">The name of the service model, which must be unique.</attribute>
  -                <attribute name="class" required="false" translator="instance">The name of the service model factory class to instantiate.</attribute>
  -                <conversion class="org.apache.hivemind.impl.ServiceModelContribution">
  -                    <map attribute="class" property="factory"/>
  -                </conversion>
  -            </element>
  -        </schema>
  -    </configuration-point>
  -    <contribution configuration-id="ServiceModels">
  -        <service-model
  -            class="org.apache.hivemind.impl.servicemodel.PrimitiveServiceModelFactory" name="primitive"/>
  -        <service-model
  -            class="org.apache.hivemind.impl.servicemodel.SingletonServiceModelFactory" name="singleton"/>
  -        <service-model
  -            class="org.apache.hivemind.impl.servicemodel.ThreadedServiceModelFactory" name="threaded"/>
  -        <service-model
  -            class="org.apache.hivemind.impl.servicemodel.PooledServiceModelFactory" name="pooled"/>
  -    </contribution>
  -    <configuration-point
  -                id="Translators">Used to define new translators that can be used in contribution conversion rules. Translators must have unique names.<schema>Maps translator names to translator classes.<element
  -                    name="translator">Maps a translator name to a translator class.<attribute
  -                    name="name" required="true">A unique name for a translator.</attribute>
  -                <attribute name="class" required="false" translator="class">The class to instantiate, which must implement the Translator interface.</attribute>
  -                <attribute name="service-id" required="false" translator="service">A service which implements the Translator interface.</attribute>
  -                <conversion class="org.apache.hivemind.impl.TranslatorContribution">
  -                    <map attribute="class" property="translatorClass"/>
  -                    <map attribute="service-id" property="translator"/>
  -                </conversion>
  -            </element>
  -        </schema>
  -    </configuration-point>
  -    <contribution configuration-id="Translators">
  -        <translator
  -            class="org.apache.hivemind.schema.rules.BooleanTranslator" name="boolean"/>
  -        <translator
  -            class="org.apache.hivemind.schema.rules.IntTranslator" name="int"/>
  -        <translator
  -            class="org.apache.hivemind.schema.rules.EnumerationTranslator" name="enumeration"/>
  -        <translator
  -            class="org.apache.hivemind.schema.rules.ConfigurationTranslator" name="configuration"/>
  -        <translator
  -            class="org.apache.hivemind.schema.rules.ResourceTranslator" name="resource"/>
  -        <translator
  -            class="org.apache.hivemind.schema.rules.LongTranslator" name="long"/>
  -        <translator
  -            class="org.apache.hivemind.schema.rules.DoubleTranslator" name="double"/>
  -        <translator
  -            class="org.apache.hivemind.schema.rules.ServicePointTranslator" name="service-point"/>
  -        <translator
  -            class="org.apache.hivemind.schema.rules.QualifiedIdTranslator" name="qualified-id"/>
  -        <translator
  -            class="org.apache.hivemind.schema.rules.IdListTranslator" name="id-list"/>
  -        <translator name="object" service-id="ObjectTranslator"/>
  -    </contribution>
  -    <service-point id="ShutdownCoordinator"
  -            interface="org.apache.hivemind.ShutdownCoordinator">A source of event notifications for when the Registry is shutdown.<invoke-factory service-id="BuilderFactory">
  -            <construct class="org.apache.hivemind.impl.ShutdownCoordinatorImpl">
  -                <log/>
  -            </construct>
  -        </invoke-factory>
  -    </service-point>
  -    <configuration-point id="Startup">A configuration to which startup objects may be contributed (as objects or services). Startup object must implement the java.lang.Runnable interface. Order of execution is expliclitly NOT defined.<schema>
  -            <element
  -                    name="service">Defines a service that implements the Runnable interface.<attribute
  -                    name="service-id" translator="service">The name of a service implementing the Runnable interface.</attribute>
  -                <rules>
  -                    <push-attribute attribute="service-id"/>
  -                    <invoke-parent method="addElement"/>
  -                </rules>
  -            </element>
  -            <element
  -                    name="runnable">Allows an instance of a class implementing Runnable to be contributed.<attribute
  -                    name="class" translator="instance">The name of a class implementing Runnable.</attribute>
  -                <rules>
  -                    <push-attribute attribute="class"/>
  -                    <invoke-parent method="addElement"/>
  -                </rules>
  -            </element>
  -        </schema>
  -    </configuration-point>
  -    <service-point id="Startup"
  -            interface="java.lang.Runnable">A service which is used to bootstrap HiveMind; it obtains the hivemind.Startup configuration and runs each Runnable object or service within.<invoke-factory service-id="BuilderFactory">
  -            <construct class="org.apache.hivemind.impl.StartupImpl">
  -                <set-configuration configuration-id="Startup" property="runnables"/>
  -            </construct>
  -        </invoke-factory>
  -    </service-point>
  -    <configuration-point id="EagerLoad">Configuration to which services may be contributed. The corresponding services are instantiated eagerly, as the Registry is started. The order in which services are instantiated is not specified. <schema>
  -            <element
  -                    name="load">Identifies a service that will be eagerly loaded.<attribute
  -                    name="service-id" required="true" translator="service-point"/>
  -                <rules>
  -                    <push-attribute attribute="service-id"/>
  -                    <invoke-parent method="addElement"/>
  -                </rules>
  -            </element>
  -        </schema>
  -    </configuration-point>
  -    <service-point id="EagerLoad"
  -            interface="java.lang.Runnable">Service that performs eager loading of other services. This service is contributed into the hivemind.Startup configuration.<invoke-factory
  -            model="primitive" service-id="BuilderFactory">
  -            <construct class="org.apache.hivemind.service.impl.EagerLoader">
  -                <set-configuration configuration-id="EagerLoad" property="servicePoints"/>
  -            </construct>
  -        </invoke-factory>
  -    </service-point>
  -    <contribution configuration-id="Startup">
  -        <service service-id="EagerLoad"/>
  -    </contribution>
  -    <configuration-point id="ObjectProviders">Services that can provide objects for the object translator.<schema>
  -            <element name="provider">
  -                <attribute name="prefix" required="true">The prefix used to identify the provider.</attribute>
  -                <attribute name="service-id" required="true" translator="service">The object providing service.</attribute>
  -                <conversion class="org.apache.hivemind.service.impl.ObjectProviderContribution">
  -                    <map attribute="service-id" property="provider"/>
  -                </conversion>
  -            </element>
  -        </schema>
  -    </configuration-point>
  -    <service-point id="ObjectTranslator"
  -            interface="org.apache.hivemind.schema.Translator">Translator that works with ObjectProviders to find or create objects.<invoke-factory service-id="BuilderFactory">
  -            <construct
  -                class="org.apache.hivemind.service.impl.ObjectTranslator" initialize-method="initializeService">
  -                <set-configuration configuration-id="ObjectProviders" property="contributions"/>
  -            </construct>
  -        </invoke-factory>
  -    </service-point>
  -    <service-point id="ServiceObjectProvider"
  -            interface="org.apache.hivemind.service.ObjectProvider">ObjectProvider that can locate services. Mapped to the service: prefix.<create-instance class="org.apache.hivemind.service.impl.ServiceObjectProvider"/>
  -    </service-point>
  -    <service-point id="ConfigurationObjectProvider"
  -            interface="org.apache.hivemind.service.ObjectProvider">ObjectProvider that can locate configurations. Mapped to the configuration: prefix.<create-instance class="org.apache.hivemind.service.impl.ConfigurationObjectProvider"/>
  -    </service-point>
  -    <service-point id="ObjectInstanceObjectProvider"
  -            interface="org.apache.hivemind.service.ObjectProvider">ObjectProvider that will instantiate a new instance of a provided class. Mapped to the instance: prefix.<create-instance class="org.apache.hivemind.service.impl.ObjectInstanceObjectProvider"/>
  -    </service-point>
  -    <service-point id="ServicePropertyObjectProvider"
  -            interface="org.apache.hivemind.service.ObjectProvider">ObjectProvider that will extra a property from a service.  Mapped to the service-property: prefix.<create-instance class="org.apache.hivemind.service.impl.ServicePropertyObjectProvider"/>
  -    </service-point>
  -    
  -    <contribution configuration-id="ObjectProviders">
  -        <provider prefix="service" service-id="ServiceObjectProvider"/>
  -        <provider prefix="configuration" service-id="ConfigurationObjectProvider"/>
  -        <provider prefix="instance" service-id="ObjectInstanceObjectProvider"/>
  -        <provider prefix="service-property" service-id="ServicePropertyObjectProvider"/>
  -    </contribution>
  +  </configuration-point>
  +  
  +  <service-point id="ObjectTranslator" interface="org.apache.hivemind.schema.Translator">
  +    
  +    Translator that works with ObjectProviders to find or create objects.
  +      
  +    <invoke-factory>
  +      <construct
  +        class="org.apache.hivemind.service.impl.ObjectTranslator" initialize-method="initializeService">
  +        <set-configuration configuration-id="ObjectProviders" property="contributions"/>
  +      </construct>
  +    </invoke-factory>
  +  </service-point>
  +  
  +  <service-point id="ServiceObjectProvider" interface="org.apache.hivemind.service.ObjectProvider">
  +    
  +    ObjectProvider that can locate services. Mapped to the service: prefix.
  +      
  +    <create-instance class="org.apache.hivemind.service.impl.ServiceObjectProvider"/>
  +  </service-point>
  +  
  +  <service-point id="ConfigurationObjectProvider" interface="org.apache.hivemind.service.ObjectProvider">
  +    
  +    ObjectProvider that can locate configurations. Mapped to the configuration: prefix.
  +      
  +    <create-instance class="org.apache.hivemind.service.impl.ConfigurationObjectProvider"/>
  +  </service-point>
  +  
  +  <service-point id="ObjectInstanceObjectProvider" interface="org.apache.hivemind.service.ObjectProvider">
  +    
  +    ObjectProvider that will instantiate a new instance of a provided class. 
  +    Mapped to the instance: prefix.
  +      
  +    <create-instance class="org.apache.hivemind.service.impl.ObjectInstanceObjectProvider"/>
  +  </service-point>
  +  
  +  <service-point id="ServicePropertyObjectProvider" interface="org.apache.hivemind.service.ObjectProvider">
  +    
  +    ObjectProvider that will extra a property from a service.  
  +    Mapped to the service-property: prefix.
  +      
  +    <create-instance class="org.apache.hivemind.service.impl.ServicePropertyObjectProvider"/>
  +  </service-point>
  +  
  +  <contribution configuration-id="ObjectProviders">
  +    <provider prefix="service" service-id="ServiceObjectProvider"/>
  +    <provider prefix="configuration" service-id="ConfigurationObjectProvider"/>
  +    <provider prefix="instance" service-id="ObjectInstanceObjectProvider"/>
  +    <provider prefix="service-property" service-id="ServicePropertyObjectProvider"/>
  +  </contribution>
  +  
   </module>
  
  
  
  1.39      +7 -0      jakarta-hivemind/status.xml
  
  Index: status.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/status.xml,v
  retrieving revision 1.38
  retrieving revision 1.39
  diff -u -r1.38 -r1.39
  --- status.xml	3 Aug 2004 14:02:18 -0000	1.38
  +++ status.xml	9 Aug 2004 14:53:47 -0000	1.39
  @@ -36,6 +36,13 @@
         <action type="update" dev="HLS">
           Remove support for Simple Data Language ... it's all XML again.
         </action>
  +      <action type="update" dev="HLS">
  +        Re-work part of PipelineFactory to take advantage of object references.
  +      </action>
  +      <action type="update" dev="HLS">
  +        Make the service-id of &lt;invoke-factory&gt; optional and default
  +        to hivemind.BuilderFactory.
  +      </action>
       </release>
     
       <release version="1.0-beta-2" date="Aug 1 2004">
  
  
  
  1.3       +1 -1      jakarta-hivemind/examples/src/descriptor/META-INF/panorama.startup.xml
  
  Index: panorama.startup.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/examples/src/descriptor/META-INF/panorama.startup.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- panorama.startup.xml	9 Aug 2004 13:24:49 -0000	1.2
  +++ panorama.startup.xml	9 Aug 2004 14:53:47 -0000	1.3
  @@ -82,7 +82,7 @@
       </schema>
       <configuration-point id="Startup" schema-id="Tasks"/>
       <service-point id="Startup" interface="java.lang.Runnable">
  -        <invoke-factory service-id="hivemind.BuilderFactory">
  +        <invoke-factory>
               <construct class="com.panorama.startup.impl.TaskExecutor">
                   <set-configuration configuration-id="Startup" property="tasks"/>
               </construct>
  
  
  
  1.3       +1 -1      jakarta-hivemind/examples/src/descriptor/META-INF/examples.xml
  
  Index: examples.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/examples/src/descriptor/META-INF/examples.xml,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- examples.xml	9 Aug 2004 01:10:37 -0000	1.2
  +++ examples.xml	9 Aug 2004 14:53:47 -0000	1.3
  @@ -33,7 +33,7 @@
           <interceptor service-id="hivemind.LoggingInterceptor"/>
       </service-point>
       <service-point id="Calculator" interface="org.apache.hivemind.examples.Calculator">
  -        <invoke-factory service-id="hivemind.BuilderFactory">
  +        <invoke-factory>
             
               <!-- Most properties are autowired by the BuilderFactory -->
               <construct class="org.apache.hivemind.examples.impl.CalculatorImpl"/>
  
  
  
  1.11      +10 -13    jakarta-hivemind/library/src/descriptor/META-INF/hivemodule.xml
  
  Index: hivemodule.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-hivemind/library/src/descriptor/META-INF/hivemodule.xml,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- hivemodule.xml	9 Aug 2004 13:24:49 -0000	1.10
  +++ hivemodule.xml	9 Aug 2004 14:53:47 -0000	1.11
  @@ -29,7 +29,7 @@
     <service-point id="NameLookup" interface="org.apache.hivemind.lib.NameLookup">
       
       A service which can perform name lookups of objects using JNDI.
  -    <invoke-factory service-id="hivemind.BuilderFactory">
  +    <invoke-factory>
         <construct class="org.apache.hivemind.lib.impl.NameLookupImpl">
           <set property="initialFactory" value="${java.naming.factory.initial}"/>
           <set property="URLPackages" value="${java.naming.factory.url.pkgs}"/>
  @@ -73,7 +73,7 @@
         </element>
       </parameters-schema>
       
  -    <invoke-factory service-id="hivemind.BuilderFactory">
  +    <invoke-factory>
         <construct class="org.apache.hivemind.lib.impl.EJBProxyFactory" service-id-property="pointId">
           <set-service property="nameLookup" service-id="NameLookup"/>
           <set-service property="classFactory" service-id="hivemind.ClassFactory"/>
  @@ -102,7 +102,7 @@
           </conversion>
         </element>
       </parameters-schema>
  -    <invoke-factory service-id="hivemind.BuilderFactory">
  +    <invoke-factory>
         <construct
           class="org.apache.hivemind.lib.impl.SpringLookupFactory" service-id-property="pointId">
           <set-service property="defaultBeanFactorySource" service-id="DefaultSpringBeanFactoryHolder"/>
  @@ -146,7 +146,7 @@
           </conversion>
         </element>
       </parameters-schema>
  -    <invoke-factory service-id="hivemind.BuilderFactory">
  +    <invoke-factory>
         <construct class="org.apache.hivemind.lib.factory.BeanFactoryBuilder"/>
       </invoke-factory>
     </service-point>
  @@ -167,7 +167,7 @@
       A service which can create a default implementation of an arbitrary interface. The instance returned does nothing. 
       Returned instances are cached and re-used.
         
  -    <invoke-factory service-id="hivemind.BuilderFactory">
  +    <invoke-factory>
         <construct class="org.apache.hivemind.lib.impl.DefaultImplementationBuilderImpl">
           <set-service property="classFactory" service-id="hivemind.ClassFactory"/>
         </construct>
  @@ -179,7 +179,7 @@
       A service implementation factory that builds a default implementation of a service. 
       The service implementation is a placeholder that does nothing.
         
  -    <invoke-factory service-id="hivemind.BuilderFactory">
  +    <invoke-factory>
         <construct class="org.apache.hivemind.lib.impl.PlaceholderFactory">
           <set-service property="builder" service-id="DefaultImplementationBuilder"/>
         </construct>
  @@ -215,7 +215,7 @@
         </element>
       </parameters-schema>
       
  -    <invoke-factory service-id="hivemind.BuilderFactory">
  +    <invoke-factory>
         <construct class="org.apache.hivemind.lib.pipeline.PipelineFactory">
           <set-service property="classFactory" service-id="hivemind.ClassFactory"/>
           <set-service property="defaultImplementationBuilder" service-id="DefaultImplementationBuilder"/>
  @@ -259,13 +259,10 @@
       the targeted service uses a threaded (or similar) service model, thus requiring dynamic,
       rather than static, access.
       
  -    <invoke-factory service-id="hivemind.BuilderFactory">
  -    <construct class="org.apache.hivemind.lib.impl.ServicePropertyFactory">
  -      
  +    <invoke-factory>
  +      <construct class="org.apache.hivemind.lib.impl.ServicePropertyFactory">
         <set-service property="classFactory" service-id="hivemind.ClassFactory"/>
  -      
  -    </construct>
  -    
  +      </construct>    
       </invoke-factory>
       
       <parameters-schema>
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: hivemind-cvs-unsubscribe@jakarta.apache.org
For additional commands, e-mail: hivemind-cvs-help@jakarta.apache.org


Mime
View raw message