From bf88405121f91b48b18ca46bc0101a026bbbb140 Mon Sep 17 00:00:00 2001 From: Stephane Nicoll Date: Fri, 5 Nov 2021 14:20:37 +0100 Subject: [PATCH] Flag BeanDefinitionRegistryPostProcessor beans with role infrastructure Closes gh-28540 --- .../webservices/WebServicesAutoConfiguration.java | 2 ++ .../test/autoconfigure/jdbc/TestDatabaseAutoConfiguration.java | 2 ++ .../boot/test/context/ImportsContextCustomizer.java | 3 ++- 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/webservices/WebServicesAutoConfiguration.java b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/webservices/WebServicesAutoConfiguration.java index 33bb40f1ad6e..ace1a9ae1af9 100644 --- a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/webservices/WebServicesAutoConfiguration.java +++ b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/webservices/WebServicesAutoConfiguration.java @@ -43,6 +43,7 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Conditional; import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Role; import org.springframework.core.io.Resource; import org.springframework.util.StringUtils; import org.springframework.ws.config.annotation.EnableWs; @@ -82,6 +83,7 @@ public ServletRegistrationBean messageDispatcherServle } @Bean + @Role(BeanDefinition.ROLE_INFRASTRUCTURE) @Conditional(OnWsdlLocationsCondition.class) public static WsdlDefinitionBeanFactoryPostProcessor wsdlDefinitionBeanFactoryPostProcessor() { return new WsdlDefinitionBeanFactoryPostProcessor(); diff --git a/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/jdbc/TestDatabaseAutoConfiguration.java b/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/jdbc/TestDatabaseAutoConfiguration.java index 6548d2a39c6e..6c2a8c773bed 100644 --- a/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/jdbc/TestDatabaseAutoConfiguration.java +++ b/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/jdbc/TestDatabaseAutoConfiguration.java @@ -41,6 +41,7 @@ import org.springframework.context.EnvironmentAware; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Role; import org.springframework.core.Ordered; import org.springframework.core.annotation.Order; import org.springframework.core.env.ConfigurableEnvironment; @@ -70,6 +71,7 @@ public DataSource dataSource(Environment environment) { } @Bean + @Role(BeanDefinition.ROLE_INFRASTRUCTURE) @ConditionalOnProperty(prefix = "spring.test.database", name = "replace", havingValue = "ANY", matchIfMissing = true) static EmbeddedDataSourceBeanFactoryPostProcessor embeddedDataSourceBeanFactoryPostProcessor() { diff --git a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/context/ImportsContextCustomizer.java b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/context/ImportsContextCustomizer.java index 3d33b764ce5e..04b0691567c8 100644 --- a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/context/ImportsContextCustomizer.java +++ b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/context/ImportsContextCustomizer.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2019 the original author or authors. + * Copyright 2012-2021 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -83,6 +83,7 @@ public void customizeContext(ConfigurableApplicationContext context, private void registerCleanupPostProcessor(BeanDefinitionRegistry registry, AnnotatedBeanDefinitionReader reader) { BeanDefinition definition = registerBean(registry, reader, ImportsCleanupPostProcessor.BEAN_NAME, ImportsCleanupPostProcessor.class); + definition.setRole(BeanDefinition.ROLE_INFRASTRUCTURE); definition.getConstructorArgumentValues().addIndexedArgumentValue(0, this.testClass); }