groovy.lang
Class ExpandoMetaClassCreationHandle

A handle for the MetaClassRegistry that changes all classes loaded into the Grails VM to use ExpandoMetaClass instances

The handle should be registered with the Groovy runtime before Groovy loads, for example in your main method. GroovySystem.metaClassRegistry.metaClassCreationHandle = new ExpandoMetaClassCreationHandle()

see:
MetaClassRegistry
see:
MetaClassCreationHandle
see:
MetaClassRegistryImpl#setMetaClassCreationHandle
author:
Graeme Rocher
since:
1.1

Field Summary
 ExpandoMetaClassCreationHandle instance
           
 Map modifiedExpandos
           
 
Constructor Summary
ExpandoMetaClassCreationHandle()
           
 
Method Summary
MetaClass createNormalMetaClass(Class theClass, MetaClassRegistry registry)
          
static void disable()
          
static void enable()
          

Enables the ExpandoMetaClassCreationHandle with the registry ExpandoMetaClassCreationHandle.enable();

boolean hasModifiedMetaClass(ExpandoMetaClass emc)
          
void populateSupersFromInterfaces(Set modifiedSupers, def interfaces)
          
void registerModifiedMetaClass(ExpandoMetaClass emc)
           Registers a modified ExpandoMetaClass with the creation handle
Set retrieveModifiedSuperExpandos(ExpandoMetaClass child)
          
 

Constructor Detail

ExpandoMetaClassCreationHandle

ExpandoMetaClassCreationHandle()


Method Detail

createNormalMetaClass

MetaClass createNormalMetaClass(Class theClass, MetaClassRegistry registry)


disable

public static void disable()


enable

public static void enable()

Enables the ExpandoMetaClassCreationHandle with the registry ExpandoMetaClassCreationHandle.enable();


hasModifiedMetaClass

public boolean hasModifiedMetaClass(ExpandoMetaClass emc)


populateSupersFromInterfaces

void populateSupersFromInterfaces(Set modifiedSupers, def interfaces)


registerModifiedMetaClass

public void registerModifiedMetaClass(ExpandoMetaClass emc)
Registers a modified ExpandoMetaClass with the creation handle
param:
emc The EMC


retrieveModifiedSuperExpandos

Set retrieveModifiedSuperExpandos(ExpandoMetaClass child)