Class SimpleBeanDefinitionRegistry
- java.lang.Object
- org.springframework.core.SimpleAliasRegistry
- org.springframework.beans.factory.support.SimpleBeanDefinitionRegistry
- All Implemented Interfaces:
BeanDefinitionRegistry
,AliasRegistry
public class SimpleBeanDefinitionRegistry extends SimpleAliasRegistry implements BeanDefinitionRegistry
Simple implementation of theBeanDefinitionRegistry
interface. Provides registry capabilities only, with no factory capabilities built in. Can for example be used for testing bean definition readers.- Since:
- 2.5.2
- Author:
- Juergen Hoeller
Constructor Summary
Constructors Constructor Description SimpleBeanDefinitionRegistry()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
containsBeanDefinition(String beanName)
Check if this registry contains a bean definition with the given name.BeanDefinition
getBeanDefinition(String beanName)
Return the BeanDefinition for the given bean name.int
getBeanDefinitionCount()
Return the number of beans defined in the registry.String[]
getBeanDefinitionNames()
Return the names of all beans defined in this registry.boolean
isBeanNameInUse(String beanName)
Determine whether the given bean name is already in use within this registry, i.e.void
registerBeanDefinition(String beanName, BeanDefinition beanDefinition)
Register a new bean definition with this registry.void
removeBeanDefinition(String beanName)
Remove the BeanDefinition for the given name.Methods inherited from class org.springframework.core.SimpleAliasRegistry
allowAliasOverriding, canonicalName, checkForAliasCircle, getAliases, hasAlias, isAlias, registerAlias, removeAlias, resolveAliases
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.springframework.core.AliasRegistry
getAliases, isAlias, registerAlias, removeAlias
Constructor Detail
SimpleBeanDefinitionRegistry
public SimpleBeanDefinitionRegistry()
Method Detail
registerBeanDefinition
public void registerBeanDefinition(String beanName, BeanDefinition beanDefinition) throws BeanDefinitionStoreException
Description copied from interface:BeanDefinitionRegistry
Register a new bean definition with this registry. Must support RootBeanDefinition and ChildBeanDefinition.- Specified by:
registerBeanDefinition
in interfaceBeanDefinitionRegistry
- Parameters:
beanName
- the name of the bean instance to registerbeanDefinition
- definition of the bean instance to register- Throws:
BeanDefinitionStoreException
- if the BeanDefinition is invalid or if there is already a BeanDefinition for the specified bean name (and we are not allowed to override it)- See Also:
GenericBeanDefinition
,RootBeanDefinition
,ChildBeanDefinition
removeBeanDefinition
public void removeBeanDefinition(String beanName) throws NoSuchBeanDefinitionException
Description copied from interface:BeanDefinitionRegistry
Remove the BeanDefinition for the given name.- Specified by:
removeBeanDefinition
in interfaceBeanDefinitionRegistry
- Parameters:
beanName
- the name of the bean instance to register- Throws:
NoSuchBeanDefinitionException
- if there is no such bean definition
getBeanDefinition
public BeanDefinition getBeanDefinition(String beanName) throws NoSuchBeanDefinitionException
Description copied from interface:BeanDefinitionRegistry
Return the BeanDefinition for the given bean name.- Specified by:
getBeanDefinition
in interfaceBeanDefinitionRegistry
- Parameters:
beanName
- name of the bean to find a definition for- Returns:
- the BeanDefinition for the given name (never
null
) - Throws:
NoSuchBeanDefinitionException
- if there is no such bean definition
containsBeanDefinition
public boolean containsBeanDefinition(String beanName)
Description copied from interface:BeanDefinitionRegistry
Check if this registry contains a bean definition with the given name.- Specified by:
containsBeanDefinition
in interfaceBeanDefinitionRegistry
- Parameters:
beanName
- the name of the bean to look for- Returns:
- if this registry contains a bean definition with the given name
getBeanDefinitionNames
public String[] getBeanDefinitionNames()
Description copied from interface:BeanDefinitionRegistry
Return the names of all beans defined in this registry.- Specified by:
getBeanDefinitionNames
in interfaceBeanDefinitionRegistry
- Returns:
- the names of all beans defined in this registry, or an empty array if none defined
getBeanDefinitionCount
public int getBeanDefinitionCount()
Description copied from interface:BeanDefinitionRegistry
Return the number of beans defined in the registry.- Specified by:
getBeanDefinitionCount
in interfaceBeanDefinitionRegistry
- Returns:
- the number of beans defined in the registry
isBeanNameInUse
public boolean isBeanNameInUse(String beanName)
Description copied from interface:BeanDefinitionRegistry
Determine whether the given bean name is already in use within this registry, i.e. whether there is a local bean or alias registered under this name.- Specified by:
isBeanNameInUse
in interfaceBeanDefinitionRegistry
- Parameters:
beanName
- the name to check- Returns:
- whether the given bean name is already in use