Package org.codehaus.plexus.util
Class ReflectionUtils
java.lang.Object
org.codehaus.plexus.util.ReflectionUtils
Operations on a class' fields and their setters.
- Author:
- Michal Maczka, Jesse McConnell, Trygve Laugstøl
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic Field
getFieldByNameIncludingSuperclasses
(String fieldName, Class<?> clazz) getFieldsIncludingSuperclasses
(Class<?> clazz) static Method
Finds a setter in the given class for the given field.getSetters
(Class<?> clazz) static Class<?>
getSetterType
(Method method) static Object
getValueIncludingSuperclasses
(String variable, Object object) Generates a map of the fields and values on a given object, also pulls from superclassesGenerates a map of the fields and values on a given object, also pulls from superclassesstatic boolean
static void
setVariableValueInObject
(Object object, String variable, Object value) attempts to set the value to the variable in the object passed in
-
Constructor Details
-
ReflectionUtils
public ReflectionUtils()
-
-
Method Details
-
getFieldByNameIncludingSuperclasses
-
getFieldsIncludingSuperclasses
-
getSetter
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
- Parameters:
clazz
- the Class- Returns:
- all setters in the given class and super classes.
-
getSetterType
- Parameters:
method
- the 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
- see namevariable
- see namevalue
- see name- Throws:
IllegalAccessException
- if error
-
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:
variable
- field nameobject
- the object to generate the list of fields from- Returns:
- map containing the fields and their values
- Throws:
IllegalAccessException
- cannot access
-
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
- cannot access
-
isSetter
-