You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by mi...@apache.org on 2002/01/10 20:02:46 UTC

cvs commit: jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/components/application Resources.properties LifecycleHelper.java

mirceatoma    02/01/10 11:02:46

  Modified:    src/java/org/apache/avalon/phoenix/components/application
                        Resources.properties LifecycleHelper.java
  Log:
  Add support for Parameterizable blocks.
  submitted by: Brian Olsen <br...@mmmanager.org>
  
  Revision  Changes    Path
  1.18      +2 -2      jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/components/application/Resources.properties
  
  Index: Resources.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/components/application/Resources.properties,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- Resources.properties	9 Nov 2001 21:14:30 -0000	1.17
  +++ Resources.properties	10 Jan 2002 19:02:46 -0000	1.18
  @@ -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.
  
  
  
  1.23      +19 -5     jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/components/application/LifecycleHelper.java
  
  Index: LifecycleHelper.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-phoenix/src/java/org/apache/avalon/phoenix/components/application/LifecycleHelper.java,v
  retrieving revision 1.22
  retrieving revision 1.23
  diff -u -r1.22 -r1.23
  --- LifecycleHelper.java	11 Dec 2001 10:13:33 -0000	1.22
  +++ LifecycleHelper.java	10 Jan 2002 19:02:46 -0000	1.23
  @@ -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
  
  
  

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>