Package org.springframework.beans.factory.support

# Class SimpleBeanDefinitionRegistry

java.lang.Object
org.springframework.core.SimpleAliasRegistry
org.springframework.beans.factory.support.SimpleBeanDefinitionRegistry

All Implemented Interfaces:
  `BeanDefinitionRegistry`, `org.springframework.core.AliasRegistry`

public class SimpleBeanDefinitionRegistry extends org.springframework.core.SimpleAliasRegistry implements BeanDefinitionRegistry
Simple implementation of the `BeanDefinitionRegistry` 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

## Field Summary

### Fields inherited from class org.springframework.core.SimpleAliasRegistry

`logger`

## Constructor Summary

Constructors
Constructor
Description
`SimpleBeanDefinitionRegistry()`

## Method Summary

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`

### Methods inherited from interface org.springframework.beans.factory.support.BeanDefinitionRegistry

`isBeanDefinitionOverridable`

## Constructor Details

### SimpleBeanDefinitionRegistry

public SimpleBeanDefinitionRegistry()

## Method Details

### 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 interface `BeanDefinitionRegistry`
Parameters:
  `beanName` - the name of the bean instance to register
  `beanDefinition` - definition of the bean instance to register
Throws:
  `BeanDefinitionStoreException` - if the BeanDefinition is invalid
  `BeanDefinitionOverrideException` - 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 interface `BeanDefinitionRegistry`
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 interface `BeanDefinitionRegistry`
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 interface `BeanDefinitionRegistry`
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 interface `BeanDefinitionRegistry`
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 interface `BeanDefinitionRegistry`
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 interface `BeanDefinitionRegistry`
Parameters:
  `beanName` - the name to check
Returns:
  whether the given bean name is already in use