bloritsch    01/03/11 12:57:34

  Modified:    src/java/org/apache/avalon Parameters.java
  Log:
  Added method to handle the new Configuration stuff.  Makes upgrading Cocoon much 
easier
  
  Revision  Changes    Path
  1.3       +33 -0     jakarta-avalon/src/java/org/apache/avalon/Parameters.java
  
  Index: Parameters.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon/src/java/org/apache/avalon/Parameters.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Parameters.java   2001/02/26 07:35:58     1.2
  +++ Parameters.java   2001/03/11 20:57:34     1.3
  @@ -296,4 +296,37 @@
   
           return param;
       }
  +
  +    /**
  +     * Create a <code>Parameters</code> object from a <code>Configuration</code>
  +     * object.
  +     */
  +    public static Parameters fromConfiguration( final 
org.apache.avalon.configuration.Configuration configuration  )
  +        throws org.apache.avalon.configuration.ConfigurationException
  +    {
  +        if( null == configuration )
  +        {
  +            throw new org.apache.avalon.configuration.ConfigurationException( "You 
cannot convert to parameters with " +
  +                                              "a null Configuration");
  +        }
  +
  +        final org.apache.avalon.configuration.Configuration[] parameters = 
configuration.getChildren("parameter");
  +        final Parameters param = new Parameters();
  +
  +        for (int i = 0; i <  parameters.length; i++ )
  +        {
  +            try
  +            {
  +                final String name = parameters[i].getAttribute( "name" );
  +                final String value = parameters[i].getAttribute( "value" );
  +                param.setParameter( name, value );
  +            }
  +            catch( final Exception e )
  +            {
  +                throw new org.apache.avalon.configuration.ConfigurationException( 
"Cannot process Configurable", e );
  +            }
  +        }
  +
  +        return param;
  +    }
   }
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to