public interface ImportSelector
Configuration
class(es) should be imported based on a given selection criteria, usually one or
more annotation attributes.
An ImportSelector
may implement any of the following
Aware
interfaces,
and their respective methods will be called prior to selectImports(org.springframework.core.type.AnnotationMetadata)
:
Alternatively, the class may provide a single constructor with one or more of the following supported parameter types:
ImportSelector
implementations are usually processed in the same way
as regular @Import
annotations, however, it is also possible to defer
selection of imports until all @Configuration
classes have been processed
(see DeferredImportSelector
for details).
DeferredImportSelector
,
Import
,
ImportBeanDefinitionRegistrar
,
Configuration
Modifier and Type | Method and Description |
---|---|
default Predicate<String> |
getExclusionFilter()
Return a predicate for excluding classes from the import candidates, to be
transitively applied to all classes found through this selector's imports.
|
String[] |
selectImports(AnnotationMetadata importingClassMetadata)
Select and return the names of which class(es) should be imported based on
the
AnnotationMetadata of the importing @Configuration class. |
String[] selectImports(AnnotationMetadata importingClassMetadata)
AnnotationMetadata
of the importing @Configuration
class.@Nullable default Predicate<String> getExclusionFilter()
If this predicate returns true
for a given fully-qualified
class name, said class will not be considered as an imported configuration
class, bypassing class file loading as well as metadata introspection.
null
if none