Author: jboynes
Date: Sat Apr  8 11:56:07 2006
New Revision: 392581

URL: http://svn.apache.org/viewcvs?rev=392581&view=rev
Log:
add support for @Monitor annotation so that monitors can be injected into 
system components

Added:
    
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/annotation/Monitor.java
   (with props)
    
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/builder/MonitorInjectionTestCase.java
   (with props)
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/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/system/builder/SystemContextFactoryBuilder.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/system/builder/SystemContextFactoryBuilderTestCase.java
    
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java
    
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/lifecycle/listener/RuntimeBootstrap.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=392581&r1=392580&r2=392581&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
 Sat Apr  8 11:56:07 2006
@@ -64,7 +64,7 @@
         MessageFactory msgFactory = new MessageFactoryImpl();
 
         List<ContextFactoryBuilder> builders = new 
ArrayList<ContextFactoryBuilder>();
-        builders.add((new SystemContextFactoryBuilder()));
+        builders.add((new SystemContextFactoryBuilder(null)));
         builders.add(new SystemEntryPointBuilder());
         builders.add(new SystemExternalServiceBuilder());
 
@@ -105,7 +105,7 @@
         MessageFactory msgFactory = new MessageFactoryImpl();
 
         List<ContextFactoryBuilder> builders = new 
ArrayList<ContextFactoryBuilder>();
-        builders.add((new SystemContextFactoryBuilder()));
+        builders.add((new SystemContextFactoryBuilder(null)));
         builders.add(new SystemEntryPointBuilder());
         builders.add(new SystemExternalServiceBuilder());
 
@@ -151,7 +151,7 @@
         MessageFactory msgFactory = new MessageFactoryImpl();
 
         List<ContextFactoryBuilder> builders = new 
ArrayList<ContextFactoryBuilder>();
-        builders.add((new SystemContextFactoryBuilder()));
+        builders.add((new SystemContextFactoryBuilder(null)));
         builders.add(new SystemEntryPointBuilder());
         builders.add(new SystemExternalServiceBuilder());
 
@@ -198,7 +198,7 @@
         MessageFactory msgFactory = new MessageFactoryImpl();
 
         List<ContextFactoryBuilder> builders = new 
ArrayList<ContextFactoryBuilder>();
-        builders.add((new SystemContextFactoryBuilder()));
+        builders.add((new SystemContextFactoryBuilder(null)));
         builders.add(new SystemEntryPointBuilder());
         builders.add(new SystemExternalServiceBuilder());
 

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=392581&r1=392580&r2=392581&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
 Sat Apr  8 11:56:07 2006
@@ -571,7 +571,7 @@
      */
     public static List<ContextFactoryBuilder> createSystemBuilders() {
         List<ContextFactoryBuilder> builders = new 
ArrayList<ContextFactoryBuilder>();
-        builders.add((new SystemContextFactoryBuilder()));
+        builders.add((new SystemContextFactoryBuilder(null)));
         builders.add(new SystemEntryPointBuilder());
         builders.add(new SystemExternalServiceBuilder());
         return builders;
@@ -588,7 +588,7 @@
     ) throws BuilderException {
 
         Component sc = createCompositeComponent(name);
-        SystemContextFactoryBuilder builder = new 
SystemContextFactoryBuilder();
+        SystemContextFactoryBuilder builder = new 
SystemContextFactoryBuilder(null);
         builder.build(sc);
         return (ContextFactory<Context>) 
sc.getComponentImplementation().getContextFactory();
     }

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=392581&r1=392580&r2=392581&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
 Sat Apr  8 11:56:07 2006
@@ -54,7 +54,7 @@
         MessageFactory msgFactory = new MessageFactoryImpl();
 
         List<ContextFactoryBuilder> builders = new 
ArrayList<ContextFactoryBuilder>();
-        builders.add((new SystemContextFactoryBuilder()));
+        builders.add((new SystemContextFactoryBuilder(null)));
         builders.add(new SystemEntryPointBuilder());
         builders.add(new SystemExternalServiceBuilder());
 

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=392581&r1=392580&r2=392581&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
 Sat Apr  8 11:56:07 2006
@@ -18,6 +18,7 @@
 
 import org.apache.tuscany.common.resource.ResourceLoader;
 import org.apache.tuscany.common.resource.impl.ResourceLoaderImpl;
+import org.apache.tuscany.common.monitor.MonitorFactory;
 import org.apache.tuscany.core.builder.ContextFactoryBuilder;
 import org.apache.tuscany.core.config.ConfigurationException;
 import org.apache.tuscany.core.config.ModuleComponentConfigurationLoader;
@@ -73,10 +74,11 @@
      * Returns a default list of configuration builders.
      *
      * @return a default list of configuration builders
+     * @param monitorFactory
      */
-    public static List<ContextFactoryBuilder> getBuilders() {
+    public static List<ContextFactoryBuilder> getBuilders(MonitorFactory 
monitorFactory) {
         List<ContextFactoryBuilder> configBuilders = new 
ArrayList<ContextFactoryBuilder>();
-        configBuilders.add((new SystemContextFactoryBuilder()));
+        configBuilders.add((new SystemContextFactoryBuilder(monitorFactory)));
         configBuilders.add(new SystemEntryPointBuilder());
         configBuilders.add(new SystemExternalServiceBuilder());
         return configBuilders;

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=392581&r1=392580&r2=392581&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
 Sat Apr  8 11:56:07 2006
@@ -80,7 +80,7 @@
         AssemblyModelContext modelContext = 
BootstrapHelper.getModelContext(classLoader);
 
         // Create a runtime context and start it
-        List<ContextFactoryBuilder> configBuilders = 
BootstrapHelper.getBuilders();
+        List<ContextFactoryBuilder> configBuilders = 
BootstrapHelper.getBuilders(monitorFactory);
         runtime = new RuntimeContextImpl(monitorFactory, configBuilders, new 
DefaultWireBuilder());
         runtime.start();
         monitor.started(runtime);

Added: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/annotation/Monitor.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/annotation/Monitor.java?rev=392581&view=auto
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/annotation/Monitor.java
 (added)
+++ 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/annotation/Monitor.java
 Sat Apr  8 11:56:07 2006
@@ -0,0 +1,32 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  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
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.tuscany.core.system.annotation;
+
+import java.lang.annotation.Target;
+import java.lang.annotation.Retention;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.RetentionPolicy;
+
+/**
+ * A system annotation to inject a monitor
+ *
+ * @version $Rev: 392146 $ $Date: 2006-04-06 18:11:28 -0700 (Thu, 06 Apr 2006) 
$
+ */
[EMAIL PROTECTED]( { ElementType.METHOD, ElementType.FIELD })
[EMAIL PROTECTED](RetentionPolicy.RUNTIME)
+public @interface Monitor {
+}

Propchange: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/annotation/Monitor.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/annotation/Monitor.java
------------------------------------------------------------------------------
    svn:keywords = Rev,Date

Modified: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/builder/SystemContextFactoryBuilder.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/builder/SystemContextFactoryBuilder.java?rev=392581&r1=392580&r2=392581&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/builder/SystemContextFactoryBuilder.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/builder/SystemContextFactoryBuilder.java
 Sat Apr  8 11:56:07 2006
@@ -42,6 +42,7 @@
 import org.apache.tuscany.core.runtime.RuntimeContext;
 import org.apache.tuscany.core.system.annotation.Autowire;
 import org.apache.tuscany.core.system.annotation.ParentContext;
+import org.apache.tuscany.core.system.annotation.Monitor;
 import org.apache.tuscany.core.system.assembly.SystemImplementation;
 import org.apache.tuscany.core.system.assembly.SystemModule;
 import org.apache.tuscany.core.system.config.SystemContextFactory;
@@ -80,8 +81,10 @@
  * @version $Rev$ $Date$
  */
 public class SystemContextFactoryBuilder implements ContextFactoryBuilder {
+    private final MonitorFactory monitorFactory;
 
-    public SystemContextFactoryBuilder() {
+    public SystemContextFactoryBuilder(MonitorFactory monitorFactory) {
+        this.monitorFactory = monitorFactory;
     }
 
     public void build(AssemblyModelObject modelObject) throws BuilderException 
{
@@ -220,6 +223,12 @@
                             contextFactory));
                     injectors.add(injector);
                 }
+                Monitor monitor = field.getAnnotation(Monitor.class);
+                if (monitor != null) {
+                    Object instance = 
monitorFactory.getMonitor(field.getType());
+                    Injector<?> injector = new FieldInjector(field, new 
SingletonObjectFactory(instance));
+                    injectors.add(injector);
+                }
             }
             for (Method method : methods) {
                 Init init = method.getAnnotation(Init.class);
@@ -277,6 +286,19 @@
                     }
                     Injector injector = new MethodInjector(method, new 
AutowireObjectFactory(paramType, autowire.required(),
                             contextFactory));
+                    injectors.add(injector);
+                }
+
+                Monitor monitor = method.getAnnotation(Monitor.class);
+                if (monitor != null) {
+                    if (method.getParameterTypes() == null || 
method.getParameterTypes().length != 1) {
+                        BuilderConfigException e = new 
BuilderConfigException("Monitor setter methods must take one parameter");
+                        e.setIdentifier(method.getName());
+                        throw e;
+                    }
+                    Class<?> paramType = method.getParameterTypes()[0];
+                    Object instance = monitorFactory.getMonitor(paramType);
+                    Injector<?> injector = new MethodInjector(method, new 
SingletonObjectFactory(instance));
                     injectors.add(injector);
                 }
             }

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=392581&r1=392580&r2=392581&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
 Sat Apr  8 11:56:07 2006
@@ -106,7 +106,7 @@
         AssemblyModelContext modelContext = 
BootstrapHelper.getModelContext(classLoader);
 
         // Create a runtime context and start it
-        List<ContextFactoryBuilder> configBuilders = 
BootstrapHelper.getBuilders();
+        List<ContextFactoryBuilder> configBuilders = 
BootstrapHelper.getBuilders(monitorFactory);
         runtime = new RuntimeContextImpl(monitorFactory, configBuilders, new 
DefaultWireBuilder());
         runtime.start();
 

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=392581&r1=392580&r2=392581&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
 Sat Apr  8 11:56:07 2006
@@ -342,7 +342,7 @@
      */
     public static List<ContextFactoryBuilder> createSystemBuilders() {
         List<ContextFactoryBuilder> builders = new 
ArrayList<ContextFactoryBuilder>();
-        builders.add((new SystemContextFactoryBuilder()));
+        builders.add((new SystemContextFactoryBuilder(null)));
         builders.add(new SystemEntryPointBuilder());
         builders.add(new SystemExternalServiceBuilder());
         return builders;

Added: 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/builder/MonitorInjectionTestCase.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/builder/MonitorInjectionTestCase.java?rev=392581&view=auto
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/builder/MonitorInjectionTestCase.java
 (added)
+++ 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/builder/MonitorInjectionTestCase.java
 Sat Apr  8 11:56:07 2006
@@ -0,0 +1,105 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  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
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.tuscany.core.system.builder;
+
+import junit.framework.Assert;
+import junit.framework.TestCase;
+
+import org.apache.tuscany.common.monitor.MonitorFactory;
+import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
+import org.apache.tuscany.core.builder.ContextFactory;
+import org.apache.tuscany.core.context.CompositeContext;
+import org.apache.tuscany.core.context.Context;
+import org.apache.tuscany.core.context.impl.CompositeContextImpl;
+import org.apache.tuscany.core.context.impl.EventContextImpl;
+import org.apache.tuscany.core.context.scope.DefaultScopeStrategy;
+import org.apache.tuscany.core.mock.MockConfigContext;
+import org.apache.tuscany.core.system.annotation.Monitor;
+import org.apache.tuscany.core.system.assembly.SystemAssemblyFactory;
+import org.apache.tuscany.core.system.assembly.impl.SystemAssemblyFactoryImpl;
+import org.apache.tuscany.model.assembly.Component;
+import org.apache.tuscany.model.assembly.Scope;
+
+/**
+ * @version $Rev$ $Date$
+ */
+public class MonitorInjectionTestCase extends TestCase {
+    private SystemContextFactoryBuilder builder;
+    private Component component;
+
+    public static interface TestService {
+    }
+
+    public static class TestComponent implements TestService {
+        @Monitor
+        Monitor1 monitor1;
+        Monitor2 monitor2;
+
+        @Monitor
+        public void setMonitor2(Monitor2 monitor2) {
+            this.monitor2 = monitor2;
+        }
+    }
+
+    public static interface Monitor1 {
+    }
+
+    public static interface Monitor2 {
+    }
+
+    public void testMonitorInjection() {
+        builder.build(component);
+        ContextFactory<?> contextFactory = (ContextFactory<?>) 
component.getComponentImplementation().getContextFactory();
+        Assert.assertNotNull(contextFactory);
+        contextFactory.prepare(createContext());
+        Context ctx = contextFactory.createContext();
+
+        ctx.start();
+        TestComponent instance = (TestComponent) ctx.getInstance(null);
+        assertSame(MONITOR1, instance.monitor1);
+        assertSame(MONITOR2, instance.monitor2);
+    }
+
+    protected void setUp() throws Exception {
+        super.setUp();
+        SystemAssemblyFactory factory = new SystemAssemblyFactoryImpl();
+        MockMonitorFactory monitorFactory = new MockMonitorFactory();
+        builder = new SystemContextFactoryBuilder(monitorFactory);
+        component = factory.createSystemComponent("test", TestService.class, 
TestComponent.class, Scope.MODULE);
+    }
+
+    private static final Monitor1 MONITOR1 = new Monitor1() {
+    };
+    private static final Monitor2 MONITOR2 = new Monitor2() {
+    };
+
+    public static class MockMonitorFactory implements MonitorFactory {
+        public <T> T getMonitor(Class<T> monitorInterface) {
+            if (Monitor1.class.equals(monitorInterface)) {
+                return monitorInterface.cast(MONITOR1);
+            } else if (Monitor2.class.equals(monitorInterface)) {
+                return monitorInterface.cast(MONITOR2);
+            } else {
+                throw new AssertionError();
+            }
+        }
+    }
+
+    private static CompositeContext createContext() {
+        return new CompositeContextImpl("test.parent", null, new 
DefaultScopeStrategy(), new EventContextImpl(), new MockConfigContext(null), 
new NullMonitorFactory());
+    }
+}

Propchange: 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/builder/MonitorInjectionTestCase.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/builder/MonitorInjectionTestCase.java
------------------------------------------------------------------------------
    svn:keywords = Rev,Date

Modified: 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/builder/SystemContextFactoryBuilderTestCase.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/builder/SystemContextFactoryBuilderTestCase.java?rev=392581&r1=392580&r2=392581&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/builder/SystemContextFactoryBuilderTestCase.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/builder/SystemContextFactoryBuilderTestCase.java
 Sat Apr  8 11:56:07 2006
@@ -40,7 +40,7 @@
     private SystemAssemblyFactory factory = new SystemAssemblyFactoryImpl();
 
     public void testComponentContextBuilder() throws Exception {
-        SystemContextFactoryBuilder builder = new 
SystemContextFactoryBuilder();
+        SystemContextFactoryBuilder builder = new 
SystemContextFactoryBuilder(null);
         Component component = factory.createSystemComponent("test", null, 
SystemComponentImpl.class, Scope.AGGREGATE);
 
         ConfiguredProperty cProp = factory.createConfiguredProperty();

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=392581&r1=392580&r2=392581&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
 Sat Apr  8 11:56:07 2006
@@ -77,8 +77,9 @@
         systemLoader = modelContext.getSystemResourceLoader();
 
         // Create and start the runtime
-        List<ContextFactoryBuilder> configBuilders = 
BootstrapHelper.getBuilders();
-        runtime = new RuntimeContextImpl(new NullMonitorFactory(), 
configBuilders, new DefaultWireBuilder());
+        NullMonitorFactory monitorFactory = new NullMonitorFactory();
+        List<ContextFactoryBuilder> configBuilders = 
BootstrapHelper.getBuilders(monitorFactory);
+        runtime = new RuntimeContextImpl(monitorFactory, configBuilders, new 
DefaultWireBuilder());
         runtime.start();
 
         // Load and start the system configuration

Modified: 
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/lifecycle/listener/RuntimeBootstrap.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/lifecycle/listener/RuntimeBootstrap.java?rev=392581&r1=392580&r2=392581&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/lifecycle/listener/RuntimeBootstrap.java
 (original)
+++ 
incubator/tuscany/java/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/lifecycle/listener/RuntimeBootstrap.java
 Sat Apr  8 11:56:07 2006
@@ -105,7 +105,7 @@
      */
     private List<ContextFactoryBuilder> createBuilders() {
         List<ContextFactoryBuilder> builders = new ArrayList();
-        builders.add((new SystemContextFactoryBuilder()));
+        builders.add((new SystemContextFactoryBuilder(null)));
         builders.add(new SystemEntryPointBuilder());
         builders.add(new SystemExternalServiceBuilder());
         return builders;


Reply via email to