org.springframework.beans.factory.support
Interface BeanDefinitionRegistry

All Known Implementing Classes:
DefaultListableBeanFactory, GenericApplicationContext

public interface BeanDefinitionRegistry

Interface for registries that hold bean definitions, i.e. RootBeanDefinition and ChildBeanDefinition instances.

Typically implemented by bean factories that work with the AbstractBeanDefinition hierarchy internally.

Since:
26.11.2003
Author:
Juergen Hoeller

Method Summary
 boolean containsBeanDefinition(String beanName)
          Check if this registry contains a bean definition with the given name.
 String[] getAliases(String beanName)
          Return the aliases for the given bean name, if defined.
 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.
 void registerAlias(String beanName, String alias)
          Given a bean name, create an alias.
 void registerBeanDefinition(String beanName, BeanDefinition beanDefinition)
          Register a new bean definition with this registry.
 

Method Detail

getBeanDefinitionCount

public int getBeanDefinitionCount()
Return the number of beans defined in the registry.

Returns:
the number of beans defined in the registry

getBeanDefinitionNames

public String[] getBeanDefinitionNames()
Return the names of all beans defined in this registry.

Returns:
the names of all beans defined in this registry, or an empty array if none defined

containsBeanDefinition

public boolean containsBeanDefinition(String beanName)
Check if this registry contains a bean definition with the given name.

Parameters:
beanName - the name of the bean to look for
Returns:
if this bean factory contains a bean definition with the given name

getBeanDefinition

public BeanDefinition getBeanDefinition(String beanName)
                                 throws BeansException
Return the BeanDefinition for the given bean name.

Parameters:
beanName - name of the bean to find a definition for
Returns:
the BeanDefinition for the given name (never null)
Throws:
NoSuchBeanDefinitionException - if the bean definition cannot be resolved
BeansException - in case of errors

registerBeanDefinition

public void registerBeanDefinition(String beanName,
                                   BeanDefinition beanDefinition)
                            throws BeansException
Register a new bean definition with this registry. Must support RootBeanDefinition and ChildBeanDefinition.

Parameters:
beanName - the name of the bean instance to register
beanDefinition - definition of the bean instance to register
Throws:
BeansException - if the bean definition is invalid
See Also:
RootBeanDefinition, ChildBeanDefinition

getAliases

public String[] getAliases(String beanName)
                    throws NoSuchBeanDefinitionException
Return the aliases for the given bean name, if defined.

Will ask the parent factory if the bean cannot be found in this factory instance.

Parameters:
beanName - the bean name to check for aliases
Returns:
the aliases, or an empty array if none
Throws:
NoSuchBeanDefinitionException - if there's no such bean definition

registerAlias

public void registerAlias(String beanName,
                          String alias)
                   throws BeansException
Given a bean name, create an alias. We typically use this method to support names that are illegal within XML ids (used for bean names).

Parameters:
beanName - the name of the bean
alias - alias that will behave the same as the bean name
Throws:
NoSuchBeanDefinitionException - if there is no bean with the given name
BeansException - if the alias is already in use


Copyright (C) 2003-2004 The Spring Framework Project.