Skip to content

Commit 9833353

Browse files
authored
Merge pull request #45 from domaframework/update-domaconfigbuilder
Update DomaConfigBuilder
2 parents 0bce7aa + 392b543 commit 9833353

File tree

4 files changed

+29
-7
lines changed

4 files changed

+29
-7
lines changed

doma-spring-boot-autoconfigure/src/main/java/org/seasar/doma/boot/autoconfigure/DomaAutoConfiguration.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
@AutoConfigureAfter(DataSourceAutoConfiguration.class)
5151
public class DomaAutoConfiguration {
5252
@Autowired
53-
DomaProperties domaProperties;
53+
private DomaProperties domaProperties;
5454

5555
@Bean
5656
@ConditionalOnMissingBean
@@ -96,15 +96,15 @@ public EntityListenerProvider tryLookupEntityListenerProvider() {
9696
@Bean
9797
@ConditionalOnMissingBean
9898
public DomaConfigBuilder domaConfigBuilder() {
99-
return new DomaConfigBuilder();
99+
return new DomaConfigBuilder(domaProperties);
100100
}
101101

102102
@Bean
103103
@ConditionalOnMissingBean(Config.class)
104104
public DomaConfig config(DataSource dataSource, Dialect dialect,
105105
SqlFileRepository sqlFileRepository, Naming naming,
106106
EntityListenerProvider entityListenerProvider,
107-
DomaConfigBuilder domaConfigBuilder, DomaProperties domaProperties) {
107+
DomaConfigBuilder domaConfigBuilder) {
108108
if (domaConfigBuilder.dataSource() == null) {
109109
domaConfigBuilder.dataSource(dataSource);
110110
}
@@ -120,7 +120,10 @@ public DomaConfig config(DataSource dataSource, Dialect dialect,
120120
if (domaConfigBuilder.entityListenerProvider() == null) {
121121
domaConfigBuilder.entityListenerProvider(entityListenerProvider);
122122
}
123-
return domaConfigBuilder.build(domaProperties);
123+
if (domaConfigBuilder.domaProperties() == null) {
124+
return domaConfigBuilder.build(domaProperties);
125+
}
126+
return domaConfigBuilder.build();
124127
}
125128

126129
}

doma-spring-boot-autoconfigure/src/main/java/org/seasar/doma/boot/autoconfigure/DomaConfigBuilder.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
* @author Toshiaki Maki
2828
*/
2929
public class DomaConfigBuilder {
30+
private DomaProperties domaProperties;
3031
private DataSource dataSource;
3132
/**
3233
* Default value is set in {@link DomaProperties}
@@ -50,6 +51,18 @@ public class DomaConfigBuilder {
5051
private Commenter commenter = ConfigSupport.defaultCommenter;
5152
private EntityListenerProvider entityListenerProvider;
5253

54+
@Deprecated
55+
public DomaConfigBuilder() {
56+
}
57+
58+
public DomaConfigBuilder(DomaProperties domaProperties) {
59+
this.domaProperties = domaProperties;
60+
}
61+
62+
DomaProperties domaProperties() {
63+
return domaProperties;
64+
}
65+
5366
public DataSource dataSource() {
5467
return dataSource;
5568
}
@@ -179,7 +192,13 @@ public DomaConfigBuilder entityListenerProvider(
179192
return this;
180193
}
181194

195+
@Deprecated
182196
public DomaConfig build(DomaProperties domaProperties) {
197+
this.domaProperties = domaProperties;
198+
return build();
199+
}
200+
201+
public DomaConfig build() {
183202
return new DomaConfig(this, domaProperties);
184203
}
185204
}

doma-spring-boot-autoconfigure/src/main/java/org/seasar/doma/boot/autoconfigure/DomaProperties.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ public void setBatchSize(int batchSize) {
164164
}
165165

166166
public DomaConfigBuilder initializeDomaConfigBuilder() {
167-
return new DomaConfigBuilder().dialect(dialect.create())
167+
return new DomaConfigBuilder(this).dialect(dialect.create())
168168
.sqlFileRepository(sqlFileRepository.create()).naming(naming.naming());
169169
}
170170

doma-spring-boot-autoconfigure/src/test/java/org/seasar/doma/boot/autoconfigure/DomaAutoConfigurationTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -204,8 +204,8 @@ public void tearDown() {
204204
@Configuration
205205
public static class ConfigBuilderConfigure {
206206
@Bean
207-
DomaConfigBuilder myDomaConfigBuilder() {
208-
return new DomaConfigBuilder().dialect(new MysqlDialect())
207+
DomaConfigBuilder myDomaConfigBuilder(DomaProperties domaProperties) {
208+
return new DomaConfigBuilder(domaProperties).dialect(new MysqlDialect())
209209
.sqlFileRepository(new NoCacheSqlFileRepository())
210210
.naming(Naming.SNAKE_UPPER_CASE)
211211
.entityListenerProvider(new TestEntityListenerProvider());

0 commit comments

Comments
 (0)