Rename @ImportConfigurationPropertiesBean
Rename `@ImportConfigurationPropertiesBean` to `@ConfigurationPropertiesImport`. Closes gh-23172
This commit is contained in:
@@ -46,9 +46,9 @@ import org.springframework.core.annotation.AliasFor;
|
||||
@Documented
|
||||
@EnableConfigurationProperties
|
||||
@ConfigurationProperties
|
||||
@Repeatable(ImportConfigurationPropertiesBeans.class)
|
||||
@Import(ImportConfigurationPropertiesBeanRegistrar.class)
|
||||
public @interface ImportConfigurationPropertiesBean {
|
||||
@Repeatable(ConfigurationPropertiesImports.class)
|
||||
@Import(ConfigurationPropertiesImportRegistrar.class)
|
||||
public @interface ConfigurationPropertiesImport {
|
||||
|
||||
/**
|
||||
* One or more types that should be imported as a bean.
|
||||
@@ -25,34 +25,34 @@ import org.springframework.core.type.AnnotationMetadata;
|
||||
|
||||
/**
|
||||
* {@link ImportBeanDefinitionRegistrar} for
|
||||
* {@link ImportConfigurationPropertiesBean @ImportConfigurationPropertiesBean}.
|
||||
* {@link ConfigurationPropertiesImport @ConfigurationPropertiesImport}.
|
||||
*
|
||||
* @author Phillip Webb
|
||||
*/
|
||||
class ImportConfigurationPropertiesBeanRegistrar implements ImportBeanDefinitionRegistrar {
|
||||
class ConfigurationPropertiesImportRegistrar implements ImportBeanDefinitionRegistrar {
|
||||
|
||||
@Override
|
||||
public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry,
|
||||
BeanNameGenerator importBeanNameGenerator) {
|
||||
ConfigurationPropertiesBeanRegistrar registrar = new ConfigurationPropertiesBeanRegistrar(registry);
|
||||
MergedAnnotations annotations = importingClassMetadata.getAnnotations();
|
||||
registerBeans(registrar, annotations.get(ImportConfigurationPropertiesBeans.class));
|
||||
registerBean(registrar, annotations.get(ImportConfigurationPropertiesBean.class));
|
||||
registerBeans(registrar, annotations.get(ConfigurationPropertiesImports.class));
|
||||
registerBean(registrar, annotations.get(ConfigurationPropertiesImport.class));
|
||||
}
|
||||
|
||||
private void registerBeans(ConfigurationPropertiesBeanRegistrar registrar,
|
||||
MergedAnnotation<ImportConfigurationPropertiesBeans> annotation) {
|
||||
MergedAnnotation<ConfigurationPropertiesImports> annotation) {
|
||||
if (!annotation.isPresent()) {
|
||||
return;
|
||||
}
|
||||
for (MergedAnnotation<ImportConfigurationPropertiesBean> containedAnnotation : annotation
|
||||
.getAnnotationArray(MergedAnnotation.VALUE, ImportConfigurationPropertiesBean.class)) {
|
||||
for (MergedAnnotation<ConfigurationPropertiesImport> containedAnnotation : annotation
|
||||
.getAnnotationArray(MergedAnnotation.VALUE, ConfigurationPropertiesImport.class)) {
|
||||
registerBean(registrar, containedAnnotation);
|
||||
}
|
||||
}
|
||||
|
||||
private void registerBean(ConfigurationPropertiesBeanRegistrar registrar,
|
||||
MergedAnnotation<ImportConfigurationPropertiesBean> annotation) {
|
||||
MergedAnnotation<ConfigurationPropertiesImport> annotation) {
|
||||
if (!annotation.isPresent()) {
|
||||
return;
|
||||
}
|
||||
@@ -25,24 +25,24 @@ import java.lang.annotation.Target;
|
||||
import org.springframework.context.annotation.Import;
|
||||
|
||||
/**
|
||||
* Container annotation that aggregates several {@link ImportConfigurationPropertiesBean}
|
||||
* Container annotation that aggregates several {@link ConfigurationPropertiesImport}
|
||||
* annotations.
|
||||
*
|
||||
* @author Phillip Webb
|
||||
* @since 2.4.0
|
||||
* @see ImportConfigurationPropertiesBean
|
||||
* @see ConfigurationPropertiesImport
|
||||
*/
|
||||
@Target(ElementType.TYPE)
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@Documented
|
||||
@EnableConfigurationProperties
|
||||
@Import(ImportConfigurationPropertiesBeanRegistrar.class)
|
||||
public @interface ImportConfigurationPropertiesBeans {
|
||||
@Import(ConfigurationPropertiesImportRegistrar.class)
|
||||
public @interface ConfigurationPropertiesImports {
|
||||
|
||||
/**
|
||||
* The contained {@link ImportConfigurationPropertiesBean} annotations.
|
||||
* The contained {@link ConfigurationPropertiesImport} annotations.
|
||||
* @return the contained annotations
|
||||
*/
|
||||
ImportConfigurationPropertiesBean[] value();
|
||||
ConfigurationPropertiesImport[] value();
|
||||
|
||||
}
|
||||
@@ -51,7 +51,7 @@ public @interface EnableConfigurationProperties {
|
||||
* {@link ConfigurationProperties @ConfigurationProperties} annotated beans with
|
||||
* Spring. Standard Spring Beans will also be scanned regardless of this value.
|
||||
* @return {@code @ConfigurationProperties} annotated beans to register
|
||||
* @see ImportConfigurationPropertiesBean
|
||||
* @see ConfigurationPropertiesImport
|
||||
*/
|
||||
Class<?>[] value() default {};
|
||||
|
||||
|
||||
@@ -26,11 +26,11 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.assertj.core.api.Assertions.assertThatIllegalStateException;
|
||||
|
||||
/**
|
||||
* Tests for {@link ImportConfigurationPropertiesBean}.
|
||||
* Tests for {@link ConfigurationPropertiesImport}.
|
||||
*
|
||||
* @author Phillip Webb
|
||||
*/
|
||||
class ImportConfigurationPropertiesBeanTests {
|
||||
class ConfigurationPropertiesImportTests {
|
||||
|
||||
@Test
|
||||
void importJavaBean() {
|
||||
@@ -86,7 +86,7 @@ class ImportConfigurationPropertiesBeanTests {
|
||||
}
|
||||
|
||||
@Configuration
|
||||
@ImportConfigurationPropertiesBean(prefix = "test", type = JavaBean.class)
|
||||
@ConfigurationPropertiesImport(prefix = "test", type = JavaBean.class)
|
||||
static class JavaBeanConfig {
|
||||
|
||||
}
|
||||
@@ -106,7 +106,7 @@ class ImportConfigurationPropertiesBeanTests {
|
||||
}
|
||||
|
||||
@Configuration
|
||||
@ImportConfigurationPropertiesBean(prefix = "test", type = ValueObject.class)
|
||||
@ConfigurationPropertiesImport(prefix = "test", type = ValueObject.class)
|
||||
static class ValueObjectConfig {
|
||||
|
||||
}
|
||||
@@ -126,7 +126,7 @@ class ImportConfigurationPropertiesBeanTests {
|
||||
}
|
||||
|
||||
@Configuration
|
||||
@ImportConfigurationPropertiesBean(prefix = "test", type = MultiConstructorValueObject.class)
|
||||
@ConfigurationPropertiesImport(prefix = "test", type = MultiConstructorValueObject.class)
|
||||
static class MultiConstructorValueObjectConfig {
|
||||
|
||||
}
|
||||
@@ -145,14 +145,14 @@ class ImportConfigurationPropertiesBeanTests {
|
||||
}
|
||||
|
||||
@Configuration
|
||||
@ImportConfigurationPropertiesBean(type = { ValueObject.class, JavaBean.class }, prefix = "test")
|
||||
@ConfigurationPropertiesImport(type = { ValueObject.class, JavaBean.class }, prefix = "test")
|
||||
static class ImportMultipleTypesConfig {
|
||||
|
||||
}
|
||||
|
||||
@Configuration
|
||||
@ImportConfigurationPropertiesBean(type = ValueObject.class, prefix = "vo")
|
||||
@ImportConfigurationPropertiesBean(type = JavaBean.class, prefix = "jb")
|
||||
@ConfigurationPropertiesImport(type = ValueObject.class, prefix = "vo")
|
||||
@ConfigurationPropertiesImport(type = JavaBean.class, prefix = "jb")
|
||||
static class ImportRepeatedAnnotationsConfig {
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user