org.codehaus.plexus.util

## Class ReflectionUtils

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

-     public final class ReflectionUtils
      extends Object

  Operations on a class' fields and their setters.
  Version:
    $Id$
  Author:
    Michal Maczka, Jesse McConnell, Trygve Laugstøl

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ReflectionUtils()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static Field` | `getFieldByNameIncludingSuperclasses(String fieldName, Class<?> clazz)`
    `static List<Field>` | `getFieldsIncludingSuperclasses(Class<?> clazz)`
    `static Method` | `getSetter(String fieldName, Class<?> clazz)` Finds a setter in the given class for the given field.
    `static List<Method>` | `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<String,Object>` | `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<Field> 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<Method> 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<String,Object> 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)

Copyright © 2015. All rights reserved.