Interface ImportBeanDefinitionRegistrar
- All Known Implementing Classes:
- AbstractHttpServiceRegistrar, AutoProxyRegistrar
Configuration classes. Useful when operating at the bean definition
level (as opposed to @Bean method/instance level) is desired or necessary.
Along with @Configuration and ImportSelector, classes of this type
may be provided to the @Import annotation (or may also be returned from an
ImportSelector).
An ImportBeanDefinitionRegistrar may implement any of the following
Aware interfaces, and their respective
methods will be called prior to registerBeanDefinitions(AnnotationMetadata, BeanDefinitionRegistry, BeanNameGenerator):
Alternatively, the class may provide a single constructor with one or more of the following supported parameter types:
See implementations and associated unit tests for usage examples.
- Since:
- 3.1
- Author:
- Chris Beams, Juergen Hoeller
- See Also:
- 
Method SummaryModifier and TypeMethodDescriptiondefault voidregisterBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) Register bean definitions as necessary based on the given annotation metadata of the importing@Configurationclass.default voidregisterBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry, BeanNameGenerator importBeanNameGenerator) Register bean definitions as necessary based on the given annotation metadata of the importing@Configurationclass.
- 
Method Details- 
registerBeanDefinitionsdefault void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry, BeanNameGenerator importBeanNameGenerator) Register bean definitions as necessary based on the given annotation metadata of the importing@Configurationclass.Note that BeanDefinitionRegistryPostProcessortypes may not be registered here, due to lifecycle constraints related to@Configurationclass processing.The default implementation delegates to registerBeanDefinitions(AnnotationMetadata, BeanDefinitionRegistry).- Parameters:
- importingClassMetadata- annotation metadata of the importing class
- registry- current bean definition registry
- importBeanNameGenerator- the bean name generator strategy for imported beans:- ConfigurationClassPostProcessor.IMPORT_BEAN_NAME_GENERATORby default, or a user-provided one if- ConfigurationClassPostProcessor.setBeanNameGenerator(BeanNameGenerator)has been set. In the latter case, the passed-in strategy will be the same used for component scanning in the containing application context (otherwise, the default component-scan naming strategy is- AnnotationBeanNameGenerator.INSTANCE).
- Since:
- 5.2
- See Also:
 
- 
registerBeanDefinitionsdefault void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) Register bean definitions as necessary based on the given annotation metadata of the importing@Configurationclass.Note that BeanDefinitionRegistryPostProcessortypes may not be registered here, due to lifecycle constraints related to@Configurationclass processing.The default implementation is empty. - Parameters:
- importingClassMetadata- annotation metadata of the importing class
- registry- current bean definition registry
 
 
-