groovy.lang
Class ExpandoMetaClassCreationHandle

java.lang.Object
  extended by groovy.lang.MetaClassRegistry.MetaClassCreationHandle
      extended by groovy.lang.ExpandoMetaClassCreationHandle

public class ExpandoMetaClassCreationHandle
extends MetaClassRegistry.MetaClassCreationHandle

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()

Since:
1.5
Author:
Graeme Rocher
See Also:
MetaClassRegistry, MetaClassRegistry.MetaClassCreationHandle, MetaClassRegistryImpl.setMetaClassCreationHandle(groovy.lang.MetaClassRegistry.MetaClassCreationHandle)

Field Summary
static ExpandoMetaClassCreationHandle instance
           
 
Constructor Summary
ExpandoMetaClassCreationHandle()
           
 
Method Summary
protected  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 registerModifiedMetaClass(ExpandoMetaClass emc)
          Registers a modified ExpandoMetaClass with the creation handle
 
Methods inherited from class groovy.lang.MetaClassRegistry.MetaClassCreationHandle
create, isDisableCustomMetaClassLookup, setDisableCustomMetaClassLookup
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

instance

public static final ExpandoMetaClassCreationHandle instance
Constructor Detail

ExpandoMetaClassCreationHandle

public ExpandoMetaClassCreationHandle()
Method Detail

createNormalMetaClass

protected MetaClass createNormalMetaClass(Class theClass,
                                          MetaClassRegistry registry)
Overrides:
createNormalMetaClass in class MetaClassRegistry.MetaClassCreationHandle

registerModifiedMetaClass

public void registerModifiedMetaClass(ExpandoMetaClass emc)
Registers a modified ExpandoMetaClass with the creation handle

Parameters:
emc - The EMC

hasModifiedMetaClass

public boolean hasModifiedMetaClass(ExpandoMetaClass emc)

enable

public static void enable()

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


disable

public static void disable()

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