15
15
*/
16
16
package org .springframework .modulith .events .jdbc ;
17
17
18
- import java .util .List ;
19
-
20
18
import javax .sql .DataSource ;
21
19
22
- import org .springframework .boot .autoconfigure .condition .ConditionOutcome ;
23
- import org .springframework .boot .autoconfigure .condition .SpringBootCondition ;
20
+ import org .springframework .boot .autoconfigure .condition .ConditionalOnProperty ;
24
21
import org .springframework .boot .jdbc .DatabaseDriver ;
25
22
import org .springframework .context .annotation .Bean ;
26
- import org .springframework .context .annotation .ConditionContext ;
27
- import org .springframework .context .annotation .Conditional ;
28
23
import org .springframework .context .annotation .Configuration ;
29
- import org .springframework .core .env .Environment ;
30
24
import org .springframework .core .io .ResourceLoader ;
31
- import org .springframework .core .type .AnnotatedTypeMetadata ;
32
25
import org .springframework .jdbc .core .JdbcTemplate ;
33
26
import org .springframework .modulith .events .EventSerializer ;
34
27
import org .springframework .modulith .events .config .EventPublicationConfigurationExtension ;
@@ -54,39 +47,10 @@ JdbcEventPublicationRepository jdbcEventPublicationRepository(JdbcTemplate jdbcT
54
47
}
55
48
56
49
@ Bean
57
- @ Conditional ( SchemaInitializationEnabled . class )
50
+ @ ConditionalOnProperty ( name = "spring.modulith.events.jdbc.schema-initialization.enabled" , havingValue = "true" )
58
51
DatabaseSchemaInitializer databaseSchemaInitializer (JdbcTemplate jdbcTemplate , ResourceLoader resourceLoader ,
59
52
DatabaseType databaseType ) {
60
53
61
54
return new DatabaseSchemaInitializer (jdbcTemplate , resourceLoader , databaseType );
62
55
}
63
-
64
- /**
65
- * Combined condition to support the legacy schema initialization property as well as the new one.
66
- *
67
- * @author Oliver Drotbohm
68
- */
69
- static class SchemaInitializationEnabled extends SpringBootCondition {
70
-
71
- private static final String LEGACY = "spring.modulith.events.jdbc-schema-initialization.enabled" ;
72
- private static final String CURRENT = "spring.modulith.events.jdbc.schema-initialization.enabled" ;
73
-
74
- /*
75
- * (non-Javadoc)
76
- * @see org.springframework.boot.autoconfigure.condition.SpringBootCondition#getMatchOutcome(org.springframework.context.annotation.ConditionContext, org.springframework.core.type.AnnotatedTypeMetadata)
77
- */
78
- @ Override
79
- public ConditionOutcome getMatchOutcome (ConditionContext context , AnnotatedTypeMetadata metadata ) {
80
-
81
- Environment environment = context .getEnvironment ();
82
-
83
- var enabled = List .of (CURRENT , LEGACY ).stream ()
84
- .map (it -> environment .getProperty (it , Boolean .class ))
85
- .anyMatch (Boolean .TRUE ::equals );
86
-
87
- return enabled //
88
- ? ConditionOutcome .match ("Schema initialization explicitly enabled." ) //
89
- : ConditionOutcome .noMatch ("Schema initialization disabled by default." );
90
- }
91
- }
92
56
}
0 commit comments