Package: groovy.lang

## [Java] Class ExpandoMetaClassCreationHandle

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

  See Also:
    MetaClassRegistry
    groovy.lang.MetaClassRegistry.MetaClassCreationHandle
    MetaClassRegistryImpl.setMetaClassCreationHandle
  Since:
    1.5

- - ### Field Summary

    Fields
    Modifiers | Name | Description
    --- | --- | ---
    `static ExpandoMetaClassCreationHandle` | `instance` |

  - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `protected MetaClass` | `createNormalMetaClass(Class theClass, MetaClassRegistry registry)`
    `` | `public static void` | `disable()`
    `` | `public static void` | `enable()`
    `` | `public boolean` | `hasModifiedMetaClass(ExpandoMetaClass emc)`
    `` | `public void` | `registerModifiedMetaClass(ExpandoMetaClass emc)` Registers a modified ExpandoMetaClass with the creation handle

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class MetaClassRegistry.MetaClassCreationHandle` | `create, createNormalMetaClass, isDisableCustomMetaClassLookup, setDisableCustomMetaClassLookup`

- - ### Field Detail

    - #### public static final ExpandoMetaClassCreationHandle instance

  - ### Method Detail

    - #### @Override protected MetaClass createNormalMetaClass(Class theClass, MetaClassRegistry registry)

    - #### public static void disable()

    - #### public static void enable()

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

    - #### public boolean hasModifiedMetaClass(ExpandoMetaClass emc)

    - #### public void registerModifiedMetaClass(ExpandoMetaClass emc)

      Registers a modified ExpandoMetaClass with the creation handle

      Parameters:
        `emc` - The EMC