groovy.util

## Class Proxy

- java.lang.Object
- - groovy.lang.GroovyObjectSupport
  - - groovy.util.Proxy

All Implemented Interfaces:
  GroovyObject

    public class Proxy
    extends GroovyObjectSupport

Dynamic groovy proxy for another object. All method invocations get forwarded to actual object, unless the proxy overrides it. See groovy/util/ProxyTest.groovy for usage details.

Author:
  Troy Heninger, Dierk Koenig

### Constructor Summary

Constructors
Constructor and Description
`Proxy()`

### Method Summary

Methods
`Object` `getAdaptee()`
`Object` `invokeMethod(String name, Object args)` Invokes the given method.
`Iterator` `iterator()`
`void` `setAdaptee(Object adaptee)`
`Proxy` `wrap(Object adaptee)` This method is for convenience.

### Methods inherited from class groovy.lang.GroovyObjectSupport

`getMetaClass, getProperty, setMetaClass, setProperty`

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

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

### Constructor Detail

#### Proxy

    public Proxy()

### Method Detail

#### wrap

    public Proxy wrap(Object adaptee)

This method is for convenience. It allows to get around the need for defining dump ctors is subclasses. See unit tests for details.

#### getAdaptee

    public Object getAdaptee()

#### setAdaptee

    public void setAdaptee(Object adaptee)

#### invokeMethod

    public Object invokeMethod(String name,
                      Object args)

Description copied from interface: `GroovyObject`
Invokes the given method.

Specified by:
  `invokeMethod` in interface `GroovyObject`
Overrides:
  `invokeMethod` in class `GroovyObjectSupport`
Parameters:
  `name` - the name of the method to call
  `args` - the arguments to use for the method call
Returns:
  the result of invoking the method

#### iterator

    public Iterator iterator()