org.springframework.context.annotation
Class AnnotatedBeanDefinitionReader

java.lang.Object
  extended by org.springframework.context.annotation.AnnotatedBeanDefinitionReader

public class AnnotatedBeanDefinitionReader
extends Object

Convenient adapter for programmatic registration of annotated bean classes. This is an alternative to ClassPathBeanDefinitionScanner, applying the same resolution of annotations but for explicitly registered classes only.

Since:
3.0
Author:
Juergen Hoeller, Chris Beams, Sam Brannen
See Also:
AnnotationConfigApplicationContext.register(java.lang.Class...)

Constructor Summary
AnnotatedBeanDefinitionReader(BeanDefinitionRegistry registry)
          Create a new AnnotatedBeanDefinitionReader for the given registry.
AnnotatedBeanDefinitionReader(BeanDefinitionRegistry registry, Environment environment)
          Create a new AnnotatedBeanDefinitionReader for the given registry and using the given Environment.
 
Method Summary
 BeanDefinitionRegistry getRegistry()
          Return the BeanDefinitionRegistry that this scanner operates on.
 void register(Class<?>... annotatedClasses)
           
 void registerBean(Class<?> annotatedClass)
           
 void registerBean(Class<?> annotatedClass, Class<? extends Annotation>... qualifiers)
           
 void registerBean(Class<?> annotatedClass, String name, Class<? extends Annotation>... qualifiers)
           
 void setBeanNameGenerator(BeanNameGenerator beanNameGenerator)
          Set the BeanNameGenerator to use for detected bean classes.
 void setEnvironment(Environment environment)
          Set the Environment to use when evaluating whether @Profile-annotated component classes should be registered.
 void setScopeMetadataResolver(ScopeMetadataResolver scopeMetadataResolver)
          Set the ScopeMetadataResolver to use for detected bean classes.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AnnotatedBeanDefinitionReader

public AnnotatedBeanDefinitionReader(BeanDefinitionRegistry registry)
Create a new AnnotatedBeanDefinitionReader for the given registry. If the registry is EnvironmentCapable, e.g. is an ApplicationContext, the Environment will be inherited, otherwise a new StandardEnvironment will be created and used.

Parameters:
registry - the BeanFactory to load bean definitions into, in the form of a BeanDefinitionRegistry
See Also:
AnnotatedBeanDefinitionReader(BeanDefinitionRegistry, Environment), setEnvironment(Environment)

AnnotatedBeanDefinitionReader

public AnnotatedBeanDefinitionReader(BeanDefinitionRegistry registry,
                                     Environment environment)
Create a new AnnotatedBeanDefinitionReader for the given registry and using the given Environment.

Parameters:
registry - the BeanFactory to load bean definitions into, in the form of a BeanDefinitionRegistry
environment - the Environment to use when evaluating bean definition profiles.
Since:
3.1
Method Detail

getRegistry

public final BeanDefinitionRegistry getRegistry()
Return the BeanDefinitionRegistry that this scanner operates on.


setEnvironment

public void setEnvironment(Environment environment)
Set the Environment to use when evaluating whether @Profile-annotated component classes should be registered.

The default is a StandardEnvironment.

See Also:
registerBean(Class, String, Class...)

setBeanNameGenerator

public void setBeanNameGenerator(BeanNameGenerator beanNameGenerator)
Set the BeanNameGenerator to use for detected bean classes.

The default is a AnnotationBeanNameGenerator.


setScopeMetadataResolver

public void setScopeMetadataResolver(ScopeMetadataResolver scopeMetadataResolver)
Set the ScopeMetadataResolver to use for detected bean classes.

The default is an AnnotationScopeMetadataResolver.


register

public void register(Class<?>... annotatedClasses)

registerBean

public void registerBean(Class<?> annotatedClass)

registerBean

public void registerBean(Class<?> annotatedClass,
                         Class<? extends Annotation>... qualifiers)

registerBean

public void registerBean(Class<?> annotatedClass,
                         String name,
                         Class<? extends Annotation>... qualifiers)