org.codehaus.groovy.reflection

## Class GeneratedMetaMethod.Proxy

- java.lang.Object
- - org.codehaus.groovy.reflection.ParameterTypes
  - - groovy.lang.MetaMethod
    - - org.codehaus.groovy.reflection.GeneratedMetaMethod
      - - org.codehaus.groovy.reflection.GeneratedMetaMethod.Proxy

- All Implemented Interfaces:
    Cloneable
  Enclosing class:
    GeneratedMetaMethod

      public static class GeneratedMetaMethod.Proxy
      extends GeneratedMetaMethod

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.codehaus.groovy.reflection.GeneratedMetaMethod

      `GeneratedMetaMethod.DgmMethodRecord, GeneratedMetaMethod.Proxy`

  - ### Field Summary

    - ### Fields inherited from class groovy.lang.MetaMethod

      `EMPTY_ARRAY`

    - ### Fields inherited from class org.codehaus.groovy.reflection.ParameterTypes

      `isVargsMethod, nativeParamTypes, parameterTypes`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Proxy(String className, String name, CachedClass declaringClass, Class returnType, Class[] parameters)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Object` | `doMethodInvoke(Object object, Object[] argumentArray)` Invokes the method this object represents.
    `Object` | `invoke(Object object, Object[] arguments)` Invoke this method
    `boolean` | `isValidMethod(Class[] arguments)`
    `MetaMethod` | `proxy()`

    - ### Methods inherited from class org.codehaus.groovy.reflection.GeneratedMetaMethod

      `getDeclaringClass, getModifiers, getName, getReturnType`

    - ### Methods inherited from class groovy.lang.MetaMethod

      `checkParameters, clone, equal, equal, getDescriptor, getMopName, getSignature, isAbstract, isCacheable, isMethod, isPrivate, isProtected, isPublic, isSame, isStatic, processDoMethodInvokeException, toString`

    - ### Methods inherited from class org.codehaus.groovy.reflection.ParameterTypes

      `coerceArgumentsToClasses, correctArguments, getNativeParameterTypes, getParameterTypes, getPT, isValidExactMethod, isValidExactMethod, isValidMethod, isVargsMethod, isVargsMethod, setParametersTypes`

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

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

- - ### Constructor Detail

    - #### Proxy

          public Proxy(String className,
                       String name,
                       CachedClass declaringClass,
                       Class returnType,
                       Class[] parameters)

  - ### Method Detail

    - #### isValidMethod

          public boolean isValidMethod(Class[] arguments)

      Overrides:
        `isValidMethod` in class `ParameterTypes`

    - #### doMethodInvoke

          public Object doMethodInvoke(Object object,
                                       Object[] argumentArray)

      Description copied from class: `MetaMethod`
      Invokes the method this object represents. This method is not final but it should be overloaded very carefully and only by generated methods there is no guarantee that it will be called
      Overrides:
        `doMethodInvoke` in class `MetaMethod`
      Parameters:
        `object` - The object the method is to be called at.
        `argumentArray` - Arguments for the method invocation.
      Returns:
        The return value of the invoked method.

    - #### invoke

          public Object invoke(Object object,
                               Object[] arguments)

      Description copied from class: `MetaMethod`
      Invoke this method
      Specified by:
        `invoke` in class `MetaMethod`
      Parameters:
        `object` - The object this method should be invoked on
        `arguments` - The arguments for the method if applicable
      Returns:
        The return value of the invocation

    - #### proxy

          public final MetaMethod proxy()