18
18
package io .vertigo .database .impl .sql ;
19
19
20
20
import java .sql .PreparedStatement ;
21
- import java .sql .ResultSet ;
22
21
import java .sql .SQLException ;
23
22
import java .sql .Statement ;
24
23
import java .util .HashMap ;
41
40
import io .vertigo .database .sql .statement .SqlParameter ;
42
41
import io .vertigo .database .sql .statement .SqlStatement ;
43
42
import io .vertigo .database .sql .vendor .SqlDialect .GenerationMode ;
44
- import io .vertigo .database .sql .vendor .SqlMapping ;
45
43
46
44
/**
47
45
* Implémentation standard du gestionnaire des données et des accès aux données.
@@ -82,8 +80,8 @@ public SqlManagerImpl(
82
80
this .analyticsManager = analyticsManager ;
83
81
connectionProviderPluginMap = new HashMap <>();
84
82
for (final SqlConnectionProviderPlugin sqlConnectionProviderPlugin : sqlConnectionProviderPlugins ) {
85
- final String name = sqlConnectionProviderPlugin .getName ();
86
- final SqlConnectionProvider previous = connectionProviderPluginMap .put (name , sqlConnectionProviderPlugin );
83
+ final var name = sqlConnectionProviderPlugin .getName ();
84
+ final var previous = connectionProviderPluginMap .put (name , sqlConnectionProviderPlugin );
87
85
Assertion .check ().isNull (previous , "ConnectionProvider {0}, was already registered" , name );
88
86
}
89
87
localeManager .add ("io.vertigo.database.impl.sql.DataBase" , io .vertigo .database .impl .sql .Resources .values ());
@@ -94,7 +92,7 @@ public SqlManagerImpl(
94
92
/** {@inheritDoc} */
95
93
@ Override
96
94
public SqlConnectionProvider getConnectionProvider (final String name ) {
97
- final SqlConnectionProvider sqlConnectionProvider = connectionProviderPluginMap .get (name );
95
+ final var sqlConnectionProvider = connectionProviderPluginMap .get (name );
98
96
Assertion .check ().isNotNull (sqlConnectionProvider , "ConnectionProvider {0}, wasn't registered." , name );
99
97
return sqlConnectionProvider ;
100
98
}
@@ -112,7 +110,7 @@ public <O> List<O> executeQuery(
112
110
.isNotNull (dataType )
113
111
.isNotNull (connection );
114
112
//-----
115
- try (final PreparedStatement statement = sqlStatementDriver .createStatement (sqlStatement .getSqlQuery (), connection )) {
113
+ try (final var statement = sqlStatementDriver .createStatement (sqlStatement .getSqlQuery (), connection )) {
116
114
sqlStatementDriver .setParameters (statement , sqlStatement .getSqlParameters (), basicTypeAdapters , connection );
117
115
//-----
118
116
return traceWithReturn (sqlStatement .getSqlQuery (), tracer -> doExecuteQuery (statement , tracer , dataType , basicTypeAdapters , limit , connection ));
@@ -130,8 +128,8 @@ private <O> List<O> doExecuteQuery(
130
128
final Integer limit ,
131
129
final SqlConnection connection ) {
132
130
// ResultSet JDBC
133
- final SqlMapping mapping = connection .getDataBase ().getSqlMapping ();
134
- try (final ResultSet resultSet = statement .executeQuery ()) {
131
+ final var mapping = connection .getDataBase ().getSqlMapping ();
132
+ try (final var resultSet = statement .executeQuery ()) {
135
133
//Le Handler a la responsabilité de créer les données.
136
134
final List <O > result = sqlStatementDriver .buildResult (dataType , basicTypeAdapters , mapping , resultSet , limit );
137
135
tracer .setMeasure ("nbSelectedRow" , result .size ());
@@ -158,12 +156,12 @@ public <O> Tuple<Integer, O> executeUpdateWithGeneratedKey(
158
156
.isNotNull (dataType )
159
157
.isNotNull (connection );
160
158
//---
161
- try (final PreparedStatement statement = sqlStatementDriver .createStatement (sqlStatement .getSqlQuery (), generationMode , new String [] { columnName }, connection )) {
159
+ try (final var statement = sqlStatementDriver .createStatement (sqlStatement .getSqlQuery (), generationMode , new String [] { columnName }, connection )) {
162
160
sqlStatementDriver .setParameters (statement , sqlStatement .getSqlParameters (), basicTypeAdapters , connection );
163
161
//---
164
162
//execution de la Requête
165
163
final int result = traceWithReturn (sqlStatement .getSqlQuery (), tracer -> doExecute (statement , tracer ));
166
- final List <O > generatedIds = sqlStatementDriver .getGeneratedKeys (statement , columnName , dataType , connection );
164
+ final List <O > generatedIds = sqlStatementDriver .getGeneratedKeys (statement , generationMode , columnName , dataType , connection );
167
165
if (generatedIds .isEmpty ()) {
168
166
throw new SQLException ("GeneratedKeys empty" , "02000" , NO_GENERATED_KEY_ERROR_VENDOR_CODE );
169
167
}
@@ -186,7 +184,7 @@ public int executeUpdate(
186
184
.isNotNull (sqlStatement )
187
185
.isNotNull (connection );
188
186
//---
189
- try (final PreparedStatement statement = sqlStatementDriver .createStatement (sqlStatement .getSqlQuery (), connection )) {
187
+ try (final var statement = sqlStatementDriver .createStatement (sqlStatement .getSqlQuery (), connection )) {
190
188
sqlStatementDriver .setParameters (statement , sqlStatement .getSqlParameters (), basicTypeAdapters , connection );
191
189
//---
192
190
return traceWithReturn (sqlStatement .getSqlQuery (), tracer -> doExecute (statement , tracer ));
@@ -197,7 +195,7 @@ public int executeUpdate(
197
195
198
196
private static int doExecute (final PreparedStatement statement , final Tracer tracer ) {
199
197
try {
200
- final int res = statement .executeUpdate ();
198
+ final var res = statement .executeUpdate ();
201
199
tracer .setMeasure ("nbModifiedRow" , res );
202
200
return res ;
203
201
} catch (final SQLException e ) {
@@ -231,7 +229,7 @@ public OptionalInt executeBatch(
231
229
.isNotNull (sqlStatement )
232
230
.isNotNull (connection );
233
231
//---
234
- try (final PreparedStatement statement = sqlStatementDriver .createStatement (sqlStatement .getSqlQuery (), connection )) {
232
+ try (final var statement = sqlStatementDriver .createStatement (sqlStatement .getSqlQuery (), connection )) {
235
233
for (final List <SqlParameter > parameters : sqlStatement .getSqlParametersForBatch ()) {
236
234
sqlStatementDriver .setParameters (statement , parameters , basicTypeAdapters , connection );
237
235
statement .addBatch ();
@@ -244,9 +242,9 @@ public OptionalInt executeBatch(
244
242
245
243
private static OptionalInt doExecuteBatch (final PreparedStatement statement , final Tracer tracer ) {
246
244
try {
247
- final int [] res = statement .executeBatch ();
245
+ final var res = statement .executeBatch ();
248
246
//Calcul du nombre total de lignes affectées par le batch.
249
- int count = 0 ;
247
+ var count = 0 ;
250
248
for (final int rowCount : res ) {
251
249
count += rowCount ;
252
250
if (rowCount == Statement .SUCCESS_NO_INFO ) {
@@ -277,13 +275,13 @@ public <O> Tuple<Integer, List<O>> executeBatchWithGeneratedKeys(
277
275
.isNotNull (dataType )
278
276
.isNotNull (connection );
279
277
//---
280
- try (final PreparedStatement statement = sqlStatementDriver .createStatement (sqlStatement .getSqlQuery (), generationMode , new String [] { columnName }, connection )) {
278
+ try (final var statement = sqlStatementDriver .createStatement (sqlStatement .getSqlQuery (), generationMode , new String [] { columnName }, connection )) {
281
279
for (final List <SqlParameter > parameters : sqlStatement .getSqlParametersForBatch ()) {
282
280
sqlStatementDriver .setParameters (statement , parameters , basicTypeAdapters , connection );
283
281
statement .addBatch ();
284
282
}
285
- final OptionalInt result = traceWithReturn (sqlStatement .getSqlQuery (), tracer -> doExecuteBatch (statement , tracer ));
286
- final List <O > generatedIds = sqlStatementDriver .getGeneratedKeys (statement , columnName , dataType , connection );
283
+ final var result = traceWithReturn (sqlStatement .getSqlQuery (), tracer -> doExecuteBatch (statement , tracer ));
284
+ final List <O > generatedIds = sqlStatementDriver .getGeneratedKeys (statement , generationMode , columnName , dataType , connection );
287
285
if (generatedIds .isEmpty ()) {
288
286
throw new SQLException ("GeneratedKeys wasNull" , "23502" );
289
287
}
@@ -302,7 +300,7 @@ private <O> O traceWithReturn(final String sql, final Function<Tracer, O> functi
302
300
final String requestTracerHeader ;
303
301
if (sql .startsWith ("/*" )) { //default build query startWith /* task name */ : use it for tracer header
304
302
final int indexStart ;
305
- final int indexEnds = sql .indexOf ("*/" );
303
+ final var indexEnds = sql .indexOf ("*/" );
306
304
if (sql .startsWith ("/* TaskEngine : " )) { //default build query startWith /* task name */ : use it for tracer header
307
305
indexStart = "/* TaskEngine : " .length ();
308
306
} else {
@@ -317,7 +315,7 @@ private <O> O traceWithReturn(final String sql, final Function<Tracer, O> functi
317
315
"sql" ,
318
316
"/execute/" + requestTracerHeader ,
319
317
tracer -> {
320
- final O result = function .apply (tracer );
318
+ final var result = function .apply (tracer );
321
319
tracer .setTag ("statementHeader" , requestTracerHeader )
322
320
.setMetadata ("statement" , sql .substring (0 , Math .min (REQUEST_STATEMENT_FOR_TRACER , sql .length ())));
323
321
return result ;
0 commit comments