Package org.apache.tools.ant.util
Class ReflectWrapper
- java.lang.Object
-
- org.apache.tools.ant.util.ReflectWrapper
-
public class ReflectWrapper extends java.lang.Object
Utility class to handle reflection on java objects. The class is a holder class for an object and uses java reflection to call methods on the objects. If things go wrong, BuildExceptions are thrown.
-
-
Constructor Summary
Constructors Constructor Description ReflectWrapper(java.lang.ClassLoader loader, java.lang.String name)
Construct a wrapped object using the no arg constructor.ReflectWrapper(java.lang.Object obj)
Constructor using a passed in object.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> T
getObject()
<T> T
invoke(java.lang.String methodName)
Call a method on the object with no parameters.<T> T
invoke(java.lang.String methodName, java.lang.Class<?> argType, java.lang.Object arg)
Call a method on the object with one argument.<T> T
invoke(java.lang.String methodName, java.lang.Class<?> argType1, java.lang.Object arg1, java.lang.Class<?> argType2, java.lang.Object arg2)
Call a method on the object with one argument.
-
-
-
Constructor Detail
-
ReflectWrapper
public ReflectWrapper(java.lang.ClassLoader loader, java.lang.String name)
Construct a wrapped object using the no arg constructor.- Parameters:
loader
- the classloader to use to construct the class.name
- the classname of the object to construct.
-
ReflectWrapper
public ReflectWrapper(java.lang.Object obj)
Constructor using a passed in object.- Parameters:
obj
- the object to wrap.
-
-
Method Detail
-
getObject
public <T> T getObject()
- Type Parameters:
T
- desired type- Returns:
- the wrapped object.
-
invoke
public <T> T invoke(java.lang.String methodName)
Call a method on the object with no parameters.- Type Parameters:
T
- desired type- Parameters:
methodName
- the name of the method to call- Returns:
- the object returned by the method
-
invoke
public <T> T invoke(java.lang.String methodName, java.lang.Class<?> argType, java.lang.Object arg)
Call a method on the object with one argument.- Type Parameters:
T
- desired type- Parameters:
methodName
- the name of the method to callargType
- the type of argument.arg
- the value of the argument.- Returns:
- the object returned by the method
-
invoke
public <T> T invoke(java.lang.String methodName, java.lang.Class<?> argType1, java.lang.Object arg1, java.lang.Class<?> argType2, java.lang.Object arg2)
Call a method on the object with one argument.- Type Parameters:
T
- desired type- Parameters:
methodName
- the name of the method to callargType1
- 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
-
-