org.codehaus.plexus.util

Class ReflectionUtils


public final class ReflectionUtils
extends java.lang.Object

Version:
$Id: ReflectionUtils.java 5958 2007-02-28 10:29:55Z olamy $
Authors:
Michal Maczka
Jesse McConnell
Trygve Laugstøl

Method Summary

static Field
getFieldByNameIncludingSuperclasses(String fieldName, Class clazz)
static List
getFieldsIncludingSuperclasses(Class clazz)
static Method
getSetter(String fieldName, Class clazz)
Finds a setter in the given class for the given field.
static Class
getSetterType(Method method)
Returns the class of the argument to the setter.
static List
getSetters(Class clazz)
Finds all setters in the given class and super classes.
static Object
getValueIncludingSuperclasses(String variable, Object object)
Generates a map of the fields and values on a given object, also pulls from superclasses
static Map
getVariablesAndValuesIncludingSuperclasses(Object object)
Generates a map of the fields and values on a given object, also pulls from superclasses
static boolean
isSetter(Method method)
static void
setVariableValueInObject(Object object, String variable, Object value)
attempts to set the value to the variable in the object passed in

Method Details

getFieldByNameIncludingSuperclasses

public static Field getFieldByNameIncludingSuperclasses(String fieldName,
                                                        Class clazz)

getFieldsIncludingSuperclasses

public static List getFieldsIncludingSuperclasses(Class clazz)

getSetter

public static Method getSetter(String fieldName,
                               Class clazz)
Finds a setter in the given class for the given field. It searches interfaces and superclasses too.
Parameters:
fieldName - the name of the field (i.e. 'fooBar'); it will search for a method named 'setFooBar'.
clazz - The class to find the method in.
Returns:
null or the method found.

getSetterType

public static Class getSetterType(Method method)
Returns the class of the argument to the setter. Will throw an RuntimeException if the method isn't a setter.

getSetters

public static List getSetters(Class clazz)
Finds all setters in the given class and super classes.

getValueIncludingSuperclasses

public static Object getValueIncludingSuperclasses(String variable,
                                                   Object object)
            throws IllegalAccessException
Generates a map of the fields and values on a given object, also pulls from superclasses
Parameters:
object - the object to generate the list of fields from
Returns:
map containing the fields and their values

getVariablesAndValuesIncludingSuperclasses

public static Map getVariablesAndValuesIncludingSuperclasses(Object object)
            throws IllegalAccessException
Generates a map of the fields and values on a given object, also pulls from superclasses
Parameters:
object - the object to generate the list of fields from
Returns:
map containing the fields and their values

isSetter

public static boolean isSetter(Method method)

setVariableValueInObject

public static void setVariableValueInObject(Object object,
                                            String variable,
                                            Object value)
            throws IllegalAccessException
attempts to set the value to the variable in the object passed in
Parameters:
object -
variable -
value -