proyal      2002/07/12 12:43:20

  Modified:    src/java/org/apache/avalon/framework/configuration
                        AbstractConfiguration.java
  Log:
  * Support alternate true/false values such as
    1/0, on/off, yes/no
   * Fixes 10562
  
  Revision  Changes    Path
  1.18      +22 -5     
jakarta-avalon/src/java/org/apache/avalon/framework/configuration/AbstractConfiguration.java
  
  Index: AbstractConfiguration.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon/src/java/org/apache/avalon/framework/configuration/AbstractConfiguration.java,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- AbstractConfiguration.java        26 Jun 2002 09:22:18 -0000      1.17
  +++ AbstractConfiguration.java        12 Jul 2002 19:43:20 -0000      1.18
  @@ -203,11 +203,12 @@
           throws ConfigurationException
       {
           final String value = getValue().trim();
  -        if( value.trim().equals( "true" ) )
  +
  +        if( isTrue( value ) )
           {
               return true;
           }
  -        else if( value.trim().equals( "false" ) )
  +        else if( isFalse( value ) )
           {
               return false;
           }
  @@ -443,11 +444,11 @@
       {
           final String value = getAttribute( name );
   
  -        if( value.equalsIgnoreCase( "true" ) )
  +        if( isTrue( value ) )
           {
               return true;
           }
  -        else if( value.equalsIgnoreCase( "false" ) )
  +        else if( isFalse( value ) )
           {
               return false;
           }
  @@ -457,6 +458,22 @@
                                                 "\" as a boolean in the attribute \"" 
+
                                                 name + "\" at " + getLocation() );
           }
  +    }
  +
  +    private boolean isTrue( final String value )
  +    {
  +        return value.equalsIgnoreCase( "true" )
  +          || value.equalsIgnoreCase( "yes" )
  +          || value.equalsIgnoreCase( "on" )
  +          || value.equalsIgnoreCase( "1" );
  +    }
  +
  +    private boolean isFalse( final String value )
  +    {
  +        return value.equalsIgnoreCase( "false" )
  +          || value.equalsIgnoreCase( "no" )
  +          || value.equalsIgnoreCase( "off" )
  +          || value.equalsIgnoreCase( "0" );
       }
   
       /**
  
  
  

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

Reply via email to