org.codehaus.groovy.grails.documentation
Class MetadataGeneratingExpandoMetaClass

java.lang.Object
  extended by groovy.lang.MetaClassImpl
      extended by groovy.lang.ExpandoMetaClass
          extended by org.codehaus.groovy.grails.documentation.MetadataGeneratingExpandoMetaClass
All Implemented Interfaces:
groovy.lang.GroovyObject, groovy.lang.MetaClass, groovy.lang.MetaObjectProtocol, groovy.lang.MutableMetaClass

public class MetadataGeneratingExpandoMetaClass
extends groovy.lang.ExpandoMetaClass

A specialized version of ExpandoMetaClass that is capable of generating metadata about the dynamic methods and properties that are added to artefact types at runtime by plugins A project with sufficient code coverage will have metadata about the methods and properties it provides generated at runtime.

Since:
1.2
Author:
Graeme Rocher

Nested Class Summary
 
Nested classes/interfaces inherited from class groovy.lang.ExpandoMetaClass
groovy.lang.ExpandoMetaClass.ExpandoMetaConstructor, groovy.lang.ExpandoMetaClass.ExpandoMetaProperty
 
Nested classes/interfaces inherited from class groovy.lang.MetaClassImpl
groovy.lang.MetaClassImpl.Index
 
Field Summary
 
Fields inherited from class groovy.lang.ExpandoMetaClass
CONSTRUCTOR, inRegistry, STATIC_QUALIFIER
 
Fields inherited from class groovy.lang.MetaClassImpl
getPropertyMethod, INVOKE_METHOD_METHOD, invokeMethodMethod, isGroovyObject, isMap, metaMethodIndex, METHOD_MISSING, PROPERTY_MISSING, registry, setPropertyMethod, STATIC_METHOD_MISSING, STATIC_PROPERTY_MISSING, theCachedClass, theClass
 
Constructor Summary
MetadataGeneratingExpandoMetaClass(Class theClass)
           
 
Method Summary
 void addMetaBeanProperty(groovy.lang.MetaBeanProperty mp)
           
 void registerInstanceMethod(groovy.lang.MetaMethod method)
           
protected  void registerStaticMethod(String name, groovy.lang.Closure callable)
           
 
Methods inherited from class groovy.lang.ExpandoMetaClass
addMixinClass, castToMixedType, createConstructorSite, createPogoCallCurrentSite, createPogoCallSite, createPojoCallSite, createStaticSite, define, disableGlobally, enableGlobally, findMixinMethod, getExpandoMethods, getExpandoProperties, getExpandoSubclassMethods, getJavaClass, getMetaClass, getMetaProperty, getMethods, getProperties, getProperty, getProperty, getProperty, getPropertyForSetter, getSubclassMetaMethods, hasMetaMethod, hasMetaProperty, initialize, invokeConstructor, invokeMethod, invokeMethod, invokeStaticMethod, isInitialized, isModified, isSetter, isValidExpandoProperty, onGetPropertyFoundInHierarchy, onInvokeMethodFoundInHierarchy, onSetPropertyFoundInHierarchy, onSuperMethodFoundInHierarchy, onSuperPropertyFoundInHierarchy, performOperationOnMetaClass, refreshInheritedMethods, registerBeanProperty, registerInstanceMethod, registerStaticMethod, registerSubclassInstanceMethod, registerSubclassInstanceMethod, setInitialized, setMetaClass, setProperty, setProperty
 
Methods inherited from class groovy.lang.MetaClassImpl
addMetaMethod, addMetaMethodToIndex, addNewInstanceMethod, addNewStaticMethod, checkIfGroovyObjectMethod, checkInitalised, chooseMethod, clearInvocationCaches, createPogoCallCurrentSite, dropMethodCache, dropStaticMethodCache, findMethodInClassHierarchy, findOwnMethod, findPropertyInClassHierarchy, getAdditionalMetaMethods, getAttribute, getAttribute, getAttribute, getClassInfo, getClassNode, getEffectiveGetMetaProperty, getMetaMethod, getMetaMethods, getMethodWithCaching, getMethodWithoutCaching, getStaticMetaMethod, getSuperClasses, getTheCachedClass, getTheClass, getVersion, hasProperty, incVersion, invokeConstructorAt, invokeMethod, invokeMethod, invokeMissingMethod, invokeMissingProperty, invokeStaticMissingProperty, isGroovyObject, onMixinMethodFound, pickMethod, respondsTo, respondsTo, retrieveConstructor, retrieveMethod, retrieveStaticMethod, selectConstructorAndTransformArguments, setAttribute, setAttribute, setProperties, setProperty, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MetadataGeneratingExpandoMetaClass

public MetadataGeneratingExpandoMetaClass(Class theClass)
Method Detail

addMetaBeanProperty

public void addMetaBeanProperty(groovy.lang.MetaBeanProperty mp)
Specified by:
addMetaBeanProperty in interface groovy.lang.MutableMetaClass
Overrides:
addMetaBeanProperty in class groovy.lang.MetaClassImpl

registerStaticMethod

protected void registerStaticMethod(String name,
                                    groovy.lang.Closure callable)
Overrides:
registerStaticMethod in class groovy.lang.ExpandoMetaClass

registerInstanceMethod

public void registerInstanceMethod(groovy.lang.MetaMethod method)
Overrides:
registerInstanceMethod in class groovy.lang.ExpandoMetaClass


Copyright (c) 2005-2009 The Grails project