org.apache.commons.beanutils.converters
public abstract class AbstractConverter extends Object implements Converter
This implementation provides the basic structure for converting to/from a specified type optionally using a default value or throwing a ConversionException if a conversion error occurs.
Implementations should provide conversion to the specified
type and from the specified type to a String
value
by implementing the following methods:
convertToString(value)
- convert to a String
(default implementation uses the objects toString()
method).convertToType(Class, value)
- convert
to the specified typeSince: 1.8.0
Version: $Revision: 640131 $ $Date: 2008-03-23 02:10:31 +0000 (Sun, 23 Mar 2008) $
Constructor Summary | |
---|---|
AbstractConverter()
Construct a Converter that throws a
ConversionException if an error occurs. | |
AbstractConverter(Object defaultValue)
Construct a Converter that returns a default
value if an error occurs.
|
Method Summary | |
---|---|
Object | convert(Class type, Object value)
Convert the input object into an output object of the
specified type.
|
protected Object | convertArray(Object value)
Return the first element from an Array (or Collection)
or the value unchanged if not an Array (or Collection).
|
protected String | convertToString(Object value)
Convert the input object into a String.
|
protected abstract Object | convertToType(Class type, Object value)
Convert the input object into an output object of the
specified type.
|
protected Object | getDefault(Class type)
Return the default value for conversions to the specified
type. |
protected abstract Class | getDefaultType()
Return the default type this Converter handles.
|
protected Object | handleError(Class type, Object value, Throwable cause)
Handle Conversion Errors.
|
protected Object | handleMissing(Class type)
Handle missing values.
|
boolean | isUseDefault()
Indicates whether a default value will be returned or exception
thrown in the event of a conversion error.
|
protected void | setDefaultValue(Object defaultValue)
Set the default value, converting as required.
|
String | toString()
Provide a String representation of this converter.
|
ConversionException
if an error occurs.Parameters: defaultValue The default value to be returned if the value to be converted is missing or an error occurs converting the value.
Parameters: type Data type to which this value should be converted value The input value to be converted
Returns: The converted value.
Throws: ConversionException if conversion cannot be performed successfully and no default is specified.
Parameters: value The value to convert
Returns: The first element in an Array (or Collection) or the value unchanged if not an Array (or Collection)
N.B.This implementation simply uses the value's
toString()
method and should be overriden if a
more sophisticated mechanism for conversion to a String
is required.
Parameters: value The input value to be converted.
Returns: the converted String value.
Throws: Throwable if an error occurs converting to a String
Typical implementations will provide a minimum of
String --> type
conversion.
Parameters: type Data type to which this value should be converted. value The input value to be converted.
Returns: The converted value.
Throws: Throwable if an error occurs converting to the specified type
Parameters: type Data type to which this value should be converted.
Returns: The default value for the specified type.
Converter
handles.
Returns: The default type this Converter
handles.
If a default value has been specified then it is returned otherwise a ConversionException is thrown.
Parameters: type Data type to which this value should be converted. value The input value to be converted cause The exception thrown by the convert
method
Returns: The default value.
Throws: ConversionException if no default value has been specified for this Converter.
If a default value has been specified then it is returned otherwise a ConversionException is thrown.
Parameters: type Data type to which this value should be converted.
Returns: The default value.
Throws: ConversionException if no default value has been specified for this Converter.
Returns: true
if a default value will be returned for
conversion errors or false
if a ConversionException
will be thrown.
If the default value is different from the type the
Converter
handles, it will be converted
to the handled type.
Parameters: defaultValue The default value to be returned if the value to be converted is missing or an error occurs converting the value.
Throws: ConversionException if an error occurs converting the default value
Returns: A String representation of this converter