Author: jboynes
Date: Mon Apr 17 07:33:16 2006
New Revision: 394677

URL: http://svn.apache.org/viewcvs?rev=394677&view=rev
Log:
refactor bootstrap to use ContextFactoryBuilderRegsitry rather than a list of 
builders

Modified:
    
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/integration/JavaBuilderContextIntegrationTestCase.java
    
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/integration/JavaIntegrationTestCase.java
    
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/mock/MockFactory.java
    
incubator/tuscany/java/sca/containers/container.js/src/test/java/org/apache/tuscany/container/js/integration/JSComponentContextTestCase.java
    
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/BootstrapHelper.java
    
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/TuscanyRuntime.java
    
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/runtime/RuntimeContextImpl.java
    
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/webapp/TuscanyServletListener.java
    
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/mock/MockFactory.java
    
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/RuntimeBootTestCase.java
    
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/RuntimeContextImplTestCase.java
    
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/SystemBootstrapTestCase.java
    
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/context/SystemObjectRegistrationTestCase.java
    
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java

Modified: 
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/integration/JavaBuilderContextIntegrationTestCase.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/integration/JavaBuilderContextIntegrationTestCase.java?rev=394677&r1=394676&r2=394677&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/integration/JavaBuilderContextIntegrationTestCase.java
 (original)
+++ 
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/integration/JavaBuilderContextIntegrationTestCase.java
 Mon Apr 17 07:33:16 2006
@@ -13,9 +13,6 @@
  */
 package org.apache.tuscany.container.java.integration;
 
-import java.util.ArrayList;
-import java.util.List;
-
 import junit.framework.Assert;
 import junit.framework.TestCase;
 
@@ -27,20 +24,19 @@
 import org.apache.tuscany.container.java.invocation.mock.MockSyncInterceptor;
 import org.apache.tuscany.container.java.mock.MockFactory;
 import org.apache.tuscany.container.java.mock.components.GenericComponent;
-import org.apache.tuscany.core.builder.ContextFactoryBuilder;
+import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
 import org.apache.tuscany.core.builder.impl.DefaultWireBuilder;
+import org.apache.tuscany.core.client.BootstrapHelper;
 import org.apache.tuscany.core.context.CompositeContext;
-import org.apache.tuscany.core.context.event.ModuleStop;
 import org.apache.tuscany.core.context.event.ModuleStart;
-import org.apache.tuscany.core.wire.jdk.JDKProxyFactoryFactory;
-import org.apache.tuscany.core.wire.ProxyFactoryFactory;
+import org.apache.tuscany.core.context.event.ModuleStop;
 import org.apache.tuscany.core.message.MessageFactory;
 import org.apache.tuscany.core.message.impl.MessageFactoryImpl;
 import org.apache.tuscany.core.runtime.RuntimeContext;
 import org.apache.tuscany.core.runtime.RuntimeContextImpl;
-import org.apache.tuscany.core.system.builder.SystemContextFactoryBuilder;
-import org.apache.tuscany.core.system.builder.SystemEntryPointBuilder;
-import org.apache.tuscany.core.system.builder.SystemExternalServiceBuilder;
+import org.apache.tuscany.core.wire.ProxyFactoryFactory;
+import org.apache.tuscany.core.wire.jdk.JDKProxyFactoryFactory;
+import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
 
 /**
  * Verifies that the composite context implementation and java component 
builders construct references properly
@@ -48,6 +44,9 @@
  * @version $Rev$ $Date$
  */
 public class JavaBuilderContextIntegrationTestCase extends TestCase {
+    private ContextFactoryBuilderRegistry builderRegistry;
+    private DefaultWireBuilder defaultWireBuilder;
+    private NullMonitorFactory monitorFactory;
 
     public JavaBuilderContextIntegrationTestCase(String arg0) {
         super(arg0);
@@ -55,6 +54,9 @@
 
     protected void setUp() throws Exception {
         super.setUp();
+        monitorFactory = new NullMonitorFactory();
+        builderRegistry = 
BootstrapHelper.bootstrapContextFactoryBuilders(monitorFactory);
+        defaultWireBuilder = new DefaultWireBuilder();
     }
 
     protected void tearDown() throws Exception {
@@ -64,13 +66,8 @@
     public void testRefWithSourceInterceptor() throws Exception {
         MessageFactory msgFactory = new MessageFactoryImpl();
 
-        List<ContextFactoryBuilder> builders = new 
ArrayList<ContextFactoryBuilder>();
-        builders.add((new SystemContextFactoryBuilder(null)));
-        builders.add(new SystemEntryPointBuilder());
-        builders.add(new SystemExternalServiceBuilder());
-
         ProxyFactoryFactory proxyFactoryFactory =new JDKProxyFactoryFactory();
-        
+
         JavaContextFactoryBuilder javaBuilder = new 
JavaContextFactoryBuilder();
         javaBuilder.setMessageFactory(msgFactory);
         javaBuilder.setProxyFactoryFactory(proxyFactoryFactory);
@@ -80,11 +77,9 @@
         //HierarchicalBuilder refBuilder = new HierarchicalBuilder();
         //refBuilder.addBuilder(interceptorBuilder);
         javaBuilder.addPolicyBuilder(interceptorBuilder);
-        builders.add(javaBuilder);
+        builderRegistry.register(javaBuilder);
 
-        DefaultWireBuilder defaultWireBuilder = new DefaultWireBuilder();
-
-        RuntimeContext runtime = new RuntimeContextImpl(null, builders, 
defaultWireBuilder);
+        RuntimeContext runtime = new RuntimeContextImpl(monitorFactory, 
builderRegistry, defaultWireBuilder);
         runtime.addBuilder(new JavaTargetWireBuilder());
         runtime.start();
         runtime.getRootContext().registerModelObject(
@@ -105,11 +100,6 @@
     public void testRefWithSourceInterceptorHandler() throws Exception {
         MessageFactory msgFactory = new MessageFactoryImpl();
 
-        List<ContextFactoryBuilder> builders = new 
ArrayList<ContextFactoryBuilder>();
-        builders.add((new SystemContextFactoryBuilder(null)));
-        builders.add(new SystemEntryPointBuilder());
-        builders.add(new SystemExternalServiceBuilder());
-
         JavaContextFactoryBuilder javaBuilder = new 
JavaContextFactoryBuilder();
         javaBuilder.setMessageFactory(msgFactory);
         javaBuilder.setProxyFactoryFactory(new JDKProxyFactoryFactory());
@@ -124,11 +114,8 @@
         javaBuilder.addPolicyBuilder(interceptorBuilder);
         javaBuilder.addPolicyBuilder(handlerBuilder);
 
-        //javaBuilder.setPolicyBuilder(refBuilder);
-        builders.add(javaBuilder);
-
-        DefaultWireBuilder defaultWireBuilder = new DefaultWireBuilder();
-        RuntimeContext runtime = new RuntimeContextImpl(null, builders, 
defaultWireBuilder);
+        builderRegistry.register(javaBuilder);
+        RuntimeContext runtime = new RuntimeContextImpl(monitorFactory, 
builderRegistry, defaultWireBuilder);
         runtime.addBuilder(new JavaTargetWireBuilder());
         runtime.start();
         runtime.getRootContext().registerModelObject(
@@ -151,11 +138,6 @@
     public void testRefWithTargetInterceptorHandler() throws Exception {
         MessageFactory msgFactory = new MessageFactoryImpl();
 
-        List<ContextFactoryBuilder> builders = new 
ArrayList<ContextFactoryBuilder>();
-        builders.add((new SystemContextFactoryBuilder(null)));
-        builders.add(new SystemEntryPointBuilder());
-        builders.add(new SystemExternalServiceBuilder());
-
         JavaContextFactoryBuilder javaBuilder = new 
JavaContextFactoryBuilder();
         javaBuilder.setMessageFactory(msgFactory);
         javaBuilder.setProxyFactoryFactory(new JDKProxyFactoryFactory());
@@ -171,11 +153,9 @@
         javaBuilder.addPolicyBuilder(handlerBuilder);
 
        // javaBuilder.setPolicyBuilder(refBuilder);
-        builders.add(javaBuilder);
-
-        DefaultWireBuilder defaultWireBuilder = new DefaultWireBuilder();
+        builderRegistry.register(javaBuilder);
 
-        RuntimeContext runtime = new RuntimeContextImpl(null, builders, 
defaultWireBuilder);
+        RuntimeContext runtime = new RuntimeContextImpl(monitorFactory, 
builderRegistry, defaultWireBuilder);
         runtime.addBuilder(new JavaTargetWireBuilder());
         runtime.start();
         runtime.getRootContext().registerModelObject(
@@ -198,11 +178,6 @@
     public void testRefWithTargetInterceptor() throws Exception {
         MessageFactory msgFactory = new MessageFactoryImpl();
 
-        List<ContextFactoryBuilder> builders = new 
ArrayList<ContextFactoryBuilder>();
-        builders.add((new SystemContextFactoryBuilder(null)));
-        builders.add(new SystemEntryPointBuilder());
-        builders.add(new SystemExternalServiceBuilder());
-
         JavaContextFactoryBuilder javaBuilder = new 
JavaContextFactoryBuilder();
         javaBuilder.setMessageFactory(msgFactory);
         javaBuilder.setProxyFactoryFactory(new JDKProxyFactoryFactory());
@@ -214,13 +189,12 @@
         javaBuilder.addPolicyBuilder(interceptorBuilder);
 
         //javaBuilder.setPolicyBuilder(refBuilder);
-        builders.add(javaBuilder);
 
-        DefaultWireBuilder defaultWireBuilder = new DefaultWireBuilder();
+        builderRegistry.register(javaBuilder);
 
-        RuntimeContext runtime = new RuntimeContextImpl(null, builders, 
defaultWireBuilder);
+        RuntimeContext runtime = new RuntimeContextImpl(monitorFactory, 
builderRegistry, defaultWireBuilder);
         runtime.addBuilder(new JavaTargetWireBuilder());
-        
+
         runtime.start();
         runtime.getRootContext().registerModelObject(
                 MockFactory.createCompositeComponent("test.module"));

Modified: 
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/integration/JavaIntegrationTestCase.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/integration/JavaIntegrationTestCase.java?rev=394677&r1=394676&r2=394677&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/integration/JavaIntegrationTestCase.java
 (original)
+++ 
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/integration/JavaIntegrationTestCase.java
 Mon Apr 17 07:33:16 2006
@@ -19,8 +19,13 @@
 
 import junit.framework.TestCase;
 
+import org.apache.tuscany.common.monitor.MonitorFactory;
+import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
 import org.apache.tuscany.container.java.assembly.JavaAssemblyFactory;
 import org.apache.tuscany.container.java.assembly.impl.JavaAssemblyFactoryImpl;
+import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
+import org.apache.tuscany.core.builder.impl.DefaultWireBuilder;
+import org.apache.tuscany.core.client.BootstrapHelper;
 import org.apache.tuscany.core.runtime.RuntimeContext;
 import org.apache.tuscany.core.runtime.RuntimeContextImpl;
 import org.apache.tuscany.model.assembly.Module;
@@ -50,8 +55,11 @@
         factory = new JavaAssemblyFactoryImpl();
 
         // Create and bootstrap an empty Tuscany runtime
-        this.runtime = new RuntimeContextImpl();
-        this.runtime.start();
+        MonitorFactory monitorFactory = new NullMonitorFactory();
+        ContextFactoryBuilderRegistry builderRegistry = 
BootstrapHelper.bootstrapContextFactoryBuilders(monitorFactory);
+        DefaultWireBuilder wireBuilder = new DefaultWireBuilder();
+        runtime = new RuntimeContextImpl(monitorFactory, builderRegistry, 
wireBuilder);
+        runtime.start();
     }
 
     protected void tearDown() throws Exception {

Modified: 
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/mock/MockFactory.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/mock/MockFactory.java?rev=394677&r1=394676&r2=394677&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/mock/MockFactory.java
 (original)
+++ 
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/mock/MockFactory.java
 Mon Apr 17 07:33:16 2006
@@ -23,6 +23,9 @@
 import java.util.Set;
 
 import junit.framework.Assert;
+import org.osoa.sca.annotations.ComponentName;
+import org.osoa.sca.annotations.Destroy;
+import org.osoa.sca.annotations.Init;
 
 import org.apache.tuscany.container.java.assembly.JavaAssemblyFactory;
 import org.apache.tuscany.container.java.assembly.JavaImplementation;
@@ -48,6 +51,8 @@
 import org.apache.tuscany.core.builder.ContextFactory;
 import org.apache.tuscany.core.builder.ContextFactoryBuilder;
 import org.apache.tuscany.core.builder.WireBuilder;
+import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
+import org.apache.tuscany.core.builder.impl.DefaultWireBuilder;
 import org.apache.tuscany.core.config.ConfigurationException;
 import org.apache.tuscany.core.config.JavaIntrospectionHelper;
 import org.apache.tuscany.core.context.CompositeContext;
@@ -69,6 +74,7 @@
 import org.apache.tuscany.core.system.builder.SystemContextFactoryBuilder;
 import org.apache.tuscany.core.system.builder.SystemEntryPointBuilder;
 import org.apache.tuscany.core.system.builder.SystemExternalServiceBuilder;
+import org.apache.tuscany.core.client.BootstrapHelper;
 import org.apache.tuscany.model.assembly.AssemblyContext;
 import org.apache.tuscany.model.assembly.AtomicComponent;
 import org.apache.tuscany.model.assembly.Component;
@@ -84,9 +90,8 @@
 import org.apache.tuscany.model.assembly.Service;
 import org.apache.tuscany.model.assembly.impl.AssemblyContextImpl;
 import org.apache.tuscany.model.types.java.JavaServiceContract;
-import org.osoa.sca.annotations.ComponentName;
-import org.osoa.sca.annotations.Destroy;
-import org.osoa.sca.annotations.Init;
+import org.apache.tuscany.common.monitor.MonitorFactory;
+import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
 
 /**
  * Generates test components, modules, and runtime artifacts
@@ -361,7 +366,7 @@
      * @see org.apache.tuscany.core.mock.component.Source
      * @see org.apache.tuscany.core.mock.component.Target
      */
-    
+
     public static Module createModuleWithWiredComponents(Scope sourceScope, 
Scope targetScope) {
 
         // create the target component
@@ -447,7 +452,7 @@
         ConfiguredReference cReference4 = 
systemFactory.createConfiguredReference(reference4.getName(), "target");
         cReference4.initialize(assemblyContext);
         source.getConfiguredReferences().add(cReference4);
-        
+
         source.initialize(assemblyContext);
 
         Module module = systemFactory.createModule();
@@ -459,14 +464,14 @@
         return module;
     }
 
-    
+
     /**
      * Creates a test system module with source and target components wired 
together.
      * 
      * @see org.apache.tuscany.core.mock.component.Source
      * @see org.apache.tuscany.core.mock.component.Target
      */
-    
+
     public static Module 
createModuleWithWiredComponentsOfDifferentInterface(Scope sourceScope, Scope 
targetScope) {
 
         // create the target component
@@ -552,7 +557,7 @@
         ConfiguredReference cReference4 = 
systemFactory.createConfiguredReference(reference4.getName(), "target");
         cReference4.initialize(assemblyContext);
         source.getConfiguredReferences().add(cReference4);
-        
+
         source.initialize(assemblyContext);
 
         Module module = systemFactory.createModule();
@@ -564,8 +569,8 @@
         return module;
     }
 
-    
-    
+
+
     /**
      * Returns a collection of bootstrap configuration builders
      */
@@ -603,7 +608,7 @@
      * @throws NoSuchMethodException if the POJO does not have a default 
noi-args constructor
      */
     public static JavaAtomicContext createPojoContext(String name, Class 
implType, Scope scope,
-                                                         CompositeContext 
moduleComponentContext) throws NoSuchMethodException {
+                                                      CompositeContext 
moduleComponentContext) throws NoSuchMethodException {
         AtomicComponent component = createComponent(name, implType, scope);
 
         Set<Field> fields = JavaIntrospectionHelper.getAllFields(implType);
@@ -661,7 +666,10 @@
      * @throws ConfigurationException
      */
     public static RuntimeContext createJavaRuntime() throws 
ConfigurationException {
-        RuntimeContext runtime = new RuntimeContextImpl(null, 
MockFactory.createSystemBuilders(), null);
+        MonitorFactory monitorFactory = new NullMonitorFactory();
+        ContextFactoryBuilderRegistry builderRegistry = 
BootstrapHelper.bootstrapContextFactoryBuilders(monitorFactory);
+        DefaultWireBuilder wireBuilder = new DefaultWireBuilder();
+        RuntimeContext runtime = new RuntimeContextImpl(monitorFactory, 
builderRegistry, wireBuilder);
         runtime.start();
         
runtime.getSystemContext().registerModelObject(createSystemCompositeComponent(SYSTEM_CHILD));
         SystemCompositeContext ctx = (SystemCompositeContext) 
runtime.getSystemContext().getContext(SYSTEM_CHILD);

Modified: 
incubator/tuscany/java/sca/containers/container.js/src/test/java/org/apache/tuscany/container/js/integration/JSComponentContextTestCase.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.js/src/test/java/org/apache/tuscany/container/js/integration/JSComponentContextTestCase.java?rev=394677&r1=394676&r2=394677&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/containers/container.js/src/test/java/org/apache/tuscany/container/js/integration/JSComponentContextTestCase.java
 (original)
+++ 
incubator/tuscany/java/sca/containers/container.js/src/test/java/org/apache/tuscany/container/js/integration/JSComponentContextTestCase.java
 Mon Apr 17 07:33:16 2006
@@ -13,9 +13,6 @@
  */
 package org.apache.tuscany.container.js.integration;
 
-import java.util.ArrayList;
-import java.util.List;
-
 import junit.framework.Assert;
 import junit.framework.TestCase;
 
@@ -26,23 +23,22 @@
 import org.apache.tuscany.container.js.invocation.mock.MockSyncInterceptor;
 import org.apache.tuscany.container.js.mock.MockAssemblyFactory;
 import org.apache.tuscany.container.js.mock.MockModuleFactory;
-import org.apache.tuscany.core.builder.ContextFactoryBuilder;
+import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
 import org.apache.tuscany.core.builder.impl.DefaultWireBuilder;
 import org.apache.tuscany.core.builder.impl.HierarchicalBuilder;
+import org.apache.tuscany.core.client.BootstrapHelper;
 import org.apache.tuscany.core.context.CompositeContext;
 import org.apache.tuscany.core.context.QualifiedName;
 import org.apache.tuscany.core.context.event.ModuleStart;
 import org.apache.tuscany.core.context.event.ModuleStop;
 import org.apache.tuscany.core.context.impl.CompositeContextImpl;
-import org.apache.tuscany.core.wire.jdk.JDKProxyFactoryFactory;
 import org.apache.tuscany.core.message.MessageFactory;
 import org.apache.tuscany.core.message.impl.MessageFactoryImpl;
 import org.apache.tuscany.core.runtime.RuntimeContext;
 import org.apache.tuscany.core.runtime.RuntimeContextImpl;
-import org.apache.tuscany.core.system.builder.SystemContextFactoryBuilder;
-import org.apache.tuscany.core.system.builder.SystemEntryPointBuilder;
-import org.apache.tuscany.core.system.builder.SystemExternalServiceBuilder;
+import org.apache.tuscany.core.wire.jdk.JDKProxyFactoryFactory;
 import org.apache.tuscany.model.assembly.Scope;
+import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
 
 /**
  * Integration tests for JavaScript components and aggregate contexts
@@ -54,11 +50,6 @@
     public void testBasicInvocation() throws Exception {
         MessageFactory msgFactory = new MessageFactoryImpl();
 
-        List<ContextFactoryBuilder> builders = new 
ArrayList<ContextFactoryBuilder>();
-        builders.add((new SystemContextFactoryBuilder(null)));
-        builders.add(new SystemEntryPointBuilder());
-        builders.add(new SystemExternalServiceBuilder());
-
         JavaScriptContextFactoryBuilder javaBuilder = new 
JavaScriptContextFactoryBuilder();
         javaBuilder.setMessageFactory(msgFactory);
         javaBuilder.setProxyFactoryFactory(new JDKProxyFactoryFactory());
@@ -68,11 +59,12 @@
         HierarchicalBuilder refBuilder = new HierarchicalBuilder();
         refBuilder.addBuilder(interceptorBuilder);
         javaBuilder.setReferenceBuilder(refBuilder);
-        builders.add(javaBuilder);
 
+        ContextFactoryBuilderRegistry builderRegistry = 
BootstrapHelper.bootstrapContextFactoryBuilders(new NullMonitorFactory());
+        builderRegistry.register(javaBuilder);
         DefaultWireBuilder defaultWireBuilder = new DefaultWireBuilder();
 
-        RuntimeContext runtime = new RuntimeContextImpl(null, builders, 
defaultWireBuilder);
+        RuntimeContext runtime = new RuntimeContextImpl(null, builderRegistry, 
defaultWireBuilder);
         runtime.addBuilder(new JavaScriptTargetWireBuilder());
         runtime.start();
         runtime.getRootContext().registerModelObject(

Modified: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/BootstrapHelper.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/BootstrapHelper.java?rev=394677&r1=394676&r2=394677&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/BootstrapHelper.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/BootstrapHelper.java
 Mon Apr 17 07:33:16 2006
@@ -24,6 +24,8 @@
 import org.apache.tuscany.common.resource.ResourceLoader;
 import org.apache.tuscany.common.resource.impl.ResourceLoaderImpl;
 import org.apache.tuscany.core.builder.ContextFactoryBuilder;
+import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
+import org.apache.tuscany.core.builder.impl.ContextFactoryBuilderRegistryImpl;
 import org.apache.tuscany.core.config.ConfigurationException;
 import org.apache.tuscany.core.config.ModuleComponentConfigurationLoader;
 import 
org.apache.tuscany.core.config.impl.StAXModuleComponentConfigurationLoaderImpl;
@@ -82,6 +84,20 @@
         configBuilders.add(new SystemEntryPointBuilder());
         configBuilders.add(new SystemExternalServiceBuilder());
         return configBuilders;
+    }
+
+    /**
+     * Returns a ContextFactoryBuilderRegistry with default builders 
registered for system contexts.
+     *
+     * @param monitorFactory a monitorFactory that will be used to obtain 
monitors for system components
+     * @return a default ContextFactoryBuilderRegistry
+     */
+    public static ContextFactoryBuilderRegistry 
bootstrapContextFactoryBuilders(MonitorFactory monitorFactory) {
+        ContextFactoryBuilderRegistryImpl registry = new 
ContextFactoryBuilderRegistryImpl();
+        registry.register(new SystemContextFactoryBuilder(monitorFactory));
+        registry.register(new SystemEntryPointBuilder());
+        registry.register(new SystemExternalServiceBuilder());
+        return registry;
     }
 
     public static final String SYSTEM_LOADER_COMPONENT = "tuscany.loader";

Modified: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/TuscanyRuntime.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/TuscanyRuntime.java?rev=394677&r1=394676&r2=394677&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/TuscanyRuntime.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/TuscanyRuntime.java
 Mon Apr 17 07:33:16 2006
@@ -16,28 +16,26 @@
  */
 package org.apache.tuscany.core.client;
 
-import java.util.List;
-
 import org.osoa.sca.ModuleContext;
 import org.osoa.sca.SCA;
 import org.osoa.sca.ServiceRuntimeException;
 
-import org.apache.tuscany.common.monitor.MonitorFactory;
 import org.apache.tuscany.common.monitor.LogLevel;
+import org.apache.tuscany.common.monitor.MonitorFactory;
 import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
-import org.apache.tuscany.core.builder.ContextFactoryBuilder;
+import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
 import org.apache.tuscany.core.builder.impl.DefaultWireBuilder;
 import org.apache.tuscany.core.config.ConfigurationException;
 import org.apache.tuscany.core.config.ModuleComponentConfigurationLoader;
 import org.apache.tuscany.core.context.CompositeContext;
 import org.apache.tuscany.core.context.CoreRuntimeException;
 import org.apache.tuscany.core.context.SystemCompositeContext;
-import org.apache.tuscany.core.context.event.ModuleStart;
-import org.apache.tuscany.core.context.event.RequestStart;
-import org.apache.tuscany.core.context.event.RequestEnd;
-import org.apache.tuscany.core.context.event.ModuleStop;
 import org.apache.tuscany.core.context.event.HttpSessionBound;
 import org.apache.tuscany.core.context.event.HttpSessionEnd;
+import org.apache.tuscany.core.context.event.ModuleStart;
+import org.apache.tuscany.core.context.event.ModuleStop;
+import org.apache.tuscany.core.context.event.RequestEnd;
+import org.apache.tuscany.core.context.event.RequestStart;
 import org.apache.tuscany.core.runtime.RuntimeContext;
 import org.apache.tuscany.core.runtime.RuntimeContextImpl;
 import org.apache.tuscany.model.assembly.AssemblyContext;
@@ -87,8 +85,8 @@
         AssemblyContext modelContext = 
BootstrapHelper.getModelContext(classLoader);
 
         // Create a runtime context and start it
-        List<ContextFactoryBuilder> configBuilders = 
BootstrapHelper.getBuilders(monitorFactory);
-        runtime = new RuntimeContextImpl(monitorFactory, configBuilders, new 
DefaultWireBuilder());
+        ContextFactoryBuilderRegistry builderRegistry = 
BootstrapHelper.bootstrapContextFactoryBuilders(monitorFactory);
+        runtime = new RuntimeContextImpl(monitorFactory, builderRegistry, new 
DefaultWireBuilder());
         runtime.start();
 
         // Load and start the system configuration

Modified: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/runtime/RuntimeContextImpl.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/runtime/RuntimeContextImpl.java?rev=394677&r1=394676&r2=394677&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/runtime/RuntimeContextImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/runtime/RuntimeContextImpl.java
 Mon Apr 17 07:33:16 2006
@@ -16,15 +16,12 @@
 import java.util.List;
 
 import org.apache.tuscany.common.monitor.MonitorFactory;
-import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
 import org.apache.tuscany.core.builder.BuilderConfigException;
-import org.apache.tuscany.core.builder.ContextFactoryBuilder;
 import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
 import org.apache.tuscany.core.builder.HierarchicalWireBuilder;
 import org.apache.tuscany.core.builder.WireBuilder;
 import org.apache.tuscany.core.builder.impl.AssemblyVisitorImpl;
 import org.apache.tuscany.core.builder.impl.ContextFactoryBuilderRegistryImpl;
-import org.apache.tuscany.core.builder.impl.DefaultWireBuilder;
 import org.apache.tuscany.core.config.ConfigurationException;
 import org.apache.tuscany.core.context.AutowireContext;
 import org.apache.tuscany.core.context.AutowireResolutionException;
@@ -66,63 +63,14 @@
 
     private final ContextFactoryBuilderRegistryImpl builderRegistry;
 
-    /**
-     * Default constructor that creates a runtime with a NullMonitorFactory 
and no builders.
-     */
-    public RuntimeContextImpl() {
-        this(new NullMonitorFactory(), null, null);
-    }
-
-    /**
-     * Constructor for creating a runtime with a specified MonitorFactory and 
pre-defined builders.
-     *
-     * @param monitorFactory the default [EMAIL PROTECTED] 
org.apache.tuscany.common.monitor.MonitorFactory} for this runtime
-     * @param builders a list of builders automatically made available; may be 
null
-     * @param wireBuilder the top-level hierarchical wire builder for the 
runtime; if not specified, a default
-     */
-    public RuntimeContextImpl(MonitorFactory monitorFactory, 
List<ContextFactoryBuilder> builders, HierarchicalWireBuilder wireBuilder) {
+    public RuntimeContextImpl(MonitorFactory monitorFactory, 
ContextFactoryBuilderRegistry builderRegistry, HierarchicalWireBuilder 
wireBuilder) {
         super(RUNTIME);
         this.monitorFactory = monitorFactory;
-        this.wireBuilder = (wireBuilder == null) ? new DefaultWireBuilder() : 
wireBuilder;
+        this.builderRegistry = (ContextFactoryBuilderRegistryImpl) 
builderRegistry;
+        this.wireBuilder = wireBuilder;
 
         rootContext = new CompositeContextImpl(ROOT, this, this, new 
RuntimeScopeStrategy(), new EventContextImpl(), this);
         systemContext = new SystemCompositeContextImpl(SYSTEM, this, this, new 
SystemScopeStrategy(), new EventContextImpl(), this);
-
-        // bootstrap the builder registry
-        builderRegistry = new ContextFactoryBuilderRegistryImpl();
-        if (builders != null) {
-            for (ContextFactoryBuilder builder: builders) {
-                builderRegistry.register(builder);
-            }
-        }
-
-/*
-        try {
-            
systemContext.registerJavaObject(ContextFactoryBuilderRegistry.class.getName(), 
ContextFactoryBuilderRegistry.class, builderRegistry);
-        } catch (ConfigurationException e) {
-            throw new AssertionError();
-        }
-*/
-    }
-
-    /**
-     * Specialized constructor that allows the default implementations of the 
root and system contexts to be overridden.
-     *
-     * @param monitorFactory the default [EMAIL PROTECTED] 
org.apache.tuscany.common.monitor.MonitorFactory} for this runtime
-     * @param rootContext the context to use for the root of the user context 
tree
-     * @param systemContext the context to use for the root of the system 
context tree
-     * @param wireBuilder the top-level hierarchical wire builder for the 
runtime; if not specified, a default
-     */
-    public RuntimeContextImpl(MonitorFactory monitorFactory,
-                              CompositeContext rootContext,
-                              SystemCompositeContext systemContext,
-                              HierarchicalWireBuilder wireBuilder) {
-        super(RUNTIME);
-        this.rootContext = rootContext;
-        this.systemContext = systemContext;
-        this.monitorFactory = monitorFactory;
-        this.wireBuilder = (wireBuilder == null) ? new DefaultWireBuilder() : 
wireBuilder;
-        builderRegistry = null;
     }
 
     public void start() throws CoreRuntimeException {

Modified: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/webapp/TuscanyServletListener.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/webapp/TuscanyServletListener.java?rev=394677&r1=394676&r2=394677&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/webapp/TuscanyServletListener.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/webapp/TuscanyServletListener.java
 Mon Apr 17 07:33:16 2006
@@ -18,7 +18,7 @@
 
 import org.apache.tuscany.common.monitor.MonitorFactory;
 import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
-import org.apache.tuscany.core.builder.ContextFactoryBuilder;
+import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
 import org.apache.tuscany.core.builder.impl.DefaultWireBuilder;
 import org.apache.tuscany.core.client.BootstrapHelper;
 import org.apache.tuscany.core.config.ConfigurationException;
@@ -40,7 +40,6 @@
 import javax.servlet.ServletContextListener;
 import javax.servlet.http.HttpSessionEvent;
 import javax.servlet.http.HttpSessionListener;
-import java.util.List;
 
 /**
  * ServletContextListener that can be added to a standard web application to 
boot
@@ -108,8 +107,8 @@
         AssemblyContext modelContext = 
BootstrapHelper.getModelContext(classLoader);
 
         // Create a runtime context and start it
-        List<ContextFactoryBuilder> configBuilders = 
BootstrapHelper.getBuilders(monitorFactory);
-        runtime = new RuntimeContextImpl(monitorFactory, configBuilders, new 
DefaultWireBuilder());
+        ContextFactoryBuilderRegistry builderRegistry = 
BootstrapHelper.bootstrapContextFactoryBuilders(monitorFactory);
+        runtime = new RuntimeContextImpl(monitorFactory, builderRegistry, new 
DefaultWireBuilder());
         runtime.start();
 
         // Load and start the system configuration

Modified: 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/mock/MockFactory.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/mock/MockFactory.java?rev=394677&r1=394676&r2=394677&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/mock/MockFactory.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/mock/MockFactory.java
 Mon Apr 17 07:33:16 2006
@@ -32,6 +32,7 @@
 import org.apache.tuscany.core.system.builder.SystemContextFactoryBuilder;
 import org.apache.tuscany.core.system.builder.SystemEntryPointBuilder;
 import org.apache.tuscany.core.system.builder.SystemExternalServiceBuilder;
+import org.apache.tuscany.core.client.BootstrapHelper;
 import org.apache.tuscany.model.assembly.AssemblyContext;
 import org.apache.tuscany.model.assembly.Component;
 import org.apache.tuscany.model.assembly.ComponentInfo;
@@ -48,6 +49,7 @@
 import org.apache.tuscany.model.assembly.Service;
 import org.apache.tuscany.model.assembly.impl.AssemblyContextImpl;
 import org.apache.tuscany.model.types.java.JavaServiceContract;
+import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
 
 /**
  * Generates test components, modules, and runtime artifacts
@@ -253,7 +255,7 @@
     public static <T> Component createSystemComponent(String name,  Class<T> 
service, Class<? extends T> impl,Scope scope ){
        return systemFactory.createSystemComponent(name,service,impl,scope);
     }
-    
+
     /**
      * Creates a test system module with source and target components wired 
together.
      * 
@@ -309,7 +311,7 @@
      * @see org.apache.tuscany.core.mock.component.Target
      */
     public static ModuleComponent 
createSystemModuleComponentWithWiredComponents(String moduleComponentName, 
Scope sourceScope,
-            Scope targetScope) {
+                                                                               
  Scope targetScope) {
         ModuleComponent mc = systemFactory.createModuleComponent();
         mc.setName(moduleComponentName);
         
mc.setImplementation(createSystemModuleWithWiredComponents(moduleComponentName+".module",
 sourceScope, targetScope));
@@ -351,7 +353,8 @@
      * Creates a default [EMAIL PROTECTED] RuntimeContext} configured with 
support for Java component implementations
      */
     public static RuntimeContext createCoreRuntime() {
-        RuntimeContext runtime = new RuntimeContextImpl(null, 
createSystemBuilders(), null);
+        NullMonitorFactory monitorFactory = new NullMonitorFactory();
+        RuntimeContext runtime = new RuntimeContextImpl(monitorFactory, 
BootstrapHelper.bootstrapContextFactoryBuilders(monitorFactory), null);
         runtime.start();
         return runtime;
     }

Modified: 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/RuntimeBootTestCase.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/RuntimeBootTestCase.java?rev=394677&r1=394676&r2=394677&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/RuntimeBootTestCase.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/RuntimeBootTestCase.java
 Mon Apr 17 07:33:16 2006
@@ -15,16 +15,17 @@
 
 import junit.framework.Assert;
 import junit.framework.TestCase;
+
 import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
-import org.apache.tuscany.core.builder.ContextFactoryBuilder;
+import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
+import org.apache.tuscany.core.builder.impl.DefaultWireBuilder;
+import org.apache.tuscany.core.client.BootstrapHelper;
 import org.apache.tuscany.core.context.CompositeContext;
 import org.apache.tuscany.core.context.Context;
-import org.apache.tuscany.core.context.event.ModuleStop;
 import org.apache.tuscany.core.context.event.ModuleStart;
+import org.apache.tuscany.core.context.event.ModuleStop;
 import org.apache.tuscany.core.mock.MockFactory;
 
-import java.util.List;
-
 /**
  * Tests runtime boot scenarios
  * 
@@ -32,6 +33,9 @@
  */
 public class RuntimeBootTestCase extends TestCase {
     private RuntimeContext runtime;
+    private NullMonitorFactory monitorFactory;
+    private ContextFactoryBuilderRegistry builderRegistry;
+    private DefaultWireBuilder wireBuilder;
 
     public void testContextParents() {
         CompositeContext rootContext = runtime.getRootContext();
@@ -59,9 +63,8 @@
 
     public void testIncrementalBoot() throws Exception{
 
-        List<ContextFactoryBuilder> builders  = 
MockFactory.createSystemBuilders();
         // start the runtime context
-        RuntimeContext runtimeContext = new RuntimeContextImpl(new 
NullMonitorFactory(), builders, null);
+        RuntimeContext runtimeContext = new RuntimeContextImpl(monitorFactory, 
builderRegistry, wireBuilder);
         runtimeContext.start();
 
         CompositeContext system = runtimeContext.getSystemContext();
@@ -84,7 +87,10 @@
     protected void setUp() throws Exception {
         super.setUp();
 
-        runtime = new RuntimeContextImpl();
+        monitorFactory = new NullMonitorFactory();
+        builderRegistry = 
BootstrapHelper.bootstrapContextFactoryBuilders(monitorFactory);
+        wireBuilder = new DefaultWireBuilder();
+        runtime = new RuntimeContextImpl(monitorFactory, builderRegistry, 
wireBuilder);
         runtime.start();
     }
 

Modified: 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/RuntimeContextImplTestCase.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/RuntimeContextImplTestCase.java?rev=394677&r1=394676&r2=394677&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/RuntimeContextImplTestCase.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/RuntimeContextImplTestCase.java
 Mon Apr 17 07:33:16 2006
@@ -15,8 +15,13 @@
 
 import junit.framework.Assert;
 import junit.framework.TestCase;
+import org.osoa.sca.ServiceUnavailableException;
+
 import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
+import org.apache.tuscany.common.monitor.MonitorFactory;
 import org.apache.tuscany.core.builder.ContextFactoryBuilder;
+import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
+import org.apache.tuscany.core.client.BootstrapHelper;
 import org.apache.tuscany.core.config.ConfigurationException;
 import org.apache.tuscany.core.context.CompositeContext;
 import org.apache.tuscany.core.context.Context;
@@ -35,9 +40,6 @@
 import org.apache.tuscany.model.assembly.Scope;
 import org.apache.tuscany.model.assembly.Service;
 import org.apache.tuscany.model.types.java.JavaServiceContract;
-import org.osoa.sca.ServiceUnavailableException;
-
-import java.util.List;
 
 /**
  * Performs basic tests on the runtime context
@@ -48,17 +50,17 @@
 
     private SystemAssemblyFactory systemFactory = new 
SystemAssemblyFactoryImpl();
 
-    private List<ContextFactoryBuilder> builders;
+    private ContextFactoryBuilderRegistry builderRegistry;
+
     private SystemAssemblyFactory factory;
+    private MonitorFactory monitorFactory;
+    private RuntimeContext runtime;
 
     /**
      * Tests explicit wiring of an external service to a system entry point 
that is wired to a child system module entry
      * point
      */
     public void testSystemExplicitWiring() throws Exception {
-        RuntimeContext runtime = new RuntimeContextImpl(new 
NullMonitorFactory(), builders, null);
-        runtime.start();
-
         CompositeContext root = runtime.getRootContext();
         Assert.assertNotNull(root);
         Assert.assertTrue(root.getLifecycleState() == Context.RUNNING);
@@ -98,16 +100,12 @@
 
         moduleContext.publish(new ModuleStop(this));
         system.publish(new ModuleStop(this));
-        runtime.stop();
     }
 
     /**
      * Tests autowiring an external service to a system entry point
      */
     public void testSystemAutoWiring() throws Exception {
-        RuntimeContext runtime = new RuntimeContextImpl(new 
NullMonitorFactory(), builders, null);
-        runtime.start();
-
         CompositeContext root = runtime.getRootContext();
         Assert.assertNotNull(root);
         Assert.assertTrue(root.getLifecycleState() == Context.RUNNING);
@@ -131,13 +129,9 @@
 
         moduleContext.publish(new ModuleStop(this));
         system.publish(new ModuleStop(this));
-        runtime.stop();
     }
 
     public void testServiceNotFound() throws Exception {
-        RuntimeContext runtime = new RuntimeContextImpl(new 
NullMonitorFactory(), builders, null);
-        runtime.start();
-
         // create a test module
         Component moduleComponent = 
MockFactory.createCompositeComponent("module");
         runtime.registerModelObject(moduleComponent);
@@ -150,12 +144,9 @@
             // expected
         }
         moduleContext.publish(new ModuleStop(this));
-        runtime.stop();
     }
 
     public void testExternalServiceReferenceNotFound() throws Exception {
-        RuntimeContext runtime = new RuntimeContextImpl(new 
NullMonitorFactory(), builders, null);
-        runtime.start();
         CompositeContext system = runtime.getSystemContext();
 
         // create a test module
@@ -176,13 +167,9 @@
         }
         moduleContext.publish(new ModuleStop(this));
         system.publish(new ModuleStop(this));
-        runtime.stop();
     }
 
     public void testEntryPointReferenceNotFound() throws Exception {
-        RuntimeContext runtime = new RuntimeContextImpl(new 
NullMonitorFactory(), builders, null);
-        runtime.start();
-
         // create a test module
         Component moduleComponent = 
MockFactory.createCompositeComponent("module");
         runtime.registerModelObject(moduleComponent);
@@ -202,16 +189,12 @@
             // expected
         }
         moduleContext.publish(new ModuleStop(this));
-        runtime.stop();
     }
 
     /**
      * Test two module components that have external services wired to entry 
points contained in each
      */
     public void testCircularWires() throws Exception {
-        RuntimeContext runtime = new RuntimeContextImpl(new 
NullMonitorFactory(), builders, null);
-        runtime.start();
-
         // create a test modules
         Component module1 = MockFactory.createCompositeComponent("module1");
         runtime.registerModelObject(module1);
@@ -239,7 +222,6 @@
         moduleContext2.publish(new ModuleStart(this));
         
Assert.assertNotNull(moduleContext2.getContext("ExternalService2").getInstance(null));
         
Assert.assertNotNull(moduleContext1.getContext("ExternalService1").getInstance(null));
-        runtime.stop();
     }
 
     /**
@@ -247,9 +229,6 @@
      * as an error condition FIXME this must be implemented
      */
     public void testInterModuleCircularReference() throws Exception {
-        RuntimeContext runtime = new RuntimeContextImpl(new 
NullMonitorFactory(), builders, null);
-        runtime.start();
-
         // create a test modules
         Component module1 = MockFactory.createCompositeComponent("module1");
         runtime.registerModelObject(module1);
@@ -278,8 +257,6 @@
 
     public void testRuntimeBuilderAutowire() throws Exception {
 
-        RuntimeContext runtime = new RuntimeContextImpl(new 
NullMonitorFactory(), builders, null);
-        runtime.start();
 
         CompositeContext system = runtime.getSystemContext();
         Component builder = factory.createSystemComponent("TestBuilder", 
ContextFactoryBuilder.class, TestBuilder.class, Scope.MODULE);
@@ -290,13 +267,20 @@
         runtime.getContext("module1");
         Assert.assertTrue(((TestBuilder) 
system.getContext("TestBuilder").getInstance(null)).invoked());
         system.publish(new ModuleStop(this));
-        runtime.stop();
-
     }
 
     protected void setUp() throws Exception {
         super.setUp();
-        builders = MockFactory.createSystemBuilders();
+        monitorFactory = new NullMonitorFactory();
+        builderRegistry = 
BootstrapHelper.bootstrapContextFactoryBuilders(monitorFactory);
         factory = new SystemAssemblyFactoryImpl();
+
+        runtime = new RuntimeContextImpl(monitorFactory, builderRegistry, 
null);
+        runtime.start();
+    }
+
+    protected void tearDown() throws Exception {
+        runtime.stop();
+        super.tearDown();
     }
 }

Modified: 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/SystemBootstrapTestCase.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/SystemBootstrapTestCase.java?rev=394677&r1=394676&r2=394677&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/SystemBootstrapTestCase.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/SystemBootstrapTestCase.java
 Mon Apr 17 07:33:16 2006
@@ -13,13 +13,12 @@
  */
 package org.apache.tuscany.core.runtime;
 
-import java.util.List;
-
 import junit.framework.Assert;
 import junit.framework.TestCase;
 
 import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
-import org.apache.tuscany.core.builder.ContextFactoryBuilder;
+import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
+import org.apache.tuscany.core.client.BootstrapHelper;
 import org.apache.tuscany.core.context.AutowireContext;
 import org.apache.tuscany.core.context.CompositeContext;
 import org.apache.tuscany.core.context.event.ModuleStart;
@@ -44,7 +43,7 @@
  * @version $Rev: 385834 $ $Date: 2006-03-14 08:57:08 -0800 (Tue, 14 Mar 2006) 
$
  */
 public class SystemBootstrapTestCase extends TestCase {
-    private List<ContextFactoryBuilder> builders;
+    private ContextFactoryBuilderRegistry builderRegistry;
     
     private SystemAssemblyFactory factory = new SystemAssemblyFactoryImpl();
 
@@ -52,7 +51,7 @@
      * Simulates booting a runtime process
      */
     public void testBoot() throws Exception {
-        RuntimeContext runtimeContext = new RuntimeContextImpl(new 
NullMonitorFactory(), builders,null);
+        RuntimeContext runtimeContext = new RuntimeContextImpl(new 
NullMonitorFactory(), builderRegistry,null);
         runtimeContext.start();
 
         CompositeContext systemContext = runtimeContext.getSystemContext();
@@ -82,7 +81,7 @@
     }
 
     public void testRuntimeBoot() throws Exception {
-        RuntimeContext runtime = new RuntimeContextImpl(new 
NullMonitorFactory(), builders,null);
+        RuntimeContext runtime = new RuntimeContextImpl(new 
NullMonitorFactory(), builderRegistry,null);
         runtime.start();
         runtime.getRootContext();
 
@@ -123,6 +122,6 @@
 
     protected void setUp() throws Exception {
         super.setUp();
-        builders = MockFactory.createSystemBuilders();
+        builderRegistry = 
BootstrapHelper.bootstrapContextFactoryBuilders(null);
     }
 }

Modified: 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/context/SystemObjectRegistrationTestCase.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/context/SystemObjectRegistrationTestCase.java?rev=394677&r1=394676&r2=394677&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/context/SystemObjectRegistrationTestCase.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/context/SystemObjectRegistrationTestCase.java
 Mon Apr 17 07:33:16 2006
@@ -24,6 +24,11 @@
 import org.apache.tuscany.core.context.event.ModuleStart;
 import org.apache.tuscany.core.runtime.RuntimeContext;
 import org.apache.tuscany.core.runtime.RuntimeContextImpl;
+import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
+import org.apache.tuscany.core.builder.impl.DefaultWireBuilder;
+import org.apache.tuscany.core.client.BootstrapHelper;
+import org.apache.tuscany.common.monitor.MonitorFactory;
+import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
 
 /**
  * @version $Rev$ $Date$
@@ -58,7 +63,10 @@
 
     protected void setUp() throws Exception {
         super.setUp();
-        runtime = new RuntimeContextImpl();
+        MonitorFactory monitorFactory = new NullMonitorFactory();
+        ContextFactoryBuilderRegistry builderRegistry = 
BootstrapHelper.bootstrapContextFactoryBuilders(monitorFactory);
+        DefaultWireBuilder wireBuilder = new DefaultWireBuilder();
+        runtime = new RuntimeContextImpl(monitorFactory, builderRegistry, 
wireBuilder);
         runtime.start();
         systemContext = runtime.getSystemContext();
         systemContext.publish(new ModuleStart(this));

Modified: 
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java?rev=394677&r1=394676&r2=394677&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java
 (original)
+++ 
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java
 Mon Apr 17 07:33:16 2006
@@ -16,8 +16,6 @@
  */
 package org.apache.tuscany.tomcat;
 
-import java.util.List;
-
 import org.apache.catalina.Container;
 import org.apache.catalina.LifecycleException;
 import org.apache.catalina.core.StandardContext;
@@ -25,7 +23,7 @@
 import org.apache.catalina.util.StringManager;
 
 import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
-import org.apache.tuscany.core.builder.ContextFactoryBuilder;
+import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
 import org.apache.tuscany.core.builder.impl.DefaultWireBuilder;
 import org.apache.tuscany.core.client.BootstrapHelper;
 import org.apache.tuscany.core.config.ConfigurationLoadException;
@@ -35,8 +33,8 @@
 import org.apache.tuscany.core.context.event.ModuleStart;
 import org.apache.tuscany.core.runtime.RuntimeContext;
 import org.apache.tuscany.core.runtime.RuntimeContextImpl;
-import org.apache.tuscany.model.assembly.AssemblyFactory;
 import org.apache.tuscany.model.assembly.AssemblyContext;
+import org.apache.tuscany.model.assembly.AssemblyFactory;
 import org.apache.tuscany.model.assembly.ModuleComponent;
 import org.apache.tuscany.model.assembly.loader.AssemblyModelLoader;
 
@@ -75,8 +73,8 @@
 
         // Create and start the runtime
         NullMonitorFactory monitorFactory = new NullMonitorFactory();
-        List<ContextFactoryBuilder> configBuilders = 
BootstrapHelper.getBuilders(monitorFactory);
-        runtime = new RuntimeContextImpl(monitorFactory, configBuilders, new 
DefaultWireBuilder());
+        ContextFactoryBuilderRegistry builderRegistry = 
BootstrapHelper.bootstrapContextFactoryBuilders(monitorFactory);
+        runtime = new RuntimeContextImpl(monitorFactory, builderRegistry, new 
DefaultWireBuilder());
         runtime.start();
 
         // Load and start the system configuration


Reply via email to