Class BeanHelper
- java.lang.Object
-
- com.univocity.parsers.common.beans.BeanHelper
-
public final class BeanHelper extends java.lang.Object
Helper class used to obtain property descriptors from annotated java beans whose values are set via reflection. This class was implemented to eliminate direct compile-time dependency withIntrospector
and other classes in thejava.beans.*
package. This is required to allow Android developers to use univocity-parsers. Android developers should add have openbeans-1.0.jar in their classpath to be able to use univocity-parsers. When available, the classes from packagecom.googlecode.openbeans.*
will be used, otherwise the bean introspection classes classes fromjava.beans.*
package will be loaded. If everything fails, then the parser will try to manipulate fields in annotated java beans directly, instead of using their getters and setters.
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.reflect.Method
beanInfoMethod
private static java.util.Map<java.lang.Class<?>,java.lang.ref.WeakReference<PropertyWrapper[]>>
descriptors
private static PropertyWrapper[]
EMPTY
private static java.lang.Class<?>
introspectorClass
(package private) static java.lang.reflect.Method
PROPERTY_NAME_METHOD
(package private) static java.lang.reflect.Method
PROPERTY_READ_METHOD
(package private) static java.lang.reflect.Method
PROPERTY_WRITE_METHOD
private static java.lang.reflect.Method
propertyDescriptorMethod
-
Constructor Summary
Constructors Modifier Constructor Description private
BeanHelper()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description private static java.lang.Class<?>
findIntrospectorImplementationClass()
private static java.lang.reflect.Method
getBeanInfoMethod()
private static java.lang.reflect.Method
getMethod(java.lang.String methodName, java.lang.reflect.Method method, boolean fromComponentType)
static PropertyWrapper[]
getPropertyDescriptors(java.lang.Class<?> beanClass)
Returns the property descriptors of all properties available from a class
-
-
-
Field Detail
-
EMPTY
private static final PropertyWrapper[] EMPTY
-
introspectorClass
private static final java.lang.Class<?> introspectorClass
-
beanInfoMethod
private static final java.lang.reflect.Method beanInfoMethod
-
propertyDescriptorMethod
private static final java.lang.reflect.Method propertyDescriptorMethod
-
PROPERTY_WRITE_METHOD
static java.lang.reflect.Method PROPERTY_WRITE_METHOD
-
PROPERTY_READ_METHOD
static java.lang.reflect.Method PROPERTY_READ_METHOD
-
PROPERTY_NAME_METHOD
static java.lang.reflect.Method PROPERTY_NAME_METHOD
-
descriptors
private static final java.util.Map<java.lang.Class<?>,java.lang.ref.WeakReference<PropertyWrapper[]>> descriptors
-
-
Method Detail
-
getPropertyDescriptors
public static PropertyWrapper[] getPropertyDescriptors(java.lang.Class<?> beanClass)
Returns the property descriptors of all properties available from a class- Parameters:
beanClass
- the class whose property descriptors should be returned- Returns:
- an array of all property descriptors of the given class. Might be empty.
-
findIntrospectorImplementationClass
private static java.lang.Class<?> findIntrospectorImplementationClass()
-
getBeanInfoMethod
private static java.lang.reflect.Method getBeanInfoMethod()
-
getMethod
private static java.lang.reflect.Method getMethod(java.lang.String methodName, java.lang.reflect.Method method, boolean fromComponentType)
-
-