11package org .seasar .doma .quarkus .runtime ;
22
33import java .util .Objects ;
4- import javax .enterprise .inject .Instance ;
54import javax .sql .DataSource ;
65import org .seasar .doma .jdbc .ClassHelper ;
76import org .seasar .doma .jdbc .CommandImplementors ;
@@ -37,7 +36,7 @@ public class DbConfig implements Config {
3736 private final MapKeyNaming mapKeyNaming ;
3837 private final Commenter commenter ;
3938 private final EntityListenerProvider entityListenerProvider ;
40- private final Instance < TransactionManager > transactionManagerInstance ;
39+ private final TransactionManager transactionManager ;
4140 private final String dataSourceName ;
4241 private final int batchSize ;
4342 private final int fetchSize ;
@@ -60,7 +59,7 @@ public DbConfig(
6059 MapKeyNaming mapKeyNaming ,
6160 Commenter commenter ,
6261 EntityListenerProvider entityListenerProvider ,
63- Instance < TransactionManager > transactionManagerInstance ,
62+ TransactionManager transactionManager ,
6463 String dataSourceName ,
6564 int batchSize ,
6665 int fetchSize ,
@@ -81,7 +80,7 @@ public DbConfig(
8180 this .mapKeyNaming = Objects .requireNonNull (mapKeyNaming );
8281 this .commenter = Objects .requireNonNull (commenter );
8382 this .entityListenerProvider = Objects .requireNonNull (entityListenerProvider );
84- this .transactionManagerInstance = Objects . requireNonNull ( transactionManagerInstance ) ;
83+ this .transactionManager = transactionManager ;
8584 this .dataSourceName = Objects .requireNonNull (dataSourceName );
8685 this .batchSize = batchSize ;
8786 this .fetchSize = fetchSize ;
@@ -156,10 +155,7 @@ public MapKeyNaming getMapKeyNaming() {
156155
157156 @ Override
158157 public TransactionManager getTransactionManager () {
159- if (transactionManagerInstance .isResolvable ()) {
160- return transactionManagerInstance .get ();
161- }
162- return null ;
158+ return transactionManager ;
163159 }
164160
165161 @ Override
@@ -197,8 +193,30 @@ public int getQueryTimeout() {
197193 return queryTimeout ;
198194 }
199195
200- public Builder newBuilder () {
201- return new Builder (this );
196+ public Builder builder () {
197+ Builder builder = new Builder ();
198+ builder .dataSource = this .dataSource ;
199+ builder .dialect = this .dialect ;
200+ builder .sqlFileRepository = this .sqlFileRepository ;
201+ builder .scriptFileLoader = this .scriptFileLoader ;
202+ builder .jdbcLogger = this .jdbcLogger ;
203+ builder .requiresNewController = this .requiresNewController ;
204+ builder .classHelper = this .classHelper ;
205+ builder .commandImplementors = this .commandImplementors ;
206+ builder .queryImplementors = this .queryImplementors ;
207+ builder .exceptionSqlLogType = this .exceptionSqlLogType ;
208+ builder .unknownColumnHandler = this .unknownColumnHandler ;
209+ builder .naming = this .naming ;
210+ builder .mapKeyNaming = this .mapKeyNaming ;
211+ builder .commenter = this .commenter ;
212+ builder .entityListenerProvider = this .entityListenerProvider ;
213+ builder .transactionManager = this .transactionManager ;
214+ builder .dataSourceName = this .dataSourceName ;
215+ builder .batchSize = this .batchSize ;
216+ builder .fetchSize = this .fetchSize ;
217+ builder .maxRows = this .maxRows ;
218+ builder .queryTimeout = this .queryTimeout ;
219+ return builder ;
202220 }
203221
204222 public static class Builder {
@@ -218,38 +236,13 @@ public static class Builder {
218236 private MapKeyNaming mapKeyNaming ;
219237 private Commenter commenter ;
220238 private EntityListenerProvider entityListenerProvider ;
221- private Instance < TransactionManager > transactionManagerInstance ;
239+ private TransactionManager transactionManager ;
222240 private String dataSourceName ;
223241 private int batchSize ;
224242 private int fetchSize ;
225243 private int maxRows ;
226244 private int queryTimeout ;
227245
228- Builder (DbConfig dbConfig ) {
229- Objects .requireNonNull (dbConfig );
230- dataSource = dbConfig .dataSource ;
231- dialect = dbConfig .dialect ;
232- sqlFileRepository = dbConfig .sqlFileRepository ;
233- scriptFileLoader = dbConfig .scriptFileLoader ;
234- jdbcLogger = dbConfig .jdbcLogger ;
235- requiresNewController = dbConfig .requiresNewController ;
236- classHelper = dbConfig .classHelper ;
237- commandImplementors = dbConfig .commandImplementors ;
238- queryImplementors = dbConfig .queryImplementors ;
239- exceptionSqlLogType = dbConfig .exceptionSqlLogType ;
240- unknownColumnHandler = dbConfig .unknownColumnHandler ;
241- naming = dbConfig .naming ;
242- mapKeyNaming = dbConfig .mapKeyNaming ;
243- commenter = dbConfig .commenter ;
244- entityListenerProvider = dbConfig .entityListenerProvider ;
245- transactionManagerInstance = dbConfig .transactionManagerInstance ;
246- dataSourceName = dbConfig .dataSourceName ;
247- batchSize = dbConfig .batchSize ;
248- fetchSize = dbConfig .fetchSize ;
249- maxRows = dbConfig .maxRows ;
250- queryTimeout = dbConfig .queryTimeout ;
251- }
252-
253246 public Builder setDataSource (DataSource dataSource ) {
254247 this .dataSource = dataSource ;
255248 return this ;
@@ -325,9 +318,8 @@ public Builder setEntityListenerProvider(EntityListenerProvider entityListenerPr
325318 return this ;
326319 }
327320
328- public Builder setTransactionManagerInstance (
329- Instance <TransactionManager > transactionManagerInstance ) {
330- this .transactionManagerInstance = transactionManagerInstance ;
321+ public Builder setTransactionManager (TransactionManager transactionManager ) {
322+ this .transactionManager = transactionManager ;
331323 return this ;
332324 }
333325
@@ -373,7 +365,7 @@ public DbConfig build() {
373365 mapKeyNaming ,
374366 commenter ,
375367 entityListenerProvider ,
376- transactionManagerInstance ,
368+ transactionManager ,
377369 dataSourceName ,
378370 batchSize ,
379371 fetchSize ,
0 commit comments