Class GenericBeanDefinition
java.lang.Object
org.springframework.core.AttributeAccessorSupport
org.springframework.beans.BeanMetadataAttributeAccessor
org.springframework.beans.factory.support.AbstractBeanDefinition
org.springframework.beans.factory.support.GenericBeanDefinition
- All Implemented Interfaces:
Serializable
,Cloneable
,BeanMetadataElement
,BeanDefinition
,AttributeAccessor
- Direct Known Subclasses:
AnnotatedGenericBeanDefinition
,ScannedGenericBeanDefinition
GenericBeanDefinition is a one-stop shop for standard bean definition purposes.
Like any bean definition, it allows for specifying a class plus optionally
constructor argument values and property values. Additionally, deriving from a
parent bean definition can be flexibly configured through the "parentName" property.
In general, use this GenericBeanDefinition
class for the purpose of
registering user-visible bean definitions (which a post-processor might operate on,
potentially even reconfiguring the parent name). Use RootBeanDefinition
/
ChildBeanDefinition
where parent/child relationships happen to be pre-determined.
- Since:
- 2.5
- Author:
- Juergen Hoeller
- See Also:
-
Field Summary
Fields inherited from class org.springframework.beans.factory.support.AbstractBeanDefinition
AUTOWIRE_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_DEFAULT
Fields inherited from interface org.springframework.beans.factory.config.BeanDefinition
ROLE_APPLICATION, ROLE_INFRASTRUCTURE, ROLE_SUPPORT, SCOPE_PROTOTYPE, SCOPE_SINGLETON
-
Constructor Summary
ConstructorsConstructorDescriptionCreate a new GenericBeanDefinition, to be configured through its bean properties and configuration methods.GenericBeanDefinition
(BeanDefinition original) Create a new GenericBeanDefinition as deep copy of the given bean definition. -
Method Summary
Modifier and TypeMethodDescriptionClone this bean definition.boolean
Return the name of the parent definition of this bean definition, if any.void
setParentName
(String parentName) Set the name of the parent definition of this bean definition, if any.toString()
Methods inherited from class org.springframework.beans.factory.support.AbstractBeanDefinition
addQualifier, applyDefaults, clone, copyQualifiersFrom, getAutowireMode, getBeanClass, getBeanClassName, getConstructorArgumentValues, getDependencyCheck, getDependsOn, getDescription, getDestroyMethodName, getDestroyMethodNames, getFactoryBeanName, getFactoryMethodName, getInitMethodName, getInitMethodNames, getInstanceSupplier, getLazyInit, getMethodOverrides, getOriginatingBeanDefinition, getPropertyValues, getQualifier, getQualifiers, getResolvableType, getResolvedAutowireMode, getResource, getResourceDescription, getRole, getScope, hasBeanClass, hasConstructorArgumentValues, hashCode, hasMethodOverrides, hasPropertyValues, 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, setDestroyMethodNames, setEnforceDestroyMethod, setEnforceInitMethod, setFactoryBeanName, setFactoryMethodName, setInitMethodName, setInitMethodNames, setInstanceSupplier, setLazyInit, setLenientConstructorResolution, setMethodOverrides, setNonPublicAccessAllowed, setOriginatingBeanDefinition, setPrimary, setPropertyValues, setResource, setResourceDescription, setRole, setScope, setSynthetic, validate
Methods inherited from class org.springframework.beans.BeanMetadataAttributeAccessor
addMetadataAttribute, getAttribute, getMetadataAttribute, getSource, removeAttribute, setAttribute, setSource
Methods inherited from class org.springframework.core.AttributeAccessorSupport
attributeNames, computeAttribute, copyAttributesFrom, hasAttribute
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.springframework.core.AttributeAccessor
attributeNames, computeAttribute, getAttribute, hasAttribute, removeAttribute, setAttribute
Methods inherited from interface org.springframework.beans.BeanMetadataElement
getSource
-
Constructor Details
-
GenericBeanDefinition
public GenericBeanDefinition()Create a new GenericBeanDefinition, to be configured through its bean properties and configuration methods.- See Also:
-
AbstractBeanDefinition.setBeanClass(java.lang.Class<?>)
AbstractBeanDefinition.setScope(java.lang.String)
AbstractBeanDefinition.setConstructorArgumentValues(org.springframework.beans.factory.config.ConstructorArgumentValues)
AbstractBeanDefinition.setPropertyValues(org.springframework.beans.MutablePropertyValues)
-
GenericBeanDefinition
Create a new GenericBeanDefinition as deep copy of the given bean definition.- Parameters:
original
- the original bean definition to copy from
-
-
Method Details
-
setParentName
Description copied from interface:BeanDefinition
Set the name of the parent definition of this bean definition, if any. -
getParentName
Description copied from interface:BeanDefinition
Return the name of the parent definition of this bean definition, if any. -
cloneBeanDefinition
Description copied from class:AbstractBeanDefinition
Clone this bean definition. To be implemented by concrete subclasses.- Specified by:
cloneBeanDefinition
in classAbstractBeanDefinition
- Returns:
- the cloned bean definition object
-
equals
- Overrides:
equals
in classAbstractBeanDefinition
-
toString
- Overrides:
toString
in classAbstractBeanDefinition
-