Index: src/java/org/apache/avalon/phoenix/components/application/LifecycleHelper.java
===================================================================
RCS file: /home/cvspublic/jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/components/application/LifecycleHelper.java,v
retrieving revision 1.22
diff -u -r1.22 LifecycleHelper.java
--- src/java/org/apache/avalon/phoenix/components/application/LifecycleHelper.java	11 Dec 2001 10:13:33 -0000	1.22
+++ src/java/org/apache/avalon/phoenix/components/application/LifecycleHelper.java	8 Jan 2002 16:27:40 -0000
@@ -26,6 +26,9 @@
 import org.apache.avalon.framework.logger.LogKitLogger;
 import org.apache.avalon.framework.logger.Loggable;
 import org.apache.avalon.framework.logger.Logger;
+import org.apache.avalon.framework.parameters.Parameters;
+import org.apache.avalon.framework.parameters.Parameterizable;
+import org.apache.avalon.framework.parameters.ParameterException;
 import org.apache.avalon.phoenix.Block;
 import org.apache.avalon.phoenix.BlockContext;
 import org.apache.avalon.phoenix.BlockEvent;
@@ -56,11 +59,12 @@
     private final static int STAGE_CONTEXT = 2;
     private final static int STAGE_COMPOSE = 3;
     private final static int STAGE_CONFIG = 4;
-    private final static int STAGE_INIT = 5;
-    private final static int STAGE_START = 6;
-    private final static int STAGE_STOP = 7;
-    private final static int STAGE_DISPOSE = 8;
-    private final static int STAGE_DESTROY = 9;
+    private final static int STAGE_PARAMETER = 5;
+    private final static int STAGE_INIT = 6;
+    private final static int STAGE_START = 7;
+    private final static int STAGE_STOP = 8;
+    private final static int STAGE_DISPOSE = 9;
+    private final static int STAGE_DESTROY = 10;
 
     //Constants to designate type of component
     private final static int TYPE_BLOCK = 0;
@@ -189,6 +193,16 @@
                 notice( name, stage );
                 final Configuration configuration = getConfiguration( name, TYPE_BLOCK );
                 ( (Configurable)block ).configure( configuration );
+            }
+
+            //Parameterizing stage
+            stage = STAGE_PARAMETER;
+            if( block instanceof Parameterizable )
+            {
+                notice( name, stage );
+                final Parameters parameters = Parameters.fromConfiguration( getConfiguration( name, TYPE_BLOCK ) );
+                parameters.makeReadOnly();
+                ( (Parameterizable)block ).parameterize( parameters );
             }
 
             //Initialize stage
Index: src/java/org/apache/avalon/phoenix/components/application/Resources.properties
===================================================================
RCS file: /home/cvspublic/jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/components/application/Resources.properties,v
retrieving revision 1.17
diff -u -r1.17 Resources.properties
--- src/java/org/apache/avalon/phoenix/components/application/Resources.properties	9 Nov 2001 21:14:30 -0000	1.17
+++ src/java/org/apache/avalon/phoenix/components/application/Resources.properties	8 Jan 2002 16:27:40 -0000
@@ -7,9 +7,9 @@
 
 missing-configuration={0,choice,0#Block|1#BlockListener} named "{1}" implements Configurable, but has no corresponding in config.xml
 
-lifecycle-stage.notice=Block named "{0}" is passing through the {1,choice,0#Creation|1#Logger initialization|2#Contextualization|3#Composing|4#Configuration|5#Initialization|6#Starting|7#Stopping|8#Disposing|9#Destruction} stage.
+lifecycle-stage.notice=Block named "{0}" is passing through the {1,choice,0#Creation|1#Logger initialization|2#Contextualization|3#Composing|4#Configuration|5#Parameterizing|6#Initialization|7#Starting|8#Stopping|9#Disposing|10#Destruction} stage.
 
-lifecycle-fail.error=Block named "{0}" failed to pass through the {1,choice,0#Creation|1#Logger initialization|2#Contextualization|3#Composing|4#Configuration|5#Initialization|6#Starting|7#Stopping|8#Disposing|9#Destruction} stage. (Reason: {2}).
+lifecycle-fail.error=Block named "{0}" failed to pass through the {1,choice,0#Creation|1#Logger initialization|2#Contextualization|3#Composing|4#Configuration|5#Parameterizing|6#Initialization|7#Starting|8#Stopping|9#Disposing|10#Destruction} stage. (Reason: {2}).
 
 #BlockContext Messages
 context.warn.threadpool=Warning: Accessing ThreadPools via BlockContext.getThreadPool()\nor BlockContext.getDefaultThreadPool() is a deprecated feature\nand developers should instead use a ThreadManager Block to access\nThreadPools.

