## groovy.lang
Class ExpandoMetaClassCreationHandle

    java.lang.Object
      groovy.lang.MetaClassRegistry.MetaClassCreationHandle
          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</before> Groovy loads, for example in your main method. `GroovySystem.metaClassRegistry.metaClassCreationHandle = new ExpandoMetaClassCreationHandle()`

Since:
  1.1
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`

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-2008 The Codehaus. All rights reserved.