Package org.apache.commons.beanutils.locale

## Class LocaleConvertUtilsBean

- java.lang.Object
- - org.apache.commons.beanutils.locale.LocaleConvertUtilsBean

    public class LocaleConvertUtilsBean
    extends java.lang.Object

Utility methods for converting locale-sensitive String scalar values to objects of the specified Class, String arrays to arrays of the specified Class and object to locale-sensitive String scalar value.

This class provides the implementations used by the static utility methods in `LocaleConvertUtils`.

The actual `LocaleConverter` instance to be used can be registered for each possible destination Class. Unless you override them, standard `LocaleConverter` instances are provided for all of the following destination Classes:

- java.lang.BigDecimal
- java.lang.BigInteger
- byte and java.lang.Byte
- double and java.lang.Double
- float and java.lang.Float
- int and java.lang.Integer
- long and java.lang.Long
- short and java.lang.Short
- java.lang.String
- java.sql.Date
- java.sql.Time
- java.sql.Timestamp

For backwards compatibility, the standard locale converters for primitive types (and the corresponding wrapper classes). If you prefer to have another `LocaleConverter` thrown instead, replace the standard `LocaleConverter` instances with ones created with the one of the appropriate constructors. It's important that `LocaleConverter` should be registered for the specified locale and Class (or primitive type).

Since:
  1.7
Version:
  $Id$

### Constructor Summary

Constructors
`LocaleConvertUtilsBean()` Makes the state by default (deregisters all converters for all locales) and then registers default locale converters.

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods
`java.lang.String` `convert​(java.lang.Object value)` Convert the specified locale-sensitive value into a String.
`java.lang.String` `convert​(java.lang.Object value, java.lang.String pattern)` Convert the specified locale-sensitive value into a String using the conversion pattern.
`java.lang.String` `convert​(java.lang.Object value, java.util.Locale locale, java.lang.String pattern)` Convert the specified locale-sensitive value into a String using the paticular convertion pattern.
`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) .
`java.lang.Object` `convert​(java.lang.String[] values, java.lang.Class<?> clazz, java.lang.String pattern)` Convert an array of specified values to an array of objects of the specified class (if possible) using the convertion pattern.
`java.lang.Object` `convert​(java.lang.String[] values, java.lang.Class<?> clazz, java.util.Locale locale, java.lang.String pattern)` Convert an array of specified values to an array of objects of the specified class (if possible) using the convertion pattern.
`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).
`java.lang.Object` `convert​(java.lang.String value, java.lang.Class<?> clazz, java.lang.String pattern)` Convert the specified value to an object of the specified class (if possible) using the convertion pattern.
`java.lang.Object` `convert​(java.lang.String value, java.lang.Class<?> clazz, java.util.Locale locale, java.lang.String pattern)` Convert the specified value to an object of the specified class (if possible) using the convertion pattern.
`protected org.apache.commons.collections.FastHashMap` `create​(java.util.Locale locale)` Deprecated. This method will be modified to return a Map in the next release.
`void` `deregister()` Remove any registered `LocaleConverter`.
`void` `deregister​(java.lang.Class<?> clazz, java.util.Locale locale)` Remove any registered `LocaleConverter` for the specified locale and Class.
`void` `deregister​(java.util.Locale locale)` Remove any registered `LocaleConverter` for the specified locale
`boolean` `getApplyLocalized()` getter for applyLocalized
`java.util.Locale` `getDefaultLocale()` getter for defaultLocale.
`static LocaleConvertUtilsBean` `getInstance()` Gets singleton instance.
`LocaleConverter` `lookup​(java.lang.Class<?> clazz, java.util.Locale locale)` Look up and return any registered `LocaleConverter` for the specified destination class and locale; if there is no registered Converter, return `null`.
`protected org.apache.commons.collections.FastHashMap` `lookup​(java.util.Locale locale)` Deprecated. This method will be modified to return a Map in the next release.
`void` `register​(LocaleConverter converter, java.lang.Class<?> clazz, java.util.Locale locale)` Register a custom `LocaleConverter` for the specified destination `Class`, replacing any previously registered converter.
`void` `setApplyLocalized​(boolean newApplyLocalized)` setter for applyLocalized
`void` `setDefaultLocale​(java.util.Locale locale)` setter for defaultLocale.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### LocaleConvertUtilsBean

    public LocaleConvertUtilsBean()

Makes the state by default (deregisters all converters for all locales) and then registers default locale converters.

### Method Detail

#### getInstance

    public static LocaleConvertUtilsBean getInstance()

Gets singleton instance. This is the same as the instance used by the default `LocaleBeanUtilsBean` singleton.

Returns:
  the singleton instance

#### getDefaultLocale

    public java.util.Locale getDefaultLocale()

getter for defaultLocale.

Returns:
  the default locale

#### setDefaultLocale

    public void setDefaultLocale​(java.util.Locale locale)

setter for defaultLocale.

Parameters:
  `locale` - the default locale

#### getApplyLocalized

    public boolean getApplyLocalized()

getter for applyLocalized

Returns:
  `true` if pattern is localized, otherwise `false`

#### setApplyLocalized

    public void setApplyLocalized​(boolean newApplyLocalized)

setter for applyLocalized

Parameters:
  `newApplyLocalized` - `true` if pattern is localized, otherwise `false`

#### convert

    public java.lang.String convert​(java.lang.Object value)

Convert the specified locale-sensitive value into a String.

Parameters:
  `value` - The Value to be converted
Returns:
  the converted value
Throws:
  `ConversionException` - if thrown by an underlying Converter

#### convert

    public java.lang.String convert​(java.lang.Object value,
                                    java.lang.String pattern)

Convert the specified locale-sensitive value into a String using the conversion pattern.

Parameters:
  `value` - The Value to be converted
  `pattern` - The convertion pattern
Returns:
  the converted value
Throws:
  `ConversionException` - if thrown by an underlying Converter

#### convert

    public java.lang.String convert​(java.lang.Object value,
                                    java.util.Locale locale,
                                    java.lang.String pattern)

Convert the specified locale-sensitive value into a String using the paticular convertion pattern.

Parameters:
  `value` - The Value to be converted
  `locale` - The locale
  `pattern` - The convertion pattern
Returns:
  the converted value
Throws:
  `ConversionException` - if thrown by an underlying Converter

#### convert

    public 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` - The String scalar value to be converted
  `clazz` - The Data type to which this value should be converted.
Returns:
  the converted value
Throws:
  `ConversionException` - if thrown by an underlying Converter

#### convert

    public java.lang.Object convert​(java.lang.String value,
                                    java.lang.Class<?> clazz,
                                    java.lang.String pattern)

Convert the specified value to an object of the specified class (if possible) using the convertion pattern. Otherwise, return a String representation of the value.

Parameters:
  `value` - The String scalar value to be converted
  `clazz` - The Data type to which this value should be converted.
  `pattern` - The convertion pattern
Returns:
  the converted value
Throws:
  `ConversionException` - if thrown by an underlying Converter

#### convert

    public java.lang.Object convert​(java.lang.String value,
                                    java.lang.Class<?> clazz,
                                    java.util.Locale locale,
                                    java.lang.String pattern)

Convert the specified value to an object of the specified class (if possible) using the convertion pattern. Otherwise, return a String representation of the value.

Parameters:
  `value` - The String scalar value to be converted
  `clazz` - The Data type to which this value should be converted.
  `locale` - The locale
  `pattern` - The convertion pattern
Returns:
  the converted value
Throws:
  `ConversionException` - if thrown by an underlying Converter

#### convert

    public java.lang.Object convert​(java.lang.String[] values,
                                    java.lang.Class<?> clazz,
                                    java.lang.String pattern)

Convert an array of specified values to an array of objects of the specified class (if possible) using the convertion pattern.

Parameters:
  `values` - Value to be converted (may be null)
  `clazz` - Java array or element class to be converted to
  `pattern` - The convertion pattern
Returns:
  the converted value
Throws:
  `ConversionException` - if thrown by an underlying Converter

#### convert

    public 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) .

Parameters:
  `values` - Value to be converted (may be null)
  `clazz` - Java array or element class to be converted to
Returns:
  the converted value
Throws:
  `ConversionException` - if thrown by an underlying Converter

#### convert

    public java.lang.Object convert​(java.lang.String[] values,
                                    java.lang.Class<?> clazz,
                                    java.util.Locale locale,
                                    java.lang.String pattern)

Convert an array of specified values to an array of objects of the specified class (if possible) using the convertion pattern.

Parameters:
  `values` - Value to be converted (may be null)
  `clazz` - Java array or element class to be converted to
  `locale` - The locale
  `pattern` - The convertion pattern
Returns:
  the converted value
Throws:
  `ConversionException` - if thrown by an underlying Converter

#### register

    public void register​(LocaleConverter converter,
                         java.lang.Class<?> clazz,
                         java.util.Locale locale)

Register a custom `LocaleConverter` for the specified destination `Class`, replacing any previously registered converter.

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

#### deregister

    public void deregister()

Remove any registered `LocaleConverter`.

#### deregister

    public void deregister​(java.util.Locale locale)

Remove any registered `LocaleConverter` for the specified locale

Parameters:
  `locale` - The locale

#### deregister

    public void deregister​(java.lang.Class<?> clazz,
                           java.util.Locale locale)

Remove any registered `LocaleConverter` for the specified locale and Class.

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

#### lookup

    public LocaleConverter lookup​(java.lang.Class<?> clazz,
                                  java.util.Locale locale)

Look up and return any registered `LocaleConverter` for the specified destination class and locale; if there is no registered Converter, return `null`.

Parameters:
  `clazz` - Class for which to return a registered Converter
  `locale` - The Locale
Returns:
  The registered locale Converter, if any

#### lookup

    @Deprecated
    protected org.apache.commons.collections.FastHashMap lookup​(java.util.Locale locale)

Deprecated.
This method will be modified to return a Map in the next release.
Look up and return any registered FastHashMap instance for the specified locale; if there is no registered one, return `null`.

Parameters:
  `locale` - The Locale
Returns:
  The FastHashMap instance contains the all `LocaleConverter` types for the specified locale.

#### create

    @Deprecated
    protected org.apache.commons.collections.FastHashMap create​(java.util.Locale locale)

Deprecated.
This method will be modified to return a Map in the next release.
Create all `LocaleConverter` types for specified locale.

Parameters:
  `locale` - The Locale
Returns:
  The FastHashMap instance contains the all `LocaleConverter` types for the specified locale.