Package org.apache.tools.ant.util
Class ReflectUtil
java.lang.Object
org.apache.tools.ant.util.ReflectUtil
Utility class to handle reflection on java objects.
 The class contains static methods to call reflection
 methods, catch any exceptions, converting them
 to BuildExceptions.
- 
Method SummaryModifier and TypeMethodDescriptionstatic <T> TGet the value of a field in an object.static <T> TCall a method on the object with no parameters.static <T> TCall a method on the object with one argument.static <T> Tinvoke(Object obj, String methodName, Class<?> argType1, Object arg1, Class<?> argType2, Object arg2) Call a method on the object with two argument.static <T> TinvokeStatic(Object obj, String methodName) Call a method on the object with no parameters.static <T> TnewInstance(Class<T> ofClass, Class<?>[] argTypes, Object[] args) Create an instance of a class using the constructor matching the given arguments.static booleanrespondsTo(Object o, String methodName) A method to test if an object responds to a given message (method call)static voidA method to convert an invocationTargetException to a BuildException and throw it.static BuildExceptionA method to convert an invocationTargetException to a BuildException.
- 
Method Details- 
newInstanceCreate an instance of a class using the constructor matching the given arguments.- Type Parameters:
- T- desired type
- Parameters:
- ofClass- Class<T>
- argTypes- Class<?>[]
- args- Object[]
- Returns:
- class instance
- Since:
- Ant 1.8.0
 
- 
invokeCall a method on the object with no parameters.- Type Parameters:
- T- desired type
- Parameters:
- obj- the object to invoke the method on.
- methodName- the name of the method to call
- Returns:
- the object returned by the method
 
- 
invokeStaticCall a method on the object with no parameters. Note: Unlike the invoke method above, this calls class or static methods, not instance methods.- Type Parameters:
- T- desired type
- Parameters:
- obj- the object to invoke the method on.
- methodName- the name of the method to call
- Returns:
- the object returned by the method
 
- 
invokeCall a method on the object with one argument.- Type Parameters:
- T- desired type
- Parameters:
- obj- the object to invoke the method on.
- methodName- the name of the method to call
- argType- the type of argument.
- arg- the value of the argument.
- Returns:
- the object returned by the method
 
- 
invokepublic static <T> T invoke(Object obj, String methodName, Class<?> argType1, Object arg1, Class<?> argType2, Object arg2) Call a method on the object with two argument.- Type Parameters:
- T- desired type
- Parameters:
- obj- the object to invoke the method on.
- methodName- the name of the method to call
- argType1- the type of the first argument.
- arg1- the value of the first argument.
- argType2- the type of the second argument.
- arg2- the value of the second argument.
- Returns:
- the object returned by the method
 
- 
getFieldGet the value of a field in an object.- Type Parameters:
- T- desired type
- Parameters:
- obj- the object to look at.
- fieldName- the name of the field in the object.
- Returns:
- the value of the field.
- Throws:
- BuildException- if there is an error.
 
- 
throwBuildExceptionA method to convert an invocationTargetException to a BuildException and throw it.- Parameters:
- t- the invocation target exception.
- Throws:
- BuildException- the converted exception.
 
- 
toBuildExceptionA method to convert an invocationTargetException to a BuildException.- Parameters:
- t- the invocation target exception.
- Returns:
- the converted exception.
- Since:
- ant 1.7.1
 
- 
respondsToA method to test if an object responds to a given message (method call)- Parameters:
- o- the object
- methodName- the method to check for
- Returns:
- true if the object has the method.
- Throws:
- BuildException- if there is a problem.
 
 
-