DelegatingMetaClass (groovy 2.4.6 API)
Date: 2016-02-18

Package: groovy.lang

## [Java] Class DelegatingMetaClass

- groovy.lang.DelegatingMetaClass

- All Implemented Interfaces and Traits:
    GroovyObject, MetaClass, MutableMetaClass

      public class DelegatingMetaClass
      extends Object

  Authors:
    John Wilson

- - ### Field Summary

    Fields
    Modifiers | Name | Description
    --- | --- | ---
    `protected MetaClass` | `delegate` |

  - ### Constructor Summary

    Constructors
    Constructor and description
    `DelegatingMetaClass (MetaClass delegate)`
    `DelegatingMetaClass (Class theClass)`

  - ### Methods Summary

    Methods
    Type | Name and description
    --- | ---
    `void` | `addMetaBeanProperty(MetaBeanProperty metaBeanProperty)`
    `void` | `addMetaMethod(MetaMethod metaMethod)`
    `void` | `addNewInstanceMethod(Method method)`
    `void` | `addNewStaticMethod(Method method)`
    `boolean` | `equals(Object obj)`
    `MetaClass` | `getAdaptee()`
    `Object` | `getAttribute(Object object, String attribute)`
    `Object` | `getAttribute(Class sender, Object receiver, String messageName, boolean useSuper)`
    `ClassNode` | `getClassNode()`
    `MetaClass` | `getMetaClass()`
    `MetaMethod` | `getMetaMethod(String name, Object[] args)`
    `List<MetaMethod>` | `getMetaMethods()`
    `MetaProperty` | `getMetaProperty(String name)`
    `List<MetaMethod>` | `getMethods()`
    `List<MetaProperty>` | `getProperties()`
    `Object` | `getProperty(Object object, String property)`
    `Object` | `getProperty(Class sender, Object receiver, String messageName, boolean useSuper, boolean fromInsideClass)`
    `Object` | `getProperty(String property)`
    `MetaMethod` | `getStaticMetaMethod(String name, Object[] args)`
    `MetaMethod` | `getStaticMetaMethod(String name, Class[] argTypes)`
    `Class` | `getTheClass()`
    `MetaProperty` | `hasProperty(Object obj, String name)`
    `int` | `hashCode()`
    `void` | `initialize()`
    `Object` | `invokeConstructor(Object[] arguments)`
    `Object` | `invokeMethod(Object object, String methodName, Object arguments)`
    `Object` | `invokeMethod(Object object, String methodName, Object[] arguments)`
    `Object` | `invokeMethod(Class sender, Object receiver, String methodName, Object[] arguments, boolean isCallToSuper, boolean fromInsideClass)`
    `Object` | `invokeMethod(String name, Object args)`
    `Object` | `invokeMissingMethod(Object instance, String methodName, Object[] arguments)`
    `Object` | `invokeMissingProperty(Object instance, String propertyName, Object optionalValue, boolean isGetter)`
    `Object` | `invokeStaticMethod(Object object, String methodName, Object[] arguments)`
    `boolean` | `isGroovyObject()`
    `boolean` | `isModified()`
    `MetaMethod` | `pickMethod(String methodName, Class[] arguments)` @deprecated
    `List<MetaMethod>` | `respondsTo(Object obj, String name, Object[] argTypes)`
    `List<MetaMethod>` | `respondsTo(Object obj, String name)`
    `int` | `selectConstructorAndTransformArguments(int numberOfConstructors, Object[] arguments)`
    `void` | `setAdaptee(MetaClass adaptee)`
    `void` | `setAttribute(Object object, String attribute, Object newValue)`
    `void` | `setAttribute(Class sender, Object receiver, String messageName, Object messageValue, boolean useSuper, boolean fromInsideClass)`
    `void` | `setMetaClass(MetaClass metaClass)`
    `void` | `setProperty(Object object, String property, Object newValue)`
    `void` | `setProperty(Class sender, Object receiver, String messageName, Object messageValue, boolean useSuper, boolean fromInsideClass)`
    `void` | `setProperty(String property, Object newValue)`
    `String` | `toString()`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class Object` | `wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll`

- - ### Field Detail

    - #### protected MetaClass delegate

  - ### Constructor Detail

    - #### public DelegatingMetaClass(MetaClass delegate)

    - #### public DelegatingMetaClass(Class theClass)

  - ### Method Detail

    - #### public void addMetaBeanProperty(MetaBeanProperty metaBeanProperty)

    - #### public void addMetaMethod(MetaMethod metaMethod)

    - #### public void addNewInstanceMethod(Method method)

    - #### public void addNewStaticMethod(Method method)

    - #### public boolean equals(Object obj)

    - #### public MetaClass getAdaptee()

    - #### public Object getAttribute(Object object, String attribute)

    - #### public Object getAttribute(Class sender, Object receiver, String messageName, boolean useSuper)

    - #### public ClassNode getClassNode()

    - #### public MetaClass getMetaClass()

    - #### public MetaMethod getMetaMethod(String name, Object[] args)

    - #### public List<MetaMethod> getMetaMethods()

    - #### public MetaProperty getMetaProperty(String name)

    - #### public List<MetaMethod> getMethods()

    - #### public List<MetaProperty> getProperties()

    - #### public Object getProperty(Object object, String property)

    - #### public Object getProperty(Class sender, Object receiver, String messageName, boolean useSuper, boolean fromInsideClass)

    - #### public Object getProperty(String property)

    - #### public MetaMethod getStaticMetaMethod(String name, Object[] args)

    - #### public MetaMethod getStaticMetaMethod(String name, Class[] argTypes)

    - #### public Class getTheClass()

    - #### public MetaProperty hasProperty(Object obj, String name)

    - #### public int hashCode()

    - #### public void initialize()

    - #### public Object invokeConstructor(Object[] arguments)

    - #### public Object invokeMethod(Object object, String methodName, Object arguments)

    - #### public Object invokeMethod(Object object, String methodName, Object[] arguments)

    - #### public Object invokeMethod(Class sender, Object receiver, String methodName, Object[] arguments, boolean isCallToSuper, boolean fromInsideClass)

    - #### public Object invokeMethod(String name, Object args)

    - #### public Object invokeMissingMethod(Object instance, String methodName, Object[] arguments)

    - #### public Object invokeMissingProperty(Object instance, String propertyName, Object optionalValue, boolean isGetter)

    - #### public Object invokeStaticMethod(Object object, String methodName, Object[] arguments)

    - #### public boolean isGroovyObject()

    - #### public boolean isModified()

    - #### public MetaMethod pickMethod(String methodName, Class[] arguments)

      deprecated:

    - #### public List<MetaMethod> respondsTo(Object obj, String name, Object[] argTypes)

    - #### public List<MetaMethod> respondsTo(Object obj, String name)

    - #### public int selectConstructorAndTransformArguments(int numberOfConstructors, Object[] arguments)

    - #### public void setAdaptee(MetaClass adaptee)

    - #### public void setAttribute(Object object, String attribute, Object newValue)

    - #### public void setAttribute(Class sender, Object receiver, String messageName, Object messageValue, boolean useSuper, boolean fromInsideClass)

    - #### public void setMetaClass(MetaClass metaClass)

    - #### public void setProperty(Object object, String property, Object newValue)

    - #### public void setProperty(Class sender, Object receiver, String messageName, Object messageValue, boolean useSuper, boolean fromInsideClass)

    - #### public void setProperty(String property, Object newValue)

    - #### public String toString()