Class ClosureMetaMethod
- java.lang.Object
-
- org.codehaus.groovy.reflection.ParameterTypes
-
- groovy.lang.MetaMethod
-
- org.codehaus.groovy.runtime.metaclass.ClosureMetaMethod
-
- All Implemented Interfaces:
ClosureInvokingMethod,java.lang.Cloneable
public class ClosureMetaMethod extends MetaMethod implements ClosureInvokingMethod
A MetaMethod that accepts a closure in the constructor which is invoked when the MetaMethod is called. The delegate of the closure is set to the instance that the MetaMethod is invoked on when called.- Since:
- 1.5
-
-
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 Description ClosureMetaMethod(java.lang.String name, Closure c, CachedMethod doCall)ClosureMetaMethod(java.lang.String name, java.lang.Class declaringClass, Closure c, CachedMethod doCall)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ClosureMetaMethodcopy(ClosureMetaMethod closureMethod)static java.util.List<MetaMethod>createMethodList(java.lang.String name, java.lang.Class declaringClass, Closure closure)ClosuregetClosure()Retrieves the closure that is invoked by this MetaMethodCachedClassgetDeclaringClass()Gets the class where this method is declaredCachedMethodgetDoCall()intgetModifiers()Returns the modifiers for this methodjava.lang.StringgetName()Returns the name of the method represented by this classjava.lang.ClassgetReturnType()Access the return type for this methodjava.lang.Objectinvoke(java.lang.Object object, java.lang.Object[] arguments)Invoke this method-
Methods inherited from class groovy.lang.MetaMethod
checkParameters, clone, doMethodInvoke, 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, isValidMethod, isVargsMethod, isVargsMethod, setParametersTypes
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface groovy.lang.ClosureInvokingMethod
isStatic
-
-
-
-
Constructor Detail
-
ClosureMetaMethod
public ClosureMetaMethod(java.lang.String name, Closure c, CachedMethod doCall)
-
ClosureMetaMethod
public ClosureMetaMethod(java.lang.String name, java.lang.Class declaringClass, Closure c, CachedMethod doCall)
-
-
Method Detail
-
getModifiers
public int getModifiers()
Description copied from class:MetaMethodReturns the modifiers for this method- Specified by:
getModifiersin classMetaMethod- Returns:
- modifiers as an int.
-
getName
public java.lang.String getName()
Description copied from class:MetaMethodReturns the name of the method represented by this class- Specified by:
getNamein interfaceClosureInvokingMethod- Specified by:
getNamein classMetaMethod- Returns:
- name of this method
-
getReturnType
public java.lang.Class getReturnType()
Description copied from class:MetaMethodAccess the return type for this method- Specified by:
getReturnTypein classMetaMethod- Returns:
- the return type of this method
-
getDeclaringClass
public CachedClass getDeclaringClass()
Description copied from class:MetaMethodGets the class where this method is declared- Specified by:
getDeclaringClassin classMetaMethod- Returns:
- class of this method
-
invoke
public java.lang.Object invoke(java.lang.Object object, java.lang.Object[] arguments)Description copied from class:MetaMethodInvoke this method- Specified by:
invokein classMetaMethod- Parameters:
object- The object this method should be invoked onarguments- The arguments for the method if applicable- Returns:
- The return value of the invocation
-
getClosure
public Closure getClosure()
Retrieves the closure that is invoked by this MetaMethod- Specified by:
getClosurein interfaceClosureInvokingMethod- Returns:
- The closure
-
createMethodList
public static java.util.List<MetaMethod> createMethodList(java.lang.String name, java.lang.Class declaringClass, Closure closure)
-
getDoCall
public CachedMethod getDoCall()
-
copy
public static ClosureMetaMethod copy(ClosureMetaMethod closureMethod)
-
-