groovy.lang
Class MetaClassRegistry

java.lang.Object
  extended bygroovy.lang.MetaClassRegistry

public class MetaClassRegistry
extends Object

A registery of MetaClass instances which caches introspection & reflection information and allows methods to be dynamically added to existing classes at runtime

Version:
$Revision: 1.12 $
Author:
James Strachan

Constructor Summary
MetaClassRegistry()
           
MetaClassRegistry(boolean useAccessible)
           
 
Method Summary
 MetaClass getMetaClass(Class theClass)
           
 Class loadClass(String name)
           
 Class loadClass(String name, byte[] bytecode)
          A helper class to load meta class bytecode into the class loader
 void setMetaClass(Class theClass, MetaClass theMetaClass)
          Registers a new MetaClass in the registry to customize the type
 boolean useAccessible()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MetaClassRegistry

public MetaClassRegistry()

MetaClassRegistry

public MetaClassRegistry(boolean useAccessible)
Parameters:
useAccessible - defines whether or not the AccessibleObject.setAccessible() method will be called to enable access to all methods when using reflection
Method Detail

getMetaClass

public MetaClass getMetaClass(Class theClass)

setMetaClass

public void setMetaClass(Class theClass,
                         MetaClass theMetaClass)
Registers a new MetaClass in the registry to customize the type

Parameters:
theClass -
theMetaClass -

useAccessible

public boolean useAccessible()

loadClass

public Class loadClass(String name,
                       byte[] bytecode)
                throws ClassNotFoundException
A helper class to load meta class bytecode into the class loader

Throws:
ClassNotFoundException

loadClass

public Class loadClass(String name)
                throws ClassNotFoundException
Throws:
ClassNotFoundException


Copyright © 2003-2004 The Codehaus. All Rights Reserved.