|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.sf.cglib.core.AbstractClassGenerator
public abstract class AbstractClassGenerator
Abstract class for all code-generating CGLIB utilities.
In addition to caching generated classes for performance, it provides hooks for
customizing the ClassLoader
, name of the generated class, and transformations
applied before generation.
Method Summary | |
---|---|
boolean |
getAttemptLoad()
|
java.lang.ClassLoader |
getClassLoader()
|
static AbstractClassGenerator |
getCurrent()
Used internally by CGLIB. |
NamingPolicy |
getNamingPolicy()
|
GeneratorStrategy |
getStrategy()
|
boolean |
getUseCache()
|
void |
setAttemptLoad(boolean attemptLoad)
If set, CGLIB will attempt to load classes from the specified ClassLoader before generating them. |
void |
setClassLoader(java.lang.ClassLoader classLoader)
Set the ClassLoader in which the class will be generated. |
void |
setNamingPolicy(NamingPolicy namingPolicy)
Override the default naming policy. |
void |
setStrategy(GeneratorStrategy strategy)
Set the strategy to use to create the bytecode from this generator. |
void |
setUseCache(boolean useCache)
Whether use and update the static cache of generated classes for a class with the same properties. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface net.sf.cglib.core.ClassGenerator |
---|
generateClass |
Method Detail |
---|
public void setClassLoader(java.lang.ClassLoader classLoader)
ClassLoader
in which the class will be generated.
Concrete subclasses of AbstractClassGenerator
(such as Enhancer
)
will try to choose an appropriate default if this is unset.
Classes are cached per-ClassLoader
using a WeakHashMap
, to allow
the generated classes to be removed when the associated loader is garbage collected.
classLoader
- the loader to generate the new class with, or null to use the defaultpublic void setNamingPolicy(NamingPolicy namingPolicy)
namingPolicy
- the custom policy, or null to use the defaultDefaultNamingPolicy
public NamingPolicy getNamingPolicy()
setNamingPolicy(net.sf.cglib.core.NamingPolicy)
public void setUseCache(boolean useCache)
true
.
public boolean getUseCache()
setUseCache(boolean)
public void setAttemptLoad(boolean attemptLoad)
ClassLoader
before generating them. Because generated
class names are not guaranteed to be unique, the default is false
.
public boolean getAttemptLoad()
public void setStrategy(GeneratorStrategy strategy)
DefaultGeneratorStrategy
is used.
public GeneratorStrategy getStrategy()
setStrategy(net.sf.cglib.core.GeneratorStrategy)
public static AbstractClassGenerator getCurrent()
AbstractClassGenerator
that is being used to generate a class in the current thread.
public java.lang.ClassLoader getClassLoader()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |