Package org.springframework.cglib.beans
Class BeanGenerator
java.lang.Object
org.springframework.cglib.core.AbstractClassGenerator
org.springframework.cglib.beans.BeanGenerator
- All Implemented Interfaces:
ClassGenerator
- Author:
- Juozas Baliuka, Chris Nokleberg
-
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.cglib.core.AbstractClassGenerator
AbstractClassGenerator.ClassLoaderData, AbstractClassGenerator.Source
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic void
addProperties
(BeanGenerator gen, PropertyDescriptor[] descriptors) static void
addProperties
(BeanGenerator gen, Class type) static void
addProperties
(BeanGenerator gen, Map props) void
addProperty
(String name, Class type) create()
protected Object
firstInstance
(Class type) void
protected ClassLoader
protected ProtectionDomain
Returns the protection domain to use when defining the class.protected Object
nextInstance
(Object instance) void
setSuperclass
(Class superclass) Set the class which the generated class will extend.Methods inherited from class org.springframework.cglib.core.AbstractClassGenerator
create, generate, getAttemptLoad, getClassLoader, getClassName, getCurrent, getNamingPolicy, getStrategy, getUseCache, setAttemptLoad, setClassLoader, setContextClass, setNamePrefix, setNamingPolicy, setStrategy, setUseCache, unwrapCachedValue, wrapCachedClass
-
Constructor Details
-
BeanGenerator
public BeanGenerator()
-
-
Method Details
-
setSuperclass
Set the class which the generated class will extend. The class must not be declared as final, and must have a non-private no-argument constructor.- Parameters:
superclass
- class to extend, or null to extend Object
-
addProperty
-
getDefaultClassLoader
- Specified by:
getDefaultClassLoader
in classAbstractClassGenerator
-
getProtectionDomain
Description copied from class:AbstractClassGenerator
Returns the protection domain to use when defining the class.Default implementation returns
null
for using a default protection domain. Sub-classes may override to use a more specific protection domain.- Overrides:
getProtectionDomain
in classAbstractClassGenerator
- Returns:
- the protection domain (
null
for using a default)
-
create
-
createClass
-
generateClass
- Throws:
Exception
-
firstInstance
- Specified by:
firstInstance
in classAbstractClassGenerator
-
nextInstance
- Specified by:
nextInstance
in classAbstractClassGenerator
-
addProperties
-
addProperties
-
addProperties
-