Title: [waffle-scm] [907] sandbox/v2experiment/waffle-core/src/main/java/org/codehaus/waffle/context/pico: picoParameters more lazy

Diff

Modified: sandbox/v2experiment/examples/simple-example/src/main/java/org/codehaus/waffle/example/simple/SimpleExampleWebappComposer.java (906 => 907)

--- sandbox/v2experiment/examples/simple-example/src/main/java/org/codehaus/waffle/example/simple/SimpleExampleWebappComposer.java	2009-02-16 16:39:10 UTC (rev 906)
+++ sandbox/v2experiment/examples/simple-example/src/main/java/org/codehaus/waffle/example/simple/SimpleExampleWebappComposer.java	2009-02-16 17:18:36 UTC (rev 907)
@@ -36,7 +36,7 @@
         picoContainer.addComponent("automobile", AutomobileController.class);
         //validation for automobile controller done in the controller itself
         //uncomment registration of validator if you prefer to override it
-        //register("automobileValidator", AutomobileControllerValidator.class);
+        //picoContainer.addComponent("automobileValidator", AutomobileControllerValidator.class);
         picoContainer.addComponent("person", PersonController.class);
     }
 
@@ -47,7 +47,7 @@
         picoContainer.addComponent("uploader", RequestFileUploader.class);
         picoContainer.addComponent("upload", UploadController.class);
         picoContainer.addComponent("parameter_example", ParameterExampleController.class,
-        picoParameters("Mike", requestParameter("age", 30)));
+            picoParameters("Mike", requestParameter("age", 30)));
     }
 
 }

Modified: sandbox/v2experiment/waffle-core/src/main/java/org/codehaus/waffle/context/pico/WaffleWebappComposer.java (906 => 907)

--- sandbox/v2experiment/waffle-core/src/main/java/org/codehaus/waffle/context/pico/WaffleWebappComposer.java	2009-02-16 16:39:10 UTC (rev 906)
+++ sandbox/v2experiment/waffle-core/src/main/java/org/codehaus/waffle/context/pico/WaffleWebappComposer.java	2009-02-16 17:18:36 UTC (rev 907)
@@ -54,12 +54,15 @@
 /**
  * @author Michael Ward
  * @author Mauro Talevi
+ * @author Paul Hammant
  */
 public abstract class WaffleWebappComposer implements WebappComposer {
 
-    private ParameterResolver parameterResolver;
+    private MutablePicoContainer appContainer;
 
     public void composeApplication(MutablePicoContainer picoContainer, ServletContext servletContext) {
+        appContainer = picoContainer;
+
         picoContainer.addComponent(servletContext);
 
         // add all known components
@@ -87,8 +90,6 @@
         picoContainer.addComponent(ViewResolver.class, viewResolver());
         picoContainer.addComponent(ParameterResolver.class, parameterResolver());
 
-        parameterResolver = picoContainer.getComponent(ParameterResolver.class);
-
     }
 
     protected Class<? extends ActionMethodExecutor> actionMethodExecutor() {
@@ -199,7 +200,7 @@
 
         Parameter[] picoParameters = new Parameter[parameters.length];
         for (int i = 0; i < parameters.length; i++) {
-            picoParameters[i] = parameterResolver.resolve(parameters[i]);
+            picoParameters[i] = appContainer.getComponent(ParameterResolver.class).resolve(parameters[i]);
         }
         return picoParameters;
     }


To unsubscribe from this list please visit:

http://xircles.codehaus.org/manage_email

Reply via email to