28
28
import java .util .Arrays ;
29
29
import java .util .Calendar ;
30
30
import java .util .Collection ;
31
- import java .util .Collections ;
32
31
import java .util .HashMap ;
33
32
import java .util .Map ;
34
- import java .util .Set ;
35
33
import java .util .concurrent .ConcurrentHashMap ;
36
34
37
35
import org .apache .commons .logging .Log ;
@@ -63,8 +61,9 @@ public abstract class StatementCreatorUtils {
63
61
64
62
private static final Log logger = LogFactory .getLog (StatementCreatorUtils .class );
65
63
66
- static final Set <String > driversWithNoSupportForGetParameterType =
67
- Collections .newSetFromMap (new ConcurrentHashMap <String , Boolean >(1 ));
64
+ // Using a ConcurrentHashMap as a Set (for Java 5 compatibility)
65
+ static final Map <String , Boolean > driversWithNoSupportForGetParameterType =
66
+ new ConcurrentHashMap <String , Boolean >(1 );
68
67
69
68
private static final Map <Class <?>, Integer > javaTypeToSqlTypeMap = new HashMap <Class <?>, Integer >(32 );
70
69
@@ -233,7 +232,7 @@ private static void setNull(PreparedStatement ps, int paramIndex, int sqlType, S
233
232
try {
234
233
dbmd = ps .getConnection ().getMetaData ();
235
234
jdbcDriverName = dbmd .getDriverName ();
236
- checkGetParameterType = !driversWithNoSupportForGetParameterType .contains (jdbcDriverName );
235
+ checkGetParameterType = !driversWithNoSupportForGetParameterType .containsKey (jdbcDriverName );
237
236
}
238
237
catch (Throwable ex ) {
239
238
logger .debug ("Could not check connection metadata" , ex );
@@ -260,7 +259,7 @@ private static void setNull(PreparedStatement ps, int paramIndex, int sqlType, S
260
259
jdbcDriverName = dbmd .getDriverName ();
261
260
}
262
261
if (checkGetParameterType ) {
263
- driversWithNoSupportForGetParameterType .add (jdbcDriverName );
262
+ driversWithNoSupportForGetParameterType .put (jdbcDriverName , Boolean . TRUE );
264
263
}
265
264
String databaseProductName = dbmd .getDatabaseProductName ();
266
265
if (databaseProductName .startsWith ("Informix" ) ||
0 commit comments