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:

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
Author:
Yauheny Mikulski

Field Summary
private  boolean applyLocalized
          Indicate whether the pattern is localized or not
private  java.util.Locale defaultLocale
          The locale - default for convertion.
private  org.apache.commons.logging.Log log
          The Log instance for this class.
private  FastHashMap mapConverters
          Every entry of the mapConverters is: key = locale value = FastHashMap of converters for the certain locale.
 
Constructor Summary
LocaleConvertUtilsBean()
          Makes the state by default (deregisters all converters for all locales) and then registers default locale converters.
 
Method Summary
 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.util.Locale locale, java.lang.String pattern)
          Convert the specified locale-sensitive value into a String using the paticular convertion pattern.
 java.lang.String convert(java.lang.Object value, java.lang.String pattern)
          Convert the specified locale-sensitive value into a String using the 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.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[] 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 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.util.Locale locale, 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.lang.String pattern)
          Convert the specified value to an object of the specified class (if possible) using the convertion pattern.
protected  FastHashMap create(java.util.Locale locale)
          Create all LocaleConverter types for specified locale.
 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  FastHashMap lookup(java.util.Locale locale)
          Look up and return any registered FastHashMap instance for the specified locale; if there is no registered one, return null.
 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
 

Field Detail

defaultLocale

private java.util.Locale defaultLocale
The locale - default for convertion.


applyLocalized

private boolean applyLocalized
Indicate whether the pattern is localized or not


log

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


mapConverters

private FastHashMap mapConverters
Every entry of the mapConverters is: key = locale value = FastHashMap of converters for the certain locale.

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.


getDefaultLocale

public java.util.Locale getDefaultLocale()
getter for defaultLocale


setDefaultLocale

public void setDefaultLocale(java.util.Locale locale)
setter for defaultLocale


getApplyLocalized

public boolean getApplyLocalized()
getter for applyLocalized


setApplyLocalized

public void setApplyLocalized(boolean newApplyLocalized)
setter for applyLocalized


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
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 convertion pattern.

Parameters:
value - The Value to be converted
pattern - The convertion pattern
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
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.
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
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
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
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
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
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

lookup

protected FastHashMap lookup(java.util.Locale locale)
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

protected FastHashMap create(java.util.Locale locale)
Create all LocaleConverter types for specified locale.

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


Copyright (c) 2001-2004 - Apache Software Foundation