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 and 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
`java.lang.Object` `getObject()`
`java.lang.Object` `invoke(java.lang.String methodName)` Call a method on the object with no parameters.
`java.lang.Object` `invoke(java.lang.String methodName, java.lang.Class argType, java.lang.Object arg)` Call a method on the object with one argument.
`java.lang.Object` `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.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### 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 java.lang.Object getObject()

Returns:
  the wrapped object.

#### invoke

    public java.lang.Object invoke(java.lang.String methodName)

Call a method on the object with no parameters.

Parameters:
  `methodName` - the name of the method to call
Returns:
  the object returned by the method

#### invoke

    public java.lang.Object invoke(java.lang.String methodName,
                                   java.lang.Class argType,
                                   java.lang.Object arg)

Call a method on the object with one argument.

Parameters:
  `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

#### invoke

    public java.lang.Object 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.

Parameters:
  `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