## org.springframework.context.annotation
Interface ImportBeanDefinitionRegistrar

All Known Implementing Classes:
  AutoProxyRegistrar

    public interface ImportBeanDefinitionRegistrar

Interface to be implemented by types that register additional bean definitions when processing @`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`).

See implementations and associated unit tests for usage examples.

Since:
  3.1
Author:
  Chris Beams
See Also:
  `Import`, `ImportSelector`, `Configuration`

Method Summary
`void` `registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry)` Register bean definitions as necessary based on the given annotation metadata of the importing `@Configuration` class.

Method Detail

### registerBeanDefinitions

    void registerBeanDefinitions(AnnotationMetadata importingClassMetadata,
                                 BeanDefinitionRegistry registry)

  Register bean definitions as necessary based on the given annotation metadata of the importing `@Configuration` class.

  Note that `BeanDefinitionRegistryPostProcessor` types may not be registered here, due to lifecycle constraints related to `@Configuration` class processing.

  Parameters:
    `importingClassMetadata` - annotation metadata of the importing class
    `registry` - current bean definition registry