Class LocaleBeanUtils
Utility methods for populating JavaBeans properties via reflection in a locale-dependent manner.
The implementations for these methods are provided by LocaleBeanUtilsBean
. For more details see LocaleBeanUtilsBean
.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected static Object
Converts the specified value to the required type.protected static Object
Converts the specified value to the required type using the specified conversion pattern.protected static Class<?>
definePropertyType
(Object target, String name, String propName) Calculate the property type.static boolean
Gets whether the pattern is localized or not.static Locale
Gets the locale used when no locale is passed.static String
getIndexedProperty
(Object bean, String name) Gets the value of the specified locale-sensitive indexed property of the specified bean, as a String using the default conversion pattern of the correspondingLocaleConverter
.static String
getIndexedProperty
(Object bean, String name, int index) Return the value of the specified locale-sensitive indexed property of the specified bean, as a String using the default conversion pattern of the correspondingLocaleConverter
.static String
getIndexedProperty
(Object bean, String name, int index, String pattern) Return the value of the specified locale-sensitive indexed property of the specified bean, as a String using the specified conversion pattern.static String
getIndexedProperty
(Object bean, String name, String pattern) Return the value of the specified locale-sensitive indexed property of the specified bean, as a String.static String
getMappedProperty
(Object bean, String name) Return the value of the specified locale-sensitive mapped property of the specified bean, as a String using the default conversion pattern of the correspondingLocaleConverter
.static String
getMappedProperty
(Object bean, String name, String key) Return the value of the specified mapped locale-sensitive property of the specified bean, as a String The key is specified as a method parameter and must *not* be included in the property name expression.static String
getMappedProperty
(Object bean, String name, String key, String pattern) Return the value of the specified mapped locale-sensitive property of the specified bean, as a String using the specified conversion pattern.static String
getMappedPropertyLocale
(Object bean, String name, String pattern) Return the value of the specified locale-sensitive mapped property of the specified bean, as a String using the specified pattern.static String
getNestedProperty
(Object bean, String name) Return the value of the (possibly nested) locale-sensitive property of the specified name.static String
getNestedProperty
(Object bean, String name, String pattern) Return the value of the (possibly nested) locale-sensitive property of the specified name, for the specified bean, as a String using the specified pattern.static String
getProperty
(Object bean, String name) Return the value of the specified locale-sensitive property of the specified bean.static String
getProperty
(Object bean, String name, String pattern) Return the value of the specified locale-sensitive property of the specified bean.static String
getSimpleProperty
(Object bean, String name) Return the value of the specified simple locale-sensitive property of the specified bean, converted to a String using the default conversion pattern of the correspondingLocaleConverter
.static String
getSimpleProperty
(Object bean, String name, String pattern) Return the value of the specified simple locale-sensitive property of the specified bean, converted to a String using the specified conversion pattern.protected static void
invokeSetter
(Object target, String propName, String key, int index, Object newValue) Invoke the setter method.static void
setApplyLocalized
(boolean newApplyLocalized) Sets whether the pattern is localized or not.static void
setDefaultLocale
(Locale locale) Sets the locale used when no locale is passed.static void
setProperty
(Object bean, String name, Object value) Set the specified locale-sensitive property value, performing type conversions as required to conform to the type of the destination property using the default conversion pattern of the correspondingLocaleConverter
.static void
setProperty
(Object bean, String name, Object value, String pattern) Set the specified locale-sensitive property value, performing type conversions as required to conform to the type of the destination property using the specified conversion pattern.Methods inherited from class org.apache.commons.beanutils2.BeanUtils
cloneBean, copyProperties, copyProperty, createCache, describe, getArrayProperty, populate
-
Constructor Details
-
LocaleBeanUtils
public LocaleBeanUtils()
-
-
Method Details
-
convert
Converts the specified value to the required type.
For more details see
LocaleBeanUtilsBean
- Parameters:
type
- The Java type of target propertyindex
- The indexed subscript value (if any)value
- The value to be converted- Returns:
- The converted value
- See Also:
-
convert
Converts the specified value to the required type using the specified conversion pattern.
For more details see
LocaleBeanUtilsBean
- Parameters:
type
- The Java type of target propertyindex
- The indexed subscript value (if any)value
- The value to be convertedpattern
- The conversion pattern- Returns:
- The converted value
- See Also:
-
definePropertyType
protected static Class<?> definePropertyType(Object target, String name, String propName) throws IllegalAccessException, InvocationTargetException Calculate the property type.
For more details see
LocaleBeanUtilsBean
- Parameters:
target
- The beanname
- The property namepropName
- The Simple name of target property- Returns:
- The property's type
- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exception- See Also:
-
getApplyLocalized
Gets whether the pattern is localized or not.
For more details see
LocaleBeanUtilsBean
- Returns:
true
if pattern is localized, otherwisefalse
- See Also:
-
getDefaultLocale
Gets the locale used when no locale is passed.
For more details see
LocaleBeanUtilsBean
- Returns:
- the default locale
- See Also:
-
getIndexedProperty
public static String getIndexedProperty(Object bean, String name) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Gets the value of the specified locale-sensitive indexed property of the specified bean, as a String using the default conversion pattern of the correspondingLocaleConverter
.For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean whose property is to be extractedname
-propertyname[index]
of the property value to be extracted- Returns:
- The indexed property's value, converted to a String
- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exceptionNoSuchMethodException
- if an accessor method for this property cannot be found- See Also:
-
getIndexedProperty
public static String getIndexedProperty(Object bean, String name, int index) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified locale-sensitive indexed property of the specified bean, as a String using the default conversion pattern of the corresponding
LocaleConverter
.For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean whose property is to be extractedname
- Simple property name of the property value to be extractedindex
- Index of the property value to be extracted- Returns:
- The indexed property's value, converted to a String
- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exceptionNoSuchMethodException
- if an accessor method for this property cannot be found- See Also:
-
getIndexedProperty
public static String getIndexedProperty(Object bean, String name, int index, String pattern) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified locale-sensitive indexed property of the specified bean, as a String using the specified conversion pattern.
For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean whose property is to be extractedname
- Simple property name of the property value to be extractedindex
- Index of the property value to be extractedpattern
- The conversion pattern- Returns:
- The indexed property's value, converted to a String
- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exceptionNoSuchMethodException
- if an accessor method for this property cannot be found- See Also:
-
getIndexedProperty
public static String getIndexedProperty(Object bean, String name, String pattern) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified locale-sensitive indexed property of the specified bean, as a String.
For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean whose property is to be extractedname
-propertyname[index]
of the property value to be extractedpattern
- The conversion pattern- Returns:
- The indexed property's value, converted to a String
- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exceptionNoSuchMethodException
- if an accessor method for this property cannot be found- See Also:
-
getMappedProperty
public static String getMappedProperty(Object bean, String name) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified locale-sensitive mapped property of the specified bean, as a String using the default conversion pattern of the corresponding
LocaleConverter
.For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean whose property is to be extractedname
-propertyname(index)
of the property value to be extracted- Returns:
- The mapped property's value, converted to a String
- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exceptionNoSuchMethodException
- if an accessor method for this property cannot be found- See Also:
-
getMappedProperty
public static String getMappedProperty(Object bean, String name, String key) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified mapped locale-sensitive property of the specified bean, as a String The key is specified as a method parameter and must *not* be included in the property name expression.
For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean whose property is to be extractedname
- Simple property name of the property value to be extractedkey
- Lookup key of the property value to be extracted- Returns:
- The mapped property's value, converted to a String
- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exceptionNoSuchMethodException
- if an accessor method for this property cannot be found- See Also:
-
getMappedProperty
public static String getMappedProperty(Object bean, String name, String key, String pattern) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified mapped locale-sensitive property of the specified bean, as a String using the specified conversion pattern.
For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean whose property is to be extractedname
- Simple property name of the property value to be extractedkey
- Lookup key of the property value to be extractedpattern
- The conversion pattern- Returns:
- The mapped property's value, converted to a String
- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exceptionNoSuchMethodException
- if an accessor method for this property cannot be found- See Also:
-
getMappedPropertyLocale
public static String getMappedPropertyLocale(Object bean, String name, String pattern) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified locale-sensitive mapped property of the specified bean, as a String using the specified pattern.
For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean whose property is to be extractedname
-propertyname(index)
of the property value to be extractedpattern
- The conversion pattern- Returns:
- The mapped property's value, converted to a String
- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exceptionNoSuchMethodException
- if an accessor method for this property cannot be found- See Also:
-
getNestedProperty
public static String getNestedProperty(Object bean, String name) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the (possibly nested) locale-sensitive property of the specified name.
For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean whose property is to be extractedname
- Possibly nested name of the property to be extracted- Returns:
- The nested property's value, converted to a String
- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exceptionNoSuchMethodException
- if an accessor method for this property cannot be found- See Also:
-
getNestedProperty
public static String getNestedProperty(Object bean, String name, String pattern) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the (possibly nested) locale-sensitive property of the specified name, for the specified bean, as a String using the specified pattern.
For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean whose property is to be extractedname
- Possibly nested name of the property to be extractedpattern
- The conversion pattern- Returns:
- The nested property's value, converted to a String
- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exceptionNoSuchMethodException
- if an accessor method for this property cannot be found- See Also:
-
getProperty
public static String getProperty(Object bean, String name) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified locale-sensitive property of the specified bean.
For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean whose property is to be extractedname
- Possibly indexed and/or nested name of the property to be extracted- Returns:
- The property's value, converted to a String
- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exceptionNoSuchMethodException
- if an accessor method for this property cannot be found- See Also:
-
getProperty
public static String getProperty(Object bean, String name, String pattern) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified locale-sensitive property of the specified bean.
For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean whose property is to be extractedname
- Possibly indexed and/or nested name of the property to be extractedpattern
- The conversion pattern- Returns:
- The nested property's value, converted to a String
- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exceptionNoSuchMethodException
- if an accessor method for this property cannot be found- See Also:
-
getSimpleProperty
public static String getSimpleProperty(Object bean, String name) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified simple locale-sensitive property of the specified bean, converted to a String using the default conversion pattern of the corresponding
LocaleConverter
.For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean whose property is to be extractedname
- Name of the property to be extracted- Returns:
- The property's value, converted to a String
- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exceptionNoSuchMethodException
- if an accessor method for this property cannot be found- See Also:
-
getSimpleProperty
public static String getSimpleProperty(Object bean, String name, String pattern) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException Return the value of the specified simple locale-sensitive property of the specified bean, converted to a String using the specified conversion pattern.
For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean whose property is to be extractedname
- Name of the property to be extractedpattern
- The conversion pattern- Returns:
- The property's value, converted to a String
- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exceptionNoSuchMethodException
- if an accessor method for this property cannot be found- See Also:
-
invokeSetter
protected static void invokeSetter(Object target, String propName, String key, int index, Object newValue) throws IllegalAccessException, InvocationTargetException Invoke the setter method.
For more details see
LocaleBeanUtilsBean
- Parameters:
target
- The beanpropName
- The Simple name of target propertykey
- The Mapped key value (if any)index
- The indexed subscript value (if any)newValue
- The value to be set- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exception- See Also:
-
setApplyLocalized
Sets whether the pattern is localized or not.
For more details see
LocaleBeanUtilsBean
- Parameters:
newApplyLocalized
-true
if pattern is localized, otherwisefalse
- See Also:
-
setDefaultLocale
Sets the locale used when no locale is passed.
For more details see
LocaleBeanUtilsBean
- Parameters:
locale
- the default locale- See Also:
-
setProperty
public static void setProperty(Object bean, String name, Object value) throws IllegalAccessException, InvocationTargetException Set the specified locale-sensitive property value, performing type conversions as required to conform to the type of the destination property using the default conversion pattern of the corresponding
LocaleConverter
.For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean on which setting is to be performedname
- Property name (can be nested/indexed/mapped/combo)value
- Value to be set- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exception- See Also:
-
setProperty
public static void setProperty(Object bean, String name, Object value, String pattern) throws IllegalAccessException, InvocationTargetException Set the specified locale-sensitive property value, performing type conversions as required to conform to the type of the destination property using the specified conversion pattern.
For more details see
LocaleBeanUtilsBean
- Parameters:
bean
- Bean on which setting is to be performedname
- Property name (can be nested/indexed/mapped/combo)value
- Value to be setpattern
- The conversion pattern- Throws:
IllegalAccessException
- if the caller does not have access to the property accessor methodInvocationTargetException
- if the property accessor method throws an exception- See Also:
-