Package org.springframework.cglib.beans
Class BeanMap.Generator
java.lang.Object
org.springframework.cglib.core.AbstractClassGenerator
org.springframework.cglib.beans.BeanMap.Generator
- All Implemented Interfaces:
ClassGenerator
- Enclosing class:
- BeanMap
-
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.cglib.core.AbstractClassGenerator
AbstractClassGenerator.ClassLoaderData, AbstractClassGenerator.Source
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptioncreate()
Create a new instance of theBeanMap
.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
Set the bean that the generated map should reflect.void
setBeanClass
(Class beanClass) Set the class of the bean that the generated map should support.void
setRequire
(int require) Limit the properties reflected by the generated map.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
-
Generator
public Generator()
-
-
Method Details
-
setBean
Set the bean that the generated map should reflect. The bean may be swapped out for another bean of the same type usingsetBean(java.lang.Object)
. Calling this method overrides any value previously set usingsetBeanClass(java.lang.Class)
. You must call either this method orsetBeanClass(java.lang.Class)
beforecreate()
.- Parameters:
bean
- the initial bean
-
setBeanClass
Set the class of the bean that the generated map should support. You must call either this method orsetBeanClass(java.lang.Class)
beforecreate()
.- Parameters:
beanClass
- the class of the bean
-
setRequire
public void setRequire(int require) Limit the properties reflected by the generated map.- Parameters:
require
- any combination ofBeanMap.REQUIRE_GETTER
andBeanMap.REQUIRE_SETTER
; default is zero (any property allowed)
-
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
Create a new instance of theBeanMap
. An existing generated class will be reused if possible. -
generateClass
- Throws:
Exception
-
firstInstance
- Specified by:
firstInstance
in classAbstractClassGenerator
-
nextInstance
- Specified by:
nextInstance
in classAbstractClassGenerator
-