You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by do...@apache.org on 2002/07/16 03:09:49 UTC

cvs commit: jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib ObjectToStringConverter.java StringToBigDecimalConverter.java StringToBigIntegerConverter.java StringToBooleanConverter.java StringToByteConverter.java StringToClassConverter.java StringToDateConverter.java StringToDoubleConverter.java StringToFloatConverter.java StringToIntegerConverter.java StringToLongConverter.java StringToShortConverter.java StringToTimeConverter.java StringToTimestampConverter.java StringToURLConverter.java

donaldp     2002/07/15 18:09:49

  Modified:    converter/src/java/org/apache/excalibur/converter
                        AbstractConverter.java
               converter/src/java/org/apache/excalibur/converter/lib
                        ObjectToStringConverter.java
                        StringToBigDecimalConverter.java
                        StringToBigIntegerConverter.java
                        StringToBooleanConverter.java
                        StringToByteConverter.java
                        StringToClassConverter.java
                        StringToDateConverter.java
                        StringToDoubleConverter.java
                        StringToFloatConverter.java
                        StringToIntegerConverter.java
                        StringToLongConverter.java
                        StringToShortConverter.java
                        StringToTimeConverter.java
                        StringToTimestampConverter.java
                        StringToURLConverter.java
  Log:
  Incorporate default value handling for converters.
  Essentially this allows converters to be instantiated
  with a default value which will be returned when otherwise
  a ConverterException woudl be raised.
  
  Revision  Changes    Path
  1.3       +33 -9     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/AbstractConverter.java
  
  Index: AbstractConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/AbstractConverter.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- AbstractConverter.java	16 Jul 2002 00:41:35 -0000	1.2
  +++ AbstractConverter.java	16 Jul 2002 01:09:49 -0000	1.3
  @@ -24,6 +24,7 @@
   
       private final Class m_source;
       private final Class m_destination;
  +    private final Object m_defaultValue;
   
       /**
        * Constructor for a converter between types source and destination
  @@ -31,10 +32,26 @@
        * @param source the source type
        * @param destination the destination type
        */
  -    public AbstractConverter( final Class source, final Class destination )
  +    protected AbstractConverter( final Class source, final Class destination )
  +    {
  +        this( source, destination, null );
  +    }
  +
  +    /**
  +     * Constructor for a converter between types source and destination
  +     * with a default value.
  +     *
  +     * @param source the source type
  +     * @param destination the destination type
  +     * @param defaultValue the default value
  +     */
  +    protected AbstractConverter( final Class source,
  +                                 final Class destination,
  +                                 final Object defaultValue )
       {
           m_source = source;
           m_destination = destination;
  +        m_defaultValue = defaultValue;
       }
   
       /**
  @@ -75,13 +92,20 @@
       protected final Object noConvert( final Object value, final Throwable throwable )
           throws ConverterException
       {
  -        final String message =
  -            REZ.getString( "no-convert.error",
  -                           m_source.getName(),
  -                           m_destination.getName(),
  -                           value,
  -                           throwable );
  -        throw new ConverterException( message );
  +        if( null != m_defaultValue )
  +        {
  +            return m_defaultValue;
  +        }
  +        else
  +        {
  +            final String message =
  +                REZ.getString( "no-convert.error",
  +                               m_source.getName(),
  +                               m_destination.getName(),
  +                               value,
  +                               throwable );
  +            throw new ConverterException( message );
  +        }
       }
   
       /**
  
  
  
  1.2       +15 -3     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/ObjectToStringConverter.java
  
  Index: ObjectToStringConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/ObjectToStringConverter.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ObjectToStringConverter.java	27 Apr 2002 05:23:01 -0000	1.1
  +++ ObjectToStringConverter.java	16 Jul 2002 01:09:49 -0000	1.2
  @@ -27,11 +27,23 @@
        */
       public ObjectToStringConverter()
       {
  -        super( Object.class, String.class );
  +        this( null );
       }
   
       /**
  -     * Converts a object to a string.
  +     * Construct the converter with a default value.
  +     * If the default value is non-null, it will be returned if unable
  +     * to convert object to correct type.
  +     *
  +     * @param defaultValue the default value
  +     */
  +    public ObjectToStringConverter( final String defaultValue )
  +    {
  +        super( Object.class, String.class, defaultValue );
  +    }
  +
  +    /**
  +     * Converts an {@link Object} to a {@link String}.
        *
        * @param original the original object to convert
        * @param context the context in which to convert object (unused)
  
  
  
  1.3       +15 -3     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToBigDecimalConverter.java
  
  Index: StringToBigDecimalConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToBigDecimalConverter.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- StringToBigDecimalConverter.java	16 Jul 2002 00:41:35 -0000	1.2
  +++ StringToBigDecimalConverter.java	16 Jul 2002 01:09:49 -0000	1.3
  @@ -12,7 +12,7 @@
   import org.apache.excalibur.converter.ConverterException;
   
   /**
  - * String to {@link BigDecimal} converter.
  + * {@link String} to {@link BigDecimal} converter.
    *
    * @author <a href="mailto:peter@apache.org">Peter Donald</a>
    * @ant.converter source="java.lang.String" destination="java.math.BigDecimal"
  @@ -25,11 +25,23 @@
        */
       public StringToBigDecimalConverter()
       {
  -        super( String.class, BigDecimal.class );
  +        this( null );
       }
   
       /**
  -     * Converts a string to a BigDecimal.
  +     * Construct the converter with a default value.
  +     * If the default value is non-null, it will be returned if unable
  +     * to convert object to correct type.
  +     *
  +     * @param defaultValue the default value
  +     */
  +    public StringToBigDecimalConverter( final BigDecimal defaultValue )
  +    {
  +        super( String.class, BigDecimal.class, defaultValue );
  +    }
  +
  +    /**
  +     * Converts a {@link String} to a {@link BigDecimal}.
        *
        * @param object the original object to convert
        * @param context the context in which to convert object (unused)
  
  
  
  1.3       +15 -3     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToBigIntegerConverter.java
  
  Index: StringToBigIntegerConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToBigIntegerConverter.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- StringToBigIntegerConverter.java	16 Jul 2002 00:41:35 -0000	1.2
  +++ StringToBigIntegerConverter.java	16 Jul 2002 01:09:49 -0000	1.3
  @@ -12,7 +12,7 @@
   import org.apache.excalibur.converter.ConverterException;
   
   /**
  - * String to {@link BigInteger} converter.
  + * {@link String} to {@link BigInteger} converter.
    *
    * @author <a href="mailto:peter@apache.org">Peter Donald</a>
    * @ant.converter source="java.lang.String" destination="java.math.BigInteger"
  @@ -25,11 +25,23 @@
        */
       public StringToBigIntegerConverter()
       {
  -        super( String.class, BigInteger.class );
  +        this( null );
       }
   
       /**
  -     * Converts a string to a BigInteger.
  +     * Construct the converter with a default value.
  +     * If the default value is non-null, it will be returned if unable
  +     * to convert object to correct type.
  +     *
  +     * @param defaultValue the default value
  +     */
  +    public StringToBigIntegerConverter( final BigInteger defaultValue )
  +    {
  +        super( String.class, BigInteger.class, defaultValue );
  +    }
  +
  +    /**
  +     * Converts a {@link String} to a {@link BigInteger}.
        *
        * @param object the original object to convert
        * @param context the context in which to convert object (unused)
  
  
  
  1.5       +16 -3     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToBooleanConverter.java
  
  Index: StringToBooleanConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToBooleanConverter.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- StringToBooleanConverter.java	16 Jul 2002 00:41:35 -0000	1.4
  +++ StringToBooleanConverter.java	16 Jul 2002 01:09:49 -0000	1.5
  @@ -9,9 +9,10 @@
   
   import org.apache.excalibur.converter.AbstractConverter;
   import org.apache.excalibur.converter.ConverterException;
  +import java.math.BigInteger;
   
   /**
  - * String to boolean converter
  + * {@link String} to {@link Boolean} converter
    *
    * @author <a href="mailto:peter@apache.org">Peter Donald</a>
    * @ant.converter source="java.lang.String" destination="java.lang.Boolean"
  @@ -24,11 +25,23 @@
        */
       public StringToBooleanConverter()
       {
  -        super( String.class, Boolean.class );
  +        this( null );
       }
   
       /**
  -     * Converts a string to a boolean.
  +     * Construct the converter with a default value.
  +     * If the default value is non-null, it will be returned if unable
  +     * to convert object to correct type.
  +     *
  +     * @param defaultValue the default value
  +     */
  +    public StringToBooleanConverter( final Boolean defaultValue )
  +    {
  +        super( String.class, Boolean.class, defaultValue );
  +    }
  +
  +    /**
  +     * Converts a {@link String} to a {@link Boolean}.
        *
        * @param object the original object to convert
        * @param context the context in which to convert object (unused)
  
  
  
  1.4       +15 -3     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToByteConverter.java
  
  Index: StringToByteConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToByteConverter.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- StringToByteConverter.java	16 Jul 2002 00:41:35 -0000	1.3
  +++ StringToByteConverter.java	16 Jul 2002 01:09:49 -0000	1.4
  @@ -11,7 +11,7 @@
   import org.apache.excalibur.converter.ConverterException;
   
   /**
  - * String to byte converter
  + * {@link String} to {@link Byte} converter
    *
    * <p>Hexadecimal numbers begin with 0x, Octal numbers begin with 0o and binary
    * numbers begin with 0b, all other values are assumed to be decimal.</p>
  @@ -27,11 +27,23 @@
        */
       public StringToByteConverter()
       {
  -        super( String.class, Byte.class );
  +        this( null );
       }
   
       /**
  -     * Converts a string to a byte.
  +     * Construct the converter with a default value.
  +     * If the default value is non-null, it will be returned if unable
  +     * to convert object to correct type.
  +     *
  +     * @param defaultValue the default value
  +     */
  +    public StringToByteConverter( final Byte defaultValue )
  +    {
  +        super( String.class, Byte.class, defaultValue );
  +    }
  +
  +    /**
  +     * Converts a {@link String} to a {@link Byte}.
        *
        * @param object the original object to convert
        * @param context the context in which to convert object (unused)
  
  
  
  1.4       +15 -3     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToClassConverter.java
  
  Index: StringToClassConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToClassConverter.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- StringToClassConverter.java	16 Jul 2002 00:41:35 -0000	1.3
  +++ StringToClassConverter.java	16 Jul 2002 01:09:49 -0000	1.4
  @@ -11,7 +11,7 @@
   import org.apache.excalibur.converter.ConverterException;
   
   /**
  - * String to class converter
  + * {@link String} to class converter
    *
    * @author <a href="mailto:peter@apache.org">Peter Donald</a>
    * @ant.converter source="java.lang.String" destination="java.lang.Class"
  @@ -24,11 +24,23 @@
        */
       public StringToClassConverter()
       {
  -        super( String.class, Class.class );
  +        this( null );
       }
   
       /**
  -     * Converts a string to a class.
  +     * Construct the converter with a default value.
  +     * If the default value is non-null, it will be returned if unable
  +     * to convert object to correct type.
  +     *
  +     * @param defaultValue the default value
  +     */
  +    public StringToClassConverter( final Class defaultValue )
  +    {
  +        super( String.class, Class.class, defaultValue );
  +    }
  +
  +    /**
  +     * Converts a {@link String} to a {@link Class}.
        *
        * @param object the original object to convert
        * @param context the context in which to convert object (unused)
  
  
  
  1.5       +15 -3     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToDateConverter.java
  
  Index: StringToDateConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToDateConverter.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- StringToDateConverter.java	16 Jul 2002 00:41:35 -0000	1.4
  +++ StringToDateConverter.java	16 Jul 2002 01:09:49 -0000	1.5
  @@ -13,7 +13,7 @@
   import org.apache.excalibur.converter.ConverterException;
   
   /**
  - * String to date converter.
  + * {@link String} to date converter.
    *
    * <p>Parses a date according to the same rules as the Date.parse() method. In
    * particular it recognizes the IETF standard date syntax:</p>
  @@ -31,11 +31,23 @@
        */
       public StringToDateConverter()
       {
  -        super( String.class, Date.class );
  +        this( null );
       }
   
       /**
  -     * Converts a string to a date.
  +     * Construct the converter with a default value.
  +     * If the default value is non-null, it will be returned if unable
  +     * to convert object to correct type.
  +     *
  +     * @param defaultValue the default value
  +     */
  +    public StringToDateConverter( final Date defaultValue )
  +    {
  +        super( String.class, Date.class, defaultValue );
  +    }
  +
  +    /**
  +     * Converts a {@link String} to a {@link Date}.
        *
        * @param object the original object to convert
        * @param context the context in which to convert object (unused)
  
  
  
  1.4       +15 -3     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToDoubleConverter.java
  
  Index: StringToDoubleConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToDoubleConverter.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- StringToDoubleConverter.java	16 Jul 2002 00:41:35 -0000	1.3
  +++ StringToDoubleConverter.java	16 Jul 2002 01:09:49 -0000	1.4
  @@ -11,7 +11,7 @@
   import org.apache.excalibur.converter.ConverterException;
   
   /**
  - * String to double converter
  + * {@link String} to {@link Double} converter
    *
    * @author <a href="mailto:peter@apache.org">Peter Donald</a>
    * @ant.converter source="java.lang.String" destination="java.lang.Double"
  @@ -24,11 +24,23 @@
        */
       public StringToDoubleConverter()
       {
  -        super( String.class, Double.class );
  +        this( null );
       }
   
       /**
  -     * Converts a string to a double.
  +     * Construct the converter with a default value.
  +     * If the default value is non-null, it will be returned if unable
  +     * to convert object to correct type.
  +     *
  +     * @param defaultValue the default value
  +     */
  +    public StringToDoubleConverter( final Double defaultValue )
  +    {
  +        super( String.class, Double.class, defaultValue );
  +    }
  +
  +    /**
  +     * Converts a {@link String} to a {@link Double}.
        *
        * @param object the original object to convert
        * @param context the context in which to convert object (unused)
  
  
  
  1.4       +16 -3     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToFloatConverter.java
  
  Index: StringToFloatConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToFloatConverter.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- StringToFloatConverter.java	16 Jul 2002 00:41:35 -0000	1.3
  +++ StringToFloatConverter.java	16 Jul 2002 01:09:49 -0000	1.4
  @@ -9,9 +9,10 @@
   
   import org.apache.excalibur.converter.AbstractConverter;
   import org.apache.excalibur.converter.ConverterException;
  +import java.util.Date;
   
   /**
  - * String to float converter
  + * {@link String} to float converter
    *
    * @author <a href="mailto:peter@apache.org">Peter Donald</a>
    * @ant.converter source="java.lang.String" destination="java.lang.Float"
  @@ -24,11 +25,23 @@
        */
       public StringToFloatConverter()
       {
  -        super( String.class, Float.class );
  +        this( null );
       }
   
       /**
  -     * Converts a string to a float.
  +     * Construct the converter with a default value.
  +     * If the default value is non-null, it will be returned if unable
  +     * to convert object to correct type.
  +     *
  +     * @param defaultValue the default value
  +     */
  +    public StringToFloatConverter( final Float defaultValue )
  +    {
  +        super( String.class, Float.class, defaultValue );
  +    }
  +
  +    /**
  +     * Converts a {@link String} to a {@link Float}.
        *
        * @param object the original object to convert
        * @param context the context in which to convert object (unused)
  
  
  
  1.4       +15 -3     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToIntegerConverter.java
  
  Index: StringToIntegerConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToIntegerConverter.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- StringToIntegerConverter.java	16 Jul 2002 00:41:35 -0000	1.3
  +++ StringToIntegerConverter.java	16 Jul 2002 01:09:49 -0000	1.4
  @@ -11,7 +11,7 @@
   import org.apache.excalibur.converter.ConverterException;
   
   /**
  - * String to integer converter.
  + * {@link String} to {@link Integer} converter.
    *
    * <p>Hexadecimal numbers begin with 0x, Octal numbers begin with 0o and binary
    * numbers begin with 0b, all other values are assumed to be decimal.</p>
  @@ -27,11 +27,23 @@
        */
       public StringToIntegerConverter()
       {
  -        super( String.class, Integer.class );
  +        this( null );
       }
   
       /**
  -     * Converts a string to an Integer.
  +     * Construct the converter with a default value.
  +     * If the default value is non-null, it will be returned if unable
  +     * to convert object to correct type.
  +     *
  +     * @param defaultValue the default value
  +     */
  +    public StringToIntegerConverter( final Integer defaultValue )
  +    {
  +        super( String.class, Integer.class, defaultValue );
  +    }
  +
  +    /**
  +     * Converts a {@link String} to an {@link Integer}.
        *
        * @param object the original object to convert
        * @param context the context in which to convert object (unused)
  
  
  
  1.4       +15 -3     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToLongConverter.java
  
  Index: StringToLongConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToLongConverter.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- StringToLongConverter.java	16 Jul 2002 00:41:35 -0000	1.3
  +++ StringToLongConverter.java	16 Jul 2002 01:09:49 -0000	1.4
  @@ -11,7 +11,7 @@
   import org.apache.excalibur.converter.ConverterException;
   
   /**
  - * String to long converter
  + * {@link String} to {@link Long} converter
    *
    * <p>Hexadecimal numbers begin with 0x, Octal numbers begin with 0o and binary
    * numbers begin with 0b, all other values are assumed to be decimal.</p>
  @@ -27,11 +27,23 @@
        */
       public StringToLongConverter()
       {
  -        super( String.class, Long.class );
  +        this( null );
       }
   
       /**
  -     * Converts a string to a long.
  +     * Construct the converter with a default value.
  +     * If the default value is non-null, it will be returned if unable
  +     * to convert object to correct type.
  +     *
  +     * @param defaultValue the default value
  +     */
  +    public StringToLongConverter( final Long defaultValue )
  +    {
  +        super( String.class, Long.class, defaultValue );
  +    }
  +
  +    /**
  +     * Converts a {@link String} to a {@link Long}.
        *
        * @param object the original object to convert
        * @param context the context in which to convert object (unused)
  
  
  
  1.4       +15 -3     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToShortConverter.java
  
  Index: StringToShortConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToShortConverter.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- StringToShortConverter.java	16 Jul 2002 00:41:35 -0000	1.3
  +++ StringToShortConverter.java	16 Jul 2002 01:09:49 -0000	1.4
  @@ -11,7 +11,7 @@
   import org.apache.excalibur.converter.ConverterException;
   
   /**
  - * String to short converter
  + * {@link String} to {@link Short} converter.
    *
    * <p>Hexadecimal numbers begin with 0x, Octal numbers begin with 0o and binary
    * numbers begin with 0b, all other values are assumed to be decimal.</p>
  @@ -27,11 +27,23 @@
        */
       public StringToShortConverter()
       {
  -        super( String.class, Short.class );
  +        this( null );
       }
   
       /**
  -     * Converts a string to a short.
  +     * Construct the converter with a default value.
  +     * If the default value is non-null, it will be returned if unable
  +     * to convert object to correct type.
  +     *
  +     * @param defaultValue the default value
  +     */
  +    public StringToShortConverter( final Short defaultValue )
  +    {
  +        super( String.class, Short.class, defaultValue );
  +    }
  +
  +    /**
  +     * Converts a {@link String} to a {@link Short}.
        *
        * @param object the original object to convert
        * @param context the context in which to convert object (unused)
  
  
  
  1.3       +15 -3     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToTimeConverter.java
  
  Index: StringToTimeConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToTimeConverter.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- StringToTimeConverter.java	16 Jul 2002 00:41:35 -0000	1.2
  +++ StringToTimeConverter.java	16 Jul 2002 01:09:49 -0000	1.3
  @@ -12,7 +12,7 @@
   import org.apache.excalibur.converter.ConverterException;
   
   /**
  - * String to {@link Time} converter.
  + * {@link String} to {@link Time} converter.
    *
    * @author <a href="mailto:peter@apache.org">Peter Donald</a>
    * @ant.converter source="java.lang.String" destination="java.sql.Time"
  @@ -25,11 +25,23 @@
        */
       public StringToTimeConverter()
       {
  -        super( String.class, Time.class );
  +        this( null );
       }
   
       /**
  -     * Converts a string to a BigInteger.
  +     * Construct the converter with a default value.
  +     * If the default value is non-null, it will be returned if unable
  +     * to convert object to correct type.
  +     *
  +     * @param defaultValue the default value
  +     */
  +    public StringToTimeConverter( final Time defaultValue )
  +    {
  +        super( String.class, Time.class, defaultValue );
  +    }
  +
  +    /**
  +     * Converts a {@link String} to a {@link Time}.
        *
        * @param object the original object to convert
        * @param context the context in which to convert object (unused)
  
  
  
  1.3       +16 -6     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToTimestampConverter.java
  
  Index: StringToTimestampConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToTimestampConverter.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- StringToTimestampConverter.java	16 Jul 2002 00:41:35 -0000	1.2
  +++ StringToTimestampConverter.java	16 Jul 2002 01:09:49 -0000	1.3
  @@ -7,14 +7,12 @@
    */
   package org.apache.excalibur.converter.lib;
   
  -import org.apache.avalon.excalibur.i18n.ResourceManager;
  -import org.apache.avalon.excalibur.i18n.Resources;
  +import java.sql.Timestamp;
   import org.apache.excalibur.converter.AbstractConverter;
   import org.apache.excalibur.converter.ConverterException;
  -import java.sql.Timestamp;
   
   /**
  - * String to {@link Timestamp} converter.
  + * {@link String} to {@link Timestamp} converter.
    *
    * @author <a href="mailto:peter@apache.org">Peter Donald</a>
    * @ant.converter source="java.lang.String" destination="java.sql.Time"
  @@ -27,11 +25,23 @@
        */
       public StringToTimestampConverter()
       {
  -        super( String.class, Timestamp.class );
  +        this( null );
  +    }
  +
  +    /**
  +     * Construct the converter with a default value.
  +     * If the default value is non-null, it will be returned if unable
  +     * to convert object to correct type.
  +     *
  +     * @param defaultValue the default value
  +     */
  +    public StringToTimestampConverter( final Timestamp defaultValue )
  +    {
  +        super( String.class, Timestamp.class, defaultValue );
       }
   
       /**
  -     * Converts a string to a Timestamp.
  +     * Converts a {@link String} to a {@link Timestamp}.
        *
        * @param object the original object to convert
        * @param context the context in which to convert object (unused)
  
  
  
  1.4       +15 -3     jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToURLConverter.java
  
  Index: StringToURLConverter.java
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-excalibur/converter/src/java/org/apache/excalibur/converter/lib/StringToURLConverter.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- StringToURLConverter.java	16 Jul 2002 00:41:35 -0000	1.3
  +++ StringToURLConverter.java	16 Jul 2002 01:09:49 -0000	1.4
  @@ -13,7 +13,7 @@
   import org.apache.excalibur.converter.ConverterException;
   
   /**
  - * String to url converter
  + * {@link String} to {@link URL} converter
    *
    * @author <a href="mailto:peter@apache.org">Peter Donald</a>
    * @ant.converter source="java.lang.String" destination="java.net.URL"
  @@ -26,11 +26,23 @@
        */
       public StringToURLConverter()
       {
  -        super( String.class, URL.class );
  +        this( null );
       }
   
       /**
  -     * Converts a string to a url.
  +     * Construct the converter with a default value.
  +     * If the default value is non-null, it will be returned if unable
  +     * to convert object to correct type.
  +     *
  +     * @param defaultValue the default value
  +     */
  +    public StringToURLConverter( final URL defaultValue )
  +    {
  +        super( String.class, URL.class, defaultValue );
  +    }
  +
  +    /**
  +     * Converts a {@link String} to a {@link URL}.
        *
        * @param object the original object to convert
        * @param context the context in which to convert object (unused)
  
  
  

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