From 068916aa54890a5af7b0064bc5aa7247f5e5ac33 Mon Sep 17 00:00:00 2001 From: Oliver Drotbohm Date: Tue, 2 May 2023 15:41:43 +0200 Subject: [PATCH] =?UTF-8?q?GH-195=20-=20Remove=20support=20for=20legacy=20?= =?UTF-8?q?spring.modulith.jdbc-=E2=80=A6=20namespace=20in=20JDBC-based=20?= =?UTF-8?q?event=20support.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...JdbcEventPublicationAutoConfiguration.java | 40 +------------------ ...tionAutoConfigurationIntegrationTests.java | 2 +- 2 files changed, 3 insertions(+), 39 deletions(-) diff --git a/spring-modulith-events/spring-modulith-events-jdbc/src/main/java/org/springframework/modulith/events/jdbc/JdbcEventPublicationAutoConfiguration.java b/spring-modulith-events/spring-modulith-events-jdbc/src/main/java/org/springframework/modulith/events/jdbc/JdbcEventPublicationAutoConfiguration.java index 0329d240..03869937 100644 --- a/spring-modulith-events/spring-modulith-events-jdbc/src/main/java/org/springframework/modulith/events/jdbc/JdbcEventPublicationAutoConfiguration.java +++ b/spring-modulith-events/spring-modulith-events-jdbc/src/main/java/org/springframework/modulith/events/jdbc/JdbcEventPublicationAutoConfiguration.java @@ -15,20 +15,13 @@ */ package org.springframework.modulith.events.jdbc; -import java.util.List; - import javax.sql.DataSource; -import org.springframework.boot.autoconfigure.condition.ConditionOutcome; -import org.springframework.boot.autoconfigure.condition.SpringBootCondition; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.jdbc.DatabaseDriver; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.ConditionContext; -import org.springframework.context.annotation.Conditional; import org.springframework.context.annotation.Configuration; -import org.springframework.core.env.Environment; import org.springframework.core.io.ResourceLoader; -import org.springframework.core.type.AnnotatedTypeMetadata; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.modulith.events.EventSerializer; import org.springframework.modulith.events.config.EventPublicationConfigurationExtension; @@ -54,39 +47,10 @@ class JdbcEventPublicationAutoConfiguration implements EventPublicationConfigura } @Bean - @Conditional(SchemaInitializationEnabled.class) + @ConditionalOnProperty(name = "spring.modulith.events.jdbc.schema-initialization.enabled", havingValue = "true") DatabaseSchemaInitializer databaseSchemaInitializer(JdbcTemplate jdbcTemplate, ResourceLoader resourceLoader, DatabaseType databaseType) { return new DatabaseSchemaInitializer(jdbcTemplate, resourceLoader, databaseType); } - - /** - * Combined condition to support the legacy schema initialization property as well as the new one. - * - * @author Oliver Drotbohm - */ - static class SchemaInitializationEnabled extends SpringBootCondition { - - private static final String LEGACY = "spring.modulith.events.jdbc-schema-initialization.enabled"; - private static final String CURRENT = "spring.modulith.events.jdbc.schema-initialization.enabled"; - - /* - * (non-Javadoc) - * @see org.springframework.boot.autoconfigure.condition.SpringBootCondition#getMatchOutcome(org.springframework.context.annotation.ConditionContext, org.springframework.core.type.AnnotatedTypeMetadata) - */ - @Override - public ConditionOutcome getMatchOutcome(ConditionContext context, AnnotatedTypeMetadata metadata) { - - Environment environment = context.getEnvironment(); - - var enabled = List.of(CURRENT, LEGACY).stream() - .map(it -> environment.getProperty(it, Boolean.class)) - .anyMatch(Boolean.TRUE::equals); - - return enabled // - ? ConditionOutcome.match("Schema initialization explicitly enabled.") // - : ConditionOutcome.noMatch("Schema initialization disabled by default."); - } - } } diff --git a/spring-modulith-events/spring-modulith-events-jdbc/src/test/java/org/springframework/modulith/events/jdbc/JdbcEventPublicationAutoConfigurationIntegrationTests.java b/spring-modulith-events/spring-modulith-events-jdbc/src/test/java/org/springframework/modulith/events/jdbc/JdbcEventPublicationAutoConfigurationIntegrationTests.java index e1966db9..4bc9b698 100644 --- a/spring-modulith-events/spring-modulith-events-jdbc/src/test/java/org/springframework/modulith/events/jdbc/JdbcEventPublicationAutoConfigurationIntegrationTests.java +++ b/spring-modulith-events/spring-modulith-events-jdbc/src/test/java/org/springframework/modulith/events/jdbc/JdbcEventPublicationAutoConfigurationIntegrationTests.java @@ -33,7 +33,7 @@ import org.springframework.modulith.testapp.TestApplication; */ @SpringBootTest( classes = TestApplication.class, - properties = "spring.modulith.events.jdbc-schema-initialization.enabled=true") + properties = "spring.modulith.events.jdbc.schema-initialization.enabled=true") class JdbcEventPublicationAutoConfigurationIntegrationTests { @Autowired ApplicationContext context;