public class BeanGenerator extends AbstractClassGenerator
Modifier and Type | Class and Description |
---|---|
(package private) static interface |
BeanGenerator.BeanGeneratorKey |
AbstractClassGenerator.ClassLoaderData, AbstractClassGenerator.Source
Modifier and Type | Field and Description |
---|---|
private boolean |
classOnly |
private static BeanGenerator.BeanGeneratorKey |
KEY_FACTORY |
private java.util.Map |
props |
private static AbstractClassGenerator.Source |
SOURCE |
private java.lang.Class |
superclass |
Constructor and Description |
---|
BeanGenerator() |
Modifier and Type | Method and Description |
---|---|
static void |
addProperties(BeanGenerator gen,
java.lang.Class type) |
static void |
addProperties(BeanGenerator gen,
java.util.Map props) |
static void |
addProperties(BeanGenerator gen,
java.beans.PropertyDescriptor[] descriptors) |
void |
addProperty(java.lang.String name,
java.lang.Class type) |
java.lang.Object |
create() |
java.lang.Object |
createClass() |
private java.lang.Object |
createHelper() |
protected java.lang.Object |
firstInstance(java.lang.Class type) |
void |
generateClass(org.objectweb.asm.ClassVisitor v) |
protected java.lang.ClassLoader |
getDefaultClassLoader() |
protected java.security.ProtectionDomain |
getProtectionDomain()
Returns the protection domain to use when defining the class.
|
protected java.lang.Object |
nextInstance(java.lang.Object instance) |
void |
setSuperclass(java.lang.Class superclass)
Set the class which the generated class will extend.
|
create, generate, getAttemptLoad, getClassLoader, getClassName, getCurrent, getNamingPolicy, getStrategy, getUseCache, setAttemptLoad, setClassLoader, setNamePrefix, setNamingPolicy, setStrategy, setUseCache, unwrapCachedValue, wrapCachedClass
private static final AbstractClassGenerator.Source SOURCE
private static final BeanGenerator.BeanGeneratorKey KEY_FACTORY
private java.lang.Class superclass
private java.util.Map props
private boolean classOnly
public void setSuperclass(java.lang.Class superclass)
superclass
- class to extend, or null to extend Objectpublic void addProperty(java.lang.String name, java.lang.Class type)
protected java.lang.ClassLoader getDefaultClassLoader()
getDefaultClassLoader
in class AbstractClassGenerator
protected java.security.ProtectionDomain getProtectionDomain()
AbstractClassGenerator
Default implementation returns null
for using a default protection domain. Sub-classes may
override to use a more specific protection domain.
getProtectionDomain
in class AbstractClassGenerator
null
for using a default)public java.lang.Object create()
public java.lang.Object createClass()
private java.lang.Object createHelper()
public void generateClass(org.objectweb.asm.ClassVisitor v) throws java.lang.Exception
java.lang.Exception
protected java.lang.Object firstInstance(java.lang.Class type)
firstInstance
in class AbstractClassGenerator
protected java.lang.Object nextInstance(java.lang.Object instance)
nextInstance
in class AbstractClassGenerator
public static void addProperties(BeanGenerator gen, java.util.Map props)
public static void addProperties(BeanGenerator gen, java.lang.Class type)
public static void addProperties(BeanGenerator gen, java.beans.PropertyDescriptor[] descriptors)