org.apache.commons.configuration
Class PropertyConverter

java.lang.Object
  extended byorg.apache.commons.configuration.PropertyConverter

public final class PropertyConverter
extends Object

A utility class to convert the configuration properties into any type.

Since:
1.1
Version:
$Revision: 662269 $, $Date: 2008-06-01 21:30:02 +0200 (So, 01 Jun 2008) $
Author:
Emmanuel Bourg

Method Summary
static String escapeDelimiters(String s, char delimiter)
          Escapes the delimiters that might be contained in the given string.
static Object interpolate(Object value, AbstractConfiguration config)
          Performs interpolation of the specified value.
static List split(String s, char delimiter)
          Split a string on the specified delimiter always trimming the elements.
static List split(String s, char delimiter, boolean trim)
          Split a string on the specified delimiter.
static BigDecimal toBigDecimal(Object value)
          Convert the specified object into a BigDecimal.
static BigInteger toBigInteger(Object value)
          Convert the specified object into a BigInteger.
static Boolean toBoolean(Object value)
          Convert the specified object into a Boolean.
static Byte toByte(Object value)
          Convert the specified object into a Byte.
static Calendar toCalendar(Object value, String format)
          Convert the specified object into a Calendar.
static Color toColor(Object value)
          Convert the specified object into a Color.
static Date toDate(Object value, String format)
          Convert the specified object into a Date.
static Double toDouble(Object value)
          Convert the specified object into a Double.
static Float toFloat(Object value)
          Convert the specified object into a Float.
static Integer toInteger(Object value)
          Convert the specified object into an Integer.
static Iterator toIterator(Object value, char delimiter)
          Return an iterator over the simple values of a composite value.
static Locale toLocale(Object value)
          Convert the specified object into a Locale.
static Long toLong(Object value)
          Convert the specified object into a Long.
static Short toShort(Object value)
          Convert the specified object into a Short.
static URL toURL(Object value)
          Convert the specified object into an URL.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

toBoolean

public static Boolean toBoolean(Object value)
                         throws ConversionException
Convert the specified object into a Boolean. Internally the org.apache.commons.lang.BooleanUtils class from the Commons Lang project is used to perform this conversion. This class accepts some more tokens for the boolean value of true, e.g. yes and on. Please refer to the documentation of this class for more details.

Parameters:
value - the value to convert
Returns:
the converted value
Throws:
ConversionException - thrown if the value cannot be converted to a boolean

toByte

public static Byte toByte(Object value)
                   throws ConversionException
Convert the specified object into a Byte.

Parameters:
value - the value to convert
Returns:
the converted value
Throws:
ConversionException - thrown if the value cannot be converted to a byte

toShort

public static Short toShort(Object value)
                     throws ConversionException
Convert the specified object into a Short.

Parameters:
value - the value to convert
Returns:
the converted value
Throws:
ConversionException - thrown if the value cannot be converted to a short

toInteger

public static Integer toInteger(Object value)
                         throws ConversionException
Convert the specified object into an Integer.

Parameters:
value - the value to convert
Returns:
the converted value
Throws:
ConversionException - thrown if the value cannot be converted to an integer

toLong

public static Long toLong(Object value)
                   throws ConversionException
Convert the specified object into a Long.

Parameters:
value - the value to convert
Returns:
the converted value
Throws:
ConversionException - thrown if the value cannot be converted to a Long

toFloat

public static Float toFloat(Object value)
                     throws ConversionException
Convert the specified object into a Float.

Parameters:
value - the value to convert
Returns:
the converted value
Throws:
ConversionException - thrown if the value cannot be converted to a Float

toDouble

public static Double toDouble(Object value)
                       throws ConversionException
Convert the specified object into a Double.

Parameters:
value - the value to convert
Returns:
the converted value
Throws:
ConversionException - thrown if the value cannot be converted to a Double

toBigInteger

public static BigInteger toBigInteger(Object value)
                               throws ConversionException
Convert the specified object into a BigInteger.

Parameters:
value - the value to convert
Returns:
the converted value
Throws:
ConversionException - thrown if the value cannot be converted to a BigInteger

toBigDecimal

public static BigDecimal toBigDecimal(Object value)
                               throws ConversionException
Convert the specified object into a BigDecimal.

Parameters:
value - the value to convert
Returns:
the converted value
Throws:
ConversionException - thrown if the value cannot be converted to a BigDecimal

toURL

public static URL toURL(Object value)
                 throws ConversionException
Convert the specified object into an URL.

Parameters:
value - the value to convert
Returns:
the converted value
Throws:
ConversionException - thrown if the value cannot be converted to an URL

toLocale

public static Locale toLocale(Object value)
                       throws ConversionException
Convert the specified object into a Locale.

Parameters:
value - the value to convert
Returns:
the converted value
Throws:
ConversionException - thrown if the value cannot be converted to a Locale

split

public static List split(String s,
                         char delimiter,
                         boolean trim)
Split a string on the specified delimiter. To be removed when commons-lang has a better replacement available (Tokenizer?). todo: replace with a commons-lang equivalent

Parameters:
s - the string to split
delimiter - the delimiter
trim - a flag whether the single elements should be trimmed
Returns:
a list with the single tokens

split

public static List split(String s,
                         char delimiter)
Split a string on the specified delimiter always trimming the elements. This is a shortcut for split(s, delimiter, true).

Parameters:
s - the string to split
delimiter - the delimiter
Returns:
a list with the single tokens

escapeDelimiters

public static String escapeDelimiters(String s,
                                      char delimiter)
Escapes the delimiters that might be contained in the given string. This method ensures that list delimiter characters that are part of a property's value are correctly escaped when a configuration is saved to a file. Otherwise when loaded again the property will be treated as a list property. A single backslash will also be escaped.

Parameters:
s - the string with the value
delimiter - the list delimiter to use
Returns:
the correctly esaped string

toColor

public static Color toColor(Object value)
                     throws ConversionException
Convert the specified object into a Color. If the value is a String, the format allowed is (#)?[0-9A-F]{6}([0-9A-F]{2})?. Examples:

Parameters:
value - the value to convert
Returns:
the converted value
Throws:
ConversionException - thrown if the value cannot be converted to a Color

toDate

public static Date toDate(Object value,
                          String format)
                   throws ConversionException
Convert the specified object into a Date.

Parameters:
value - the value to convert
format - the DateFormat pattern to parse String values
Returns:
the converted value
Throws:
ConversionException - thrown if the value cannot be converted to a Calendar

toCalendar

public static Calendar toCalendar(Object value,
                                  String format)
                           throws ConversionException
Convert the specified object into a Calendar.

Parameters:
value - the value to convert
format - the DateFormat pattern to parse String values
Returns:
the converted value
Throws:
ConversionException - thrown if the value cannot be converted to a Calendar

toIterator

public static Iterator toIterator(Object value,
                                  char delimiter)
Return an iterator over the simple values of a composite value. The value specified is handled depending on its type:

Parameters:
value - the value to "split"
delimiter - the delimiter for String values
Returns:
an iterator for accessing the single values

interpolate

public static Object interpolate(Object value,
                                 AbstractConfiguration config)
Performs interpolation of the specified value. This method checks if the given value contains variables of the form ${...}. If this is the case, all occurrances will be substituted by their current values.

Parameters:
value - the value to be interpolated
config - the current configuration object
Returns:
the interpolated value


Copyright © 2001-2008 The Apache Software Foundation. All Rights Reserved.