public class RootBeanDefinition extends AbstractBeanDefinition
GenericBeanDefinitions.
A root bean definition is essentially the 'unified' bean definition view at runtime.
Root bean definitions may also be used for registering individual bean definitions
in the configuration phase. However, since Spring 2.5, the preferred way to register
bean definitions programmatically is the GenericBeanDefinition class.
GenericBeanDefinition has the advantage that it allows to dynamically define
parent dependencies, not 'hard-coding' the role as a root bean definition.
GenericBeanDefinition,
ChildBeanDefinition,
Serialized FormAUTOWIRE_AUTODETECT, AUTOWIRE_BY_NAME, AUTOWIRE_BY_TYPE, AUTOWIRE_CONSTRUCTOR, AUTOWIRE_NO, DEPENDENCY_CHECK_ALL, DEPENDENCY_CHECK_NONE, DEPENDENCY_CHECK_OBJECTS, DEPENDENCY_CHECK_SIMPLE, INFER_METHOD, SCOPE_DEFAULTROLE_APPLICATION, ROLE_INFRASTRUCTURE, ROLE_SUPPORT, SCOPE_PROTOTYPE, SCOPE_SINGLETON| Constructor and Description |
|---|
RootBeanDefinition()
Create a new RootBeanDefinition, to be configured through its bean
properties and configuration methods.
|
RootBeanDefinition(java.lang.Class<?> beanClass)
Create a new RootBeanDefinition for a singleton.
|
RootBeanDefinition(java.lang.Class<?> beanClass,
ConstructorArgumentValues cargs,
MutablePropertyValues pvs)
Create a new RootBeanDefinition for a singleton,
providing constructor arguments and property values.
|
RootBeanDefinition(java.lang.Class<?> beanClass,
int autowireMode,
boolean dependencyCheck)
Create a new RootBeanDefinition for a singleton,
using the given autowire mode.
|
RootBeanDefinition(RootBeanDefinition original)
Create a new RootBeanDefinition as deep copy of the given
bean definition.
|
RootBeanDefinition(java.lang.String beanClassName)
Create a new RootBeanDefinition for a singleton,
providing constructor arguments and property values.
|
RootBeanDefinition(java.lang.String beanClassName,
ConstructorArgumentValues cargs,
MutablePropertyValues pvs)
Create a new RootBeanDefinition for a singleton,
providing constructor arguments and property values.
|
| Modifier and Type | Method and Description |
|---|---|
RootBeanDefinition |
cloneBeanDefinition()
Clone this bean definition.
|
boolean |
equals(java.lang.Object other) |
BeanDefinitionHolder |
getDecoratedDefinition()
Return the target definition that is being decorated by this bean definition, if any.
|
java.lang.String |
getParentName()
Return the name of the parent definition of this bean definition, if any.
|
java.lang.reflect.AnnotatedElement |
getQualifiedElement()
Return the
AnnotatedElement defining qualifiers, if any. |
java.lang.reflect.Method |
getResolvedFactoryMethod()
Return the resolved factory method as a Java Method object, if available.
|
java.lang.Class<?> |
getTargetType()
Return the target type of this bean definition, if known
(either specified in advance or resolved on first instantiation).
|
boolean |
isExternallyManagedConfigMember(java.lang.reflect.Member configMember) |
boolean |
isExternallyManagedDestroyMethod(java.lang.String destroyMethod) |
boolean |
isExternallyManagedInitMethod(java.lang.String initMethod) |
boolean |
isFactoryMethod(java.lang.reflect.Method candidate)
Check whether the given candidate qualifies as a factory method.
|
void |
registerExternallyManagedConfigMember(java.lang.reflect.Member configMember) |
void |
registerExternallyManagedDestroyMethod(java.lang.String destroyMethod) |
void |
registerExternallyManagedInitMethod(java.lang.String initMethod) |
void |
setDecoratedDefinition(BeanDefinitionHolder decoratedDefinition)
Register a target definition that is being decorated by this bean definition.
|
void |
setParentName(java.lang.String parentName)
Set the name of the parent definition of this bean definition, if any.
|
void |
setQualifiedElement(java.lang.reflect.AnnotatedElement qualifiedElement)
Specify the
AnnotatedElement defining qualifiers,
to be used instead of the target class or factory method. |
void |
setTargetType(java.lang.Class<?> targetType)
Specify the target type of this bean definition, if known in advance.
|
void |
setTargetType(org.springframework.core.ResolvableType targetType)
Specify a generics-containing target type of this bean definition, if known in advance.
|
void |
setUniqueFactoryMethodName(java.lang.String name)
Specify a factory method name that refers to a non-overloaded method.
|
java.lang.String |
toString() |
addQualifier, applyDefaults, clone, copyQualifiersFrom, getAutowireMode, getBeanClass, getBeanClassName, getConstructorArgumentValues, getDependencyCheck, getDependsOn, getDescription, getDestroyMethodName, getFactoryBeanName, getFactoryMethodName, getInitMethodName, getMethodOverrides, getOriginatingBeanDefinition, getPropertyValues, getQualifier, getQualifiers, getResolvedAutowireMode, getResource, getResourceDescription, getRole, getScope, hasBeanClass, hasConstructorArgumentValues, hashCode, hasQualifier, isAbstract, isAutowireCandidate, isEnforceDestroyMethod, isEnforceInitMethod, isLazyInit, isLenientConstructorResolution, isNonPublicAccessAllowed, isPrimary, isPrototype, isSingleton, isSynthetic, overrideFrom, prepareMethodOverride, prepareMethodOverrides, resolveBeanClass, setAbstract, setAutowireCandidate, setAutowireMode, setBeanClass, setBeanClassName, setConstructorArgumentValues, setDependencyCheck, setDependsOn, setDescription, setDestroyMethodName, setEnforceDestroyMethod, setEnforceInitMethod, setFactoryBeanName, setFactoryMethodName, setInitMethodName, setLazyInit, setLenientConstructorResolution, setMethodOverrides, setNonPublicAccessAllowed, setOriginatingBeanDefinition, setPrimary, setPropertyValues, setResource, setResourceDescription, setRole, setScope, setSynthetic, validateaddMetadataAttribute, getAttribute, getMetadataAttribute, getSource, removeAttribute, setAttribute, setSourceattributeNames, copyAttributesFrom, hasAttributefinalize, getClass, notify, notifyAll, wait, wait, waitattributeNames, getAttribute, hasAttribute, removeAttribute, setAttributegetSourcepublic RootBeanDefinition()
AbstractBeanDefinition.setBeanClass(java.lang.Class<?>),
AbstractBeanDefinition.setScope(java.lang.String),
AbstractBeanDefinition.setConstructorArgumentValues(org.springframework.beans.factory.config.ConstructorArgumentValues),
AbstractBeanDefinition.setPropertyValues(org.springframework.beans.MutablePropertyValues)public RootBeanDefinition(java.lang.Class<?> beanClass)
beanClass - the class of the bean to instantiateAbstractBeanDefinition.setBeanClass(java.lang.Class<?>)public RootBeanDefinition(java.lang.Class<?> beanClass,
int autowireMode,
boolean dependencyCheck)
beanClass - the class of the bean to instantiateautowireMode - by name or type, using the constants in this interfacedependencyCheck - whether to perform a dependency check for objects
(not applicable to autowiring a constructor, thus ignored there)public RootBeanDefinition(java.lang.Class<?> beanClass,
ConstructorArgumentValues cargs,
MutablePropertyValues pvs)
beanClass - the class of the bean to instantiatecargs - the constructor argument values to applypvs - the property values to applypublic RootBeanDefinition(java.lang.String beanClassName)
Takes a bean class name to avoid eager loading of the bean class.
beanClassName - the name of the class to instantiatepublic RootBeanDefinition(java.lang.String beanClassName,
ConstructorArgumentValues cargs,
MutablePropertyValues pvs)
Takes a bean class name to avoid eager loading of the bean class.
beanClassName - the name of the class to instantiatecargs - the constructor argument values to applypvs - the property values to applypublic RootBeanDefinition(RootBeanDefinition original)
original - the original bean definition to copy frompublic java.lang.String getParentName()
BeanDefinitionpublic void setParentName(java.lang.String parentName)
BeanDefinitionpublic void setDecoratedDefinition(BeanDefinitionHolder decoratedDefinition)
public BeanDefinitionHolder getDecoratedDefinition()
public void setQualifiedElement(java.lang.reflect.AnnotatedElement qualifiedElement)
AnnotatedElement defining qualifiers,
to be used instead of the target class or factory method.setTargetType(ResolvableType),
getResolvedFactoryMethod()public java.lang.reflect.AnnotatedElement getQualifiedElement()
AnnotatedElement defining qualifiers, if any.
Otherwise, the factory method and target class will be checked.public void setTargetType(org.springframework.core.ResolvableType targetType)
public void setTargetType(java.lang.Class<?> targetType)
public java.lang.Class<?> getTargetType()
public void setUniqueFactoryMethodName(java.lang.String name)
public boolean isFactoryMethod(java.lang.reflect.Method candidate)
public java.lang.reflect.Method getResolvedFactoryMethod()
null if not found or not resolved yetpublic void registerExternallyManagedConfigMember(java.lang.reflect.Member configMember)
public boolean isExternallyManagedConfigMember(java.lang.reflect.Member configMember)
public void registerExternallyManagedInitMethod(java.lang.String initMethod)
public boolean isExternallyManagedInitMethod(java.lang.String initMethod)
public void registerExternallyManagedDestroyMethod(java.lang.String destroyMethod)
public boolean isExternallyManagedDestroyMethod(java.lang.String destroyMethod)
public RootBeanDefinition cloneBeanDefinition()
AbstractBeanDefinitioncloneBeanDefinition in class AbstractBeanDefinitionpublic boolean equals(java.lang.Object other)
equals in class AbstractBeanDefinitionpublic java.lang.String toString()
toString in class AbstractBeanDefinition