Title: [waffle-scm] [456] trunk/waffle-core/src/main/java/org/codehaus/waffle/context: updated PicoContextContainerFactory to be dependent on RegistrarMonitor so that the monitor can be passed on the Registrars

Diff

Modified: trunk/waffle-core/src/main/java/org/codehaus/waffle/context/AbstractContextContainerFactory.java (455 => 456)

--- trunk/waffle-core/src/main/java/org/codehaus/waffle/context/AbstractContextContainerFactory.java	2007-12-08 16:26:46 UTC (rev 455)
+++ trunk/waffle-core/src/main/java/org/codehaus/waffle/context/AbstractContextContainerFactory.java	2007-12-10 01:50:08 UTC (rev 456)
@@ -68,10 +68,6 @@
         applicationContextContainer.registerComponentInstance(servletContext);
         applicationContextContainer.registerComponentInstance(messageResources);
 
-        // TODO register monitors to application context from component registry
-        // ComponentRegistry componentRegistry = ServletContextHelper.getComponentRegistry(servletContext);
-        // applicationContextContainer.registerComponentInstance(componentRegistry.getRegistrarMonitor());
-
         buildApplicationLevelRegistry();
         applicationContextContainer.start();
         contextMonitor.applicationContextContainerStarted();

Modified: trunk/waffle-core/src/main/java/org/codehaus/waffle/context/pico/PicoContextContainerFactory.java (455 => 456)

--- trunk/waffle-core/src/main/java/org/codehaus/waffle/context/pico/PicoContextContainerFactory.java	2007-12-08 16:26:46 UTC (rev 455)
+++ trunk/waffle-core/src/main/java/org/codehaus/waffle/context/pico/PicoContextContainerFactory.java	2007-12-10 01:50:08 UTC (rev 456)
@@ -17,7 +17,6 @@
 import org.codehaus.waffle.i18n.MessageResources;
 import org.codehaus.waffle.monitor.ContextMonitor;
 import org.codehaus.waffle.monitor.RegistrarMonitor;
-import org.codehaus.waffle.monitor.SilentMonitor;
 import org.codehaus.waffle.registrar.Registrar;
 import org.codehaus.waffle.registrar.pico.PicoRegistrar;
 import org.picocontainer.ComponentMonitor;
@@ -37,9 +36,13 @@
 public class PicoContextContainerFactory extends AbstractContextContainerFactory {
     private final ComponentMonitor picoComponentMonitor = new NullComponentMonitor();
     private final LifecycleStrategy picoLifecycleStrategy = new PicoLifecycleStrategy(picoComponentMonitor);
+    private final RegistrarMonitor registrarMonitor;
 
-    public PicoContextContainerFactory(MessageResources messageResources, ContextMonitor contextMonitor) {
+    public PicoContextContainerFactory(MessageResources messageResources,
+                                       ContextMonitor contextMonitor,
+                                       RegistrarMonitor registrarMonitor) {
         super(messageResources, contextMonitor);
+        this.registrarMonitor = registrarMonitor;
     }
 
     protected ContextContainer buildApplicationContextContainer() {
@@ -78,10 +81,6 @@
     }
 
     protected Registrar createRegistrar(ContextContainer contextContainer) {
-        RegistrarMonitor registrarMonitor = contextContainer.getComponentInstanceOfType(RegistrarMonitor.class);
-        if ( registrarMonitor == null ){
-            registrarMonitor = new SilentMonitor();
-        }
         Registrar registrar = new PicoRegistrar((MutablePicoContainer) contextContainer.getDelegate(), registrarMonitor);
         getContextMonitor().registrarCreated(registrar, registrarMonitor);
         return registrar;

Modified: trunk/waffle-core/src/main/java/org/codehaus/waffle/context/pico/RubyAwarePicoContextContainerFactory.java (455 => 456)

--- trunk/waffle-core/src/main/java/org/codehaus/waffle/context/pico/RubyAwarePicoContextContainerFactory.java	2007-12-08 16:26:46 UTC (rev 455)
+++ trunk/waffle-core/src/main/java/org/codehaus/waffle/context/pico/RubyAwarePicoContextContainerFactory.java	2007-12-10 01:50:08 UTC (rev 456)
@@ -4,6 +4,7 @@
 import org.codehaus.waffle.context.ContextContainer;
 import org.codehaus.waffle.i18n.MessageResources;
 import org.codehaus.waffle.monitor.ContextMonitor;
+import org.codehaus.waffle.monitor.RegistrarMonitor;
 import org.jruby.Ruby;
 import org.picocontainer.MutablePicoContainer;
 
@@ -15,8 +16,10 @@
 
 public class RubyAwarePicoContextContainerFactory extends PicoContextContainerFactory {
 
-    public RubyAwarePicoContextContainerFactory(MessageResources messageResources, ContextMonitor contextMonitor) {
-        super(messageResources, contextMonitor);
+    public RubyAwarePicoContextContainerFactory(MessageResources messageResources,
+                                                ContextMonitor contextMonitor,
+                                                RegistrarMonitor registrarMonitor) {
+        super(messageResources, contextMonitor, registrarMonitor);
     }
 
     @Override

Modified: trunk/waffle-core/src/main/java/org/codehaus/waffle/controller/RubyControllerDefinitionFactory.java (455 => 456)

--- trunk/waffle-core/src/main/java/org/codehaus/waffle/controller/RubyControllerDefinitionFactory.java	2007-12-08 16:26:46 UTC (rev 455)
+++ trunk/waffle-core/src/main/java/org/codehaus/waffle/controller/RubyControllerDefinitionFactory.java	2007-12-10 01:50:08 UTC (rev 456)
@@ -1,10 +1,5 @@
 package org.codehaus.waffle.controller;
 
-import java.lang.reflect.Method;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
 import org.codehaus.waffle.WaffleException;
 import org.codehaus.waffle.action.MethodDefinition;
 import org.codehaus.waffle.action.MethodDefinitionFinder;
@@ -12,6 +7,10 @@
 import org.codehaus.waffle.monitor.ControllerMonitor;
 import org.jruby.runtime.builtin.IRubyObject;
 
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.lang.reflect.Method;
+
 public class RubyControllerDefinitionFactory extends ContextControllerDefinitionFactory {
     private final MethodNameResolver methodNameResolver;
     private static final Method executeMethod;
@@ -26,7 +25,8 @@
 
     public RubyControllerDefinitionFactory(MethodDefinitionFinder methodDefinitionFinder,
                                            ControllerNameResolver controllerNameResolver,
-                                           MethodNameResolver methodNameResolver, ControllerMonitor controllerMonitor) {
+                                           MethodNameResolver methodNameResolver,
+                                           ControllerMonitor controllerMonitor) {
         super(methodDefinitionFinder, controllerNameResolver, controllerMonitor);
         this.methodNameResolver = methodNameResolver;
     }

Modified: trunk/waffle-core/src/test/java/org/codehaus/waffle/context/pico/PicoContextContainerFactoryTest.java (455 => 456)

--- trunk/waffle-core/src/test/java/org/codehaus/waffle/context/pico/PicoContextContainerFactoryTest.java	2007-12-08 16:26:46 UTC (rev 455)
+++ trunk/waffle-core/src/test/java/org/codehaus/waffle/context/pico/PicoContextContainerFactoryTest.java	2007-12-10 01:50:08 UTC (rev 456)
@@ -62,7 +62,8 @@
 
     @Test
     public void canBuildEachContextLevelContainer() {
-        final PicoContextContainerFactory contextContainerFactory = new PicoContextContainerFactory(messageResources, new SilentMonitor());
+        final PicoContextContainerFactory contextContainerFactory
+                = new PicoContextContainerFactory(messageResources, new SilentMonitor(), new SilentMonitor());
 
         // Mock ServletContext
         final ServletContext servletContext = mockery.mock(ServletContext.class);
@@ -132,7 +133,8 @@
 
     @Test
     public void canInitializeContext() {
-        final AbstractContextContainerFactory contextContainerFactory = new PicoContextContainerFactory(messageResources, new SilentMonitor());
+        final AbstractContextContainerFactory contextContainerFactory
+                = new PicoContextContainerFactory(messageResources, new SilentMonitor(), new SilentMonitor());
 
         // Mock ServletContext
         final ServletContext servletContext = mockery.mock(ServletContext.class);
@@ -230,7 +232,8 @@
 
     @Test
     public void canBuildApplicationContextContainerWithLifecycle() {
-        PicoContextContainerFactory contextContainerFactory = new PicoContextContainerFactory(messageResources, new SilentMonitor());
+        PicoContextContainerFactory contextContainerFactory
+                = new PicoContextContainerFactory(messageResources, new SilentMonitor(), new SilentMonitor());
         ContextContainer container = contextContainerFactory.buildApplicationContextContainer();
 
         StubStartable startable = new StubStartable();
@@ -249,7 +252,8 @@
 
     @Test
     public void canBuildSessionLevelContainerWithLifecycle() {
-        final PicoContextContainerFactory contextContainerFactory = new PicoContextContainerFactory(messageResources, new SilentMonitor());
+        final PicoContextContainerFactory contextContainerFactory
+                = new PicoContextContainerFactory(messageResources, new SilentMonitor(), new SilentMonitor());
 
         // Mock ServletContext
         final ServletContext servletContext = mockery.mock(ServletContext.class);
@@ -280,7 +284,8 @@
 
     @Test
     public void canBuildRequestLevelContainerWithLifecycle() {
-        final PicoContextContainerFactory contextContainerFactory = new PicoContextContainerFactory(messageResources, new SilentMonitor());
+        final PicoContextContainerFactory contextContainerFactory
+                = new PicoContextContainerFactory(messageResources, new SilentMonitor(), new SilentMonitor());
 
         // Mock ServletContext
         final ServletContext servletContext = mockery.mock(ServletContext.class);

Modified: trunk/waffle-core/src/test/java/org/codehaus/waffle/context/pico/RubyAwarePicoContextContainerFactoryTest.java (455 => 456)

--- trunk/waffle-core/src/test/java/org/codehaus/waffle/context/pico/RubyAwarePicoContextContainerFactoryTest.java	2007-12-08 16:26:46 UTC (rev 455)
+++ trunk/waffle-core/src/test/java/org/codehaus/waffle/context/pico/RubyAwarePicoContextContainerFactoryTest.java	2007-12-10 01:50:08 UTC (rev 456)
@@ -16,7 +16,8 @@
 
     @Test
     public void canBuildApplicationContextContainer() {
-        RubyAwarePicoContextContainerFactory factory = new RubyAwarePicoContextContainerFactory(null, new SilentMonitor());
+        RubyAwarePicoContextContainerFactory factory
+                = new RubyAwarePicoContextContainerFactory(null, new SilentMonitor(), new SilentMonitor());
         ContextContainer contextContainer = factory.buildApplicationContextContainer();
         PicoContainer picoContainer = (MutablePicoContainer)contextContainer.getDelegate();
         Ruby runtime = (Ruby) picoContainer.getComponentInstance(Ruby.class);


To unsubscribe from this list please visit:

http://xircles.codehaus.org/manage_email

Reply via email to