org.codehaus.groovy.runtime.callsite
Class PojoMetaMethodSite

java.lang.Object
  extended by org.codehaus.groovy.runtime.callsite.AbstractCallSite
      extended by org.codehaus.groovy.runtime.callsite.MetaClassSite
          extended by org.codehaus.groovy.runtime.callsite.MetaMethodSite
              extended by org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite
All Implemented Interfaces:
CallSite
Direct Known Subclasses:
NumberNumberMetaMethod.NumberNumberCallSite, PojoMetaMethodSite.PojoCachedMethodSite, PojoMetaMethodSite.PojoMetaMethodSiteNoUnwrap, PojoMetaMethodSite.PojoMetaMethodSiteNoUnwrapNoCoerce

public class PojoMetaMethodSite
extends MetaMethodSite

POJO call site meta class - cached method - cached

Author:
Alex Tkachman

Nested Class Summary
static class PojoMetaMethodSite.PojoCachedMethodSite
           
static class PojoMetaMethodSite.PojoCachedMethodSiteNoUnwrap
           
static class PojoMetaMethodSite.PojoCachedMethodSiteNoUnwrapNoCoerce
           
static class PojoMetaMethodSite.PojoMetaMethodSiteNoUnwrap
          Call site where we know there is no need to unwrap arguments
static class PojoMetaMethodSite.PojoMetaMethodSiteNoUnwrapNoCoerce
          Call site where we know there is no need neither unwrap nor coerce arguments
 
Field Summary
protected  int version
           
 
Fields inherited from class org.codehaus.groovy.runtime.callsite.MetaMethodSite
params
 
Fields inherited from class org.codehaus.groovy.runtime.callsite.MetaClassSite
metaClass
 
Fields inherited from class org.codehaus.groovy.runtime.callsite.AbstractCallSite
array, index, name, usage
 
Constructor Summary
PojoMetaMethodSite(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, Class[] params)
           
 
Method Summary
 Object call(Object receiver, Object[] args)
           
protected  boolean checkCall(Object receiver)
           
protected  boolean checkCall(Object receiver, Object arg1)
           
protected  boolean checkCall(Object receiver, Object[] args)
           
protected  boolean checkCall(Object receiver, Object arg1, Object arg2)
           
protected  boolean checkCall(Object receiver, Object arg1, Object arg2, Object arg3)
           
protected  boolean checkCall(Object receiver, Object arg1, Object arg2, Object arg3, Object arg4)
           
protected  boolean checkPojoMetaClass()
           
static CallSite createCachedMethodSite(CallSite site, MetaClassImpl metaClass, CachedMethod metaMethod, Class[] params, Object[] args)
           
static CallSite createNonAwareCallSite(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, Class[] params, Object[] args)
           
static CallSite createPojoMetaMethodSite(CallSite site, MetaClassImpl metaClass, MetaMethod metaMethod, Class[] params, Object receiver, Object[] args)
           
 Object invoke(Object receiver, Object[] args)
           
 
Methods inherited from class org.codehaus.groovy.runtime.callsite.AbstractCallSite
acceptGetProperty, acceptGroovyObjectGetProperty, call, call, call, call, call, callConstructor, callConstructor, callConstructor, callConstructor, callConstructor, callConstructor, callCurrent, callCurrent, callCurrent, callCurrent, callCurrent, callCurrent, callGetProperty, callGetPropertySafe, callGroovyObjectGetProperty, callGroovyObjectGetPropertySafe, callSafe, callSafe, callSafe, callSafe, callSafe, callSafe, callStatic, callStatic, callStatic, callStatic, callStatic, callStatic, createGetPropertySite, createGroovyObjectGetPropertySite, getArray, getIndex, getName, getProperty, getUsage
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

version

protected final int version
Constructor Detail

PojoMetaMethodSite

public PojoMetaMethodSite(CallSite site,
                          MetaClassImpl metaClass,
                          MetaMethod metaMethod,
                          Class[] params)
Method Detail

invoke

public Object invoke(Object receiver,
                     Object[] args)
              throws Throwable
Throws:
Throwable

call

public Object call(Object receiver,
                   Object[] args)
            throws Throwable
Specified by:
call in interface CallSite
Overrides:
call in class AbstractCallSite
Throws:
Throwable

checkPojoMetaClass

protected final boolean checkPojoMetaClass()

checkCall

protected final boolean checkCall(Object receiver,
                                  Object[] args)

checkCall

protected final boolean checkCall(Object receiver)

checkCall

protected final boolean checkCall(Object receiver,
                                  Object arg1)

checkCall

protected final boolean checkCall(Object receiver,
                                  Object arg1,
                                  Object arg2)

checkCall

protected final boolean checkCall(Object receiver,
                                  Object arg1,
                                  Object arg2,
                                  Object arg3)

checkCall

protected final boolean checkCall(Object receiver,
                                  Object arg1,
                                  Object arg2,
                                  Object arg3,
                                  Object arg4)

createPojoMetaMethodSite

public static CallSite createPojoMetaMethodSite(CallSite site,
                                                MetaClassImpl metaClass,
                                                MetaMethod metaMethod,
                                                Class[] params,
                                                Object receiver,
                                                Object[] args)

createCachedMethodSite

public static CallSite createCachedMethodSite(CallSite site,
                                              MetaClassImpl metaClass,
                                              CachedMethod metaMethod,
                                              Class[] params,
                                              Object[] args)

createNonAwareCallSite

public static CallSite createNonAwareCallSite(CallSite site,
                                              MetaClassImpl metaClass,
                                              MetaMethod metaMethod,
                                              Class[] params,
                                              Object[] args)

Copyright © 2003-2010 The Codehaus. All rights reserved.