org.codehaus.plexus.util
Class ReflectionUtils

java.lang.Object
  extended byorg.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)


Copyright © 2001-2009 Codehaus. All Rights Reserved.