public class MetaClassRegistryImpl extends Object implements MetaClassRegistry
MetaClassRegistry.MetaClassCreationHandle| Modifier and Type | Field and Description |
|---|---|
static int |
DONT_LOAD_DEFAULT |
static int |
LOAD_DEFAULT |
| Constructor and Description |
|---|
MetaClassRegistryImpl() |
MetaClassRegistryImpl(boolean useAccessible) |
MetaClassRegistryImpl(int loadDefault) |
MetaClassRegistryImpl(int loadDefault,
boolean useAccessible) |
| Modifier and Type | Method and Description |
|---|---|
void |
addMetaClassRegistryChangeEventListener(MetaClassRegistryChangeEventListener listener)
Adds a listener for constant meta classes.
|
protected void |
fireConstantMetaClassUpdate(Object obj,
Class c,
MetaClass oldMC,
MetaClass newMc)
Causes the execution of all registered listeners.
|
static MetaClassRegistry |
getInstance(int includeExtension)
Singleton of MetaClassRegistry.
|
FastArray |
getInstanceMethods() |
MetaClass |
getMetaClass(Class theClass) |
MetaClass |
getMetaClass(Object obj) |
MetaClassRegistry.MetaClassCreationHandle |
getMetaClassCreationHandler()
Gets a handle internally used to create MetaClass implementations
WARNING: experimental code, likely to change soon
|
MetaClassRegistryChangeEventListener[] |
getMetaClassRegistryChangeEventListeners()
Gets an array of of all registered ConstantMetaClassListener instances.
|
FastArray |
getStaticMethods() |
Iterator |
iterator()
Returns an iterator to iterate over all constant meta classes.
|
void |
removeMetaClass(Class theClass)
Removes a cached MetaClass from the registry
|
void |
removeMetaClassRegistryChangeEventListener(MetaClassRegistryChangeEventListener listener)
Removes a constant meta class listener.
|
void |
setMetaClass(Class theClass,
MetaClass theMetaClass)
Registers a new MetaClass in the registry to customize the type
|
void |
setMetaClass(Object obj,
MetaClass theMetaClass) |
void |
setMetaClassCreationHandle(MetaClassRegistry.MetaClassCreationHandle handle)
Sets a handle internally used to create MetaClass implementations.
|
boolean |
useAccessible() |
public static final int LOAD_DEFAULT
public static final int DONT_LOAD_DEFAULT
public MetaClassRegistryImpl()
public MetaClassRegistryImpl(int loadDefault)
public MetaClassRegistryImpl(boolean useAccessible)
useAccessible - defines whether or not the AccessibleObject.setAccessible(boolean)
method will be called to enable access to all methods when using reflectionpublic MetaClassRegistryImpl(int loadDefault,
boolean useAccessible)
public final MetaClass getMetaClass(Class theClass)
getMetaClass in interface MetaClassRegistrypublic void removeMetaClass(Class theClass)
MetaClassRegistryremoveMetaClass in interface MetaClassRegistrytheClass - The Java class of the MetaClass to removepublic void setMetaClass(Class theClass, MetaClass theMetaClass)
setMetaClass in interface MetaClassRegistrytheClass - theMetaClass - public boolean useAccessible()
public MetaClassRegistry.MetaClassCreationHandle getMetaClassCreationHandler()
getMetaClassCreationHandler in interface MetaClassRegistrypublic void setMetaClassCreationHandle(MetaClassRegistry.MetaClassCreationHandle handle)
setMetaClassCreationHandle in interface MetaClassRegistryhandle - the handlepublic void addMetaClassRegistryChangeEventListener(MetaClassRegistryChangeEventListener listener)
addMetaClassRegistryChangeEventListener in interface MetaClassRegistrylistener - the listenerpublic void removeMetaClassRegistryChangeEventListener(MetaClassRegistryChangeEventListener listener)
removeMetaClassRegistryChangeEventListener in interface MetaClassRegistrylistener - the listenerprotected void fireConstantMetaClassUpdate(Object obj, Class c, MetaClass oldMC, MetaClass newMc)
obj - object instance if the MetaClass change is on a per-instance metaclass (or null if global)c - the classoldMC - the old MetaClassnewMc - the new MetaClasspublic MetaClassRegistryChangeEventListener[] getMetaClassRegistryChangeEventListeners()
getMetaClassRegistryChangeEventListeners in interface MetaClassRegistrypublic static MetaClassRegistry getInstance(int includeExtension)
includeExtension - public FastArray getInstanceMethods()
public FastArray getStaticMethods()
public Iterator iterator()
iterator in interface MetaClassRegistry