## org.codehaus.plexus.util
Class ReflectionUtils

    java.lang.Object
      org.codehaus.plexus.util.ReflectionUtils

    public final class ReflectionUtils

extends Object

Version:
  $Id: ReflectionUtils.java 8010 2009-01-07 12:59:50Z vsiveton $
Author:
  Michal Maczka, Jesse McConnell, Trygve Laugstøl

Constructor Summary
`ReflectionUtils()`

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 List` `getSetters(Class clazz)` Finds all setters in the given class and super classes.
`static Class` `getSetterType(Method method)` Returns the class of the argument to the setter.
`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

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ReflectionUtils

    public ReflectionUtils()

Method Detail

### 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.

### getSetters

    public static List getSetters(Class clazz)

  Finds all setters in the given class and super classes.

### 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.

### 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` -
  Throws:
    `IllegalAccessException`

### 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
  Throws:
    `IllegalAccessException`

### 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
  Throws:
    `IllegalAccessException`

### isSetter

    public static boolean isSetter(Method method)