org.apache.commons.beanutils
Class ConvertUtils

java.lang.Object
  |
  +--org.apache.commons.beanutils.ConvertUtils

public class ConvertUtils
extends java.lang.Object

Utility methods for converting String scalar values to objects of the specified Class, String arrays to arrays of the specified Class. The actual Converter instance to be used can be registered for each possible destination Class. Unless you override them, standard Converter instances are provided for all of the following destination Classes:

For backwards compatibility, the standard Converters for primitive types (and the corresponding wrapper classes) return a defined default value when a conversion error occurs. If you prefer to have a ConversionException thrown instead, replace the standard Converter instances with instances created with the zero-arguments constructor. For example, to cause the Converters for integers to throw an exception on conversion errors, you could do this:

   // No-args constructor gets the version that throws exceptions
   Converter myConverter =
    new org.apache.commons.beanutils.converter.IntegerConverter();
   ConvertUtils.register(myConverter, Integer.TYPE);    // Native type
   ConvertUtils.register(myConverter, Integer.class);   // Wrapper class
 

Version:
$Revision: 1.12 $ $Date: 2003/01/15 21:59:38 $
Author:
Craig R. McClanahan, Ralph Schaer, Chris Audley

Field Summary
private static org.apache.commons.collections.FastHashMap converters
          The set of Converters that can be used to convert Strings into objects of a specified Class, keyed by the destination Class.
private static java.lang.Boolean defaultBoolean
          Deprecated. Register replacement converters for Boolean.TYPE and Boolean.class instead
private static java.lang.Byte defaultByte
          Deprecated. Register replacement converters for Byte.TYPE and Byte.class instead
private static java.lang.Character defaultCharacter
          Deprecated. Register replacement converters for Character.TYPE and Character.class instead
private static java.lang.Double defaultDouble
          Deprecated. Register replacement converters for Double.TYPE and Double.class instead
private static java.lang.Float defaultFloat
          Deprecated. Register replacement converters for Float.TYPE and Float.class instead
private static java.lang.Integer defaultInteger
          Deprecated. Register replacement converters for Integer.TYPE and Integer.class instead
private static java.lang.Long defaultLong
          Deprecated. Register replacement converters for Long.TYPE and Long.class instead
private static java.lang.Short defaultShort
          Deprecated. Register replacement converters for Short.TYPE and Short.class instead
private static org.apache.commons.logging.Log log
          The Log instance for this class.
 
Constructor Summary
ConvertUtils()
           
 
Method Summary
static java.lang.String convert(java.lang.Object value)
          Convert the specified value into a String.
static java.lang.Object convert(java.lang.String[] values, java.lang.Class clazz)
          Convert an array of specified values to an array of objects of the specified class (if possible).
static java.lang.Object convert(java.lang.String value, java.lang.Class clazz)
          Convert the specified value to an object of the specified class (if possible).
static void deregister()
          Remove all registered Converters, and re-establish the standard Converters.
static void deregister(java.lang.Class clazz)
          Remove any registered Converter for the specified destination Class.
static boolean getDefaultBoolean()
           
static byte getDefaultByte()
           
static char getDefaultCharacter()
           
static double getDefaultDouble()
           
static float getDefaultFloat()
           
static int getDefaultInteger()
           
static long getDefaultLong()
           
static short getDefaultShort()
           
static Converter lookup(java.lang.Class clazz)
          Look up and return any registered Converter for the specified destination class; if there is no registered Converter, return null.
static void register(Converter converter, java.lang.Class clazz)
          Register a custom Converter for the specified destination Class, replacing any previously registered Converter.
static void setDefaultBoolean(boolean newDefaultBoolean)
           
static void setDefaultByte(byte newDefaultByte)
           
static void setDefaultCharacter(char newDefaultCharacter)
           
static void setDefaultDouble(double newDefaultDouble)
           
static void setDefaultFloat(float newDefaultFloat)
           
static void setDefaultInteger(int newDefaultInteger)
           
static void setDefaultLong(long newDefaultLong)
           
static void setDefaultShort(short newDefaultShort)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

defaultBoolean

private static java.lang.Boolean defaultBoolean
Deprecated. Register replacement converters for Boolean.TYPE and Boolean.class instead

The default value for Boolean conversions.


defaultByte

private static java.lang.Byte defaultByte
Deprecated. Register replacement converters for Byte.TYPE and Byte.class instead

The default value for Byte conversions.


defaultCharacter

private static java.lang.Character defaultCharacter
Deprecated. Register replacement converters for Character.TYPE and Character.class instead

The default value for Character conversions.


defaultDouble

private static java.lang.Double defaultDouble
Deprecated. Register replacement converters for Double.TYPE and Double.class instead

The default value for Double conversions.


defaultFloat

private static java.lang.Float defaultFloat
Deprecated. Register replacement converters for Float.TYPE and Float.class instead

The default value for Float conversions.


defaultInteger

private static java.lang.Integer defaultInteger
Deprecated. Register replacement converters for Integer.TYPE and Integer.class instead

The default value for Integer conversions.


defaultLong

private static java.lang.Long defaultLong
Deprecated. Register replacement converters for Long.TYPE and Long.class instead

The default value for Long conversions.


defaultShort

private static java.lang.Short defaultShort
Deprecated. Register replacement converters for Short.TYPE and Short.class instead

The default value for Short conversions.


converters

private static org.apache.commons.collections.FastHashMap converters
The set of Converters that can be used to convert Strings into objects of a specified Class, keyed by the destination Class.


log

private static org.apache.commons.logging.Log log
The Log instance for this class.

Constructor Detail

ConvertUtils

public ConvertUtils()
Method Detail

getDefaultBoolean

public static boolean getDefaultBoolean()

setDefaultBoolean

public static void setDefaultBoolean(boolean newDefaultBoolean)

getDefaultByte

public static byte getDefaultByte()

setDefaultByte

public static void setDefaultByte(byte newDefaultByte)

getDefaultCharacter

public static char getDefaultCharacter()

setDefaultCharacter

public static void setDefaultCharacter(char newDefaultCharacter)

getDefaultDouble

public static double getDefaultDouble()

setDefaultDouble

public static void setDefaultDouble(double newDefaultDouble)

getDefaultFloat

public static float getDefaultFloat()

setDefaultFloat

public static void setDefaultFloat(float newDefaultFloat)

getDefaultInteger

public static int getDefaultInteger()

setDefaultInteger

public static void setDefaultInteger(int newDefaultInteger)

getDefaultLong

public static long getDefaultLong()

setDefaultLong

public static void setDefaultLong(long newDefaultLong)

getDefaultShort

public static short getDefaultShort()

setDefaultShort

public static void setDefaultShort(short newDefaultShort)

convert

public static java.lang.String convert(java.lang.Object value)
Convert the specified value into a String. If the specified value is an array, the first element (converted to a String) will be returned. The registered Converter for the java.lang.String class will be used, which allows applications to customize Object->String conversions (the default implementation simply uses toString()).

Parameters:
value - Value to be converted (may be null)

convert

public static java.lang.Object convert(java.lang.String value,
                                       java.lang.Class clazz)
Convert the specified value to an object of the specified class (if possible). Otherwise, return a String representation of the value.

Parameters:
value - Value to be converted (may be null)
clazz - Java class to be converted to
Throws:
ConversionException - if thrown by an underlying Converter

convert

public static java.lang.Object convert(java.lang.String[] values,
                                       java.lang.Class clazz)
Convert an array of specified values to an array of objects of the specified class (if possible). If the specified Java class is itself an array class, this class will be the type of the returned value. Otherwise, an array will be constructed whose component type is the specified class.

Parameters:
clazz - Java array or element class to be converted to
Throws:
ConversionException - if thrown by an underlying Converter

deregister

public static void deregister()
Remove all registered Converters, and re-establish the standard Converters.


deregister

public static void deregister(java.lang.Class clazz)
Remove any registered Converter for the specified destination Class.

Parameters:
clazz - Class for which to remove a registered Converter

lookup

public static Converter lookup(java.lang.Class clazz)
Look up and return any registered Converter for the specified destination class; if there is no registered Converter, return null.

Parameters:
clazz - Class for which to return a registered Converter

register

public static void register(Converter converter,
                            java.lang.Class clazz)
Register a custom Converter for the specified destination Class, replacing any previously registered Converter.

Parameters:
converter - Converter to be registered
clazz - Destination class for conversions performed by this Converter


Copyright (c) 2001-2003 - Apache Software Foundation