2121import java .sql .SQLException ;
2222import java .sql .Types ;
2323import java .util .ArrayList ;
24- import java .util .Arrays ;
2524import java .util .HashMap ;
2625import java .util .List ;
2726import java .util .Locale ;
@@ -48,11 +47,6 @@ public class GenericTableMetaDataProvider implements TableMetaDataProvider {
4847 /** Logger available to subclasses. */
4948 protected static final Log logger = LogFactory .getLog (TableMetaDataProvider .class );
5049
51- /** Database products we know not supporting the use of a String[] for generated keys. */
52- private static final List <String > productsNotSupportingGeneratedKeysColumnNameArray =
53- Arrays .asList ("Apache Derby" , "HSQL Database Engine" );
54-
55-
5650 /** The name of the user currently connected. */
5751 private final @ Nullable String userName ;
5852
@@ -93,45 +87,14 @@ protected GenericTableMetaDataProvider(DatabaseMetaData databaseMetaData) throws
9387 @ Override
9488 public void initializeWithMetaData (DatabaseMetaData databaseMetaData ) throws SQLException {
9589 try {
96- if (databaseMetaData .supportsGetGeneratedKeys ()) {
97- logger .debug ("GetGeneratedKeys is supported" );
98- setGetGeneratedKeysSupported (true );
99- }
100- else {
101- logger .debug ("GetGeneratedKeys is not supported" );
102- setGetGeneratedKeysSupported (false );
103- }
90+ setGetGeneratedKeysSupported (databaseMetaData .supportsGetGeneratedKeys ());
91+ setGeneratedKeysColumnNameArraySupported (isGetGeneratedKeysSupported ());
10492 }
10593 catch (SQLException ex ) {
10694 if (logger .isWarnEnabled ()) {
10795 logger .warn ("Error retrieving 'DatabaseMetaData.supportsGetGeneratedKeys': " + ex .getMessage ());
10896 }
10997 }
110- try {
111- String databaseProductName = databaseMetaData .getDatabaseProductName ();
112- if (productsNotSupportingGeneratedKeysColumnNameArray .contains (databaseProductName )) {
113- if (logger .isDebugEnabled ()) {
114- logger .debug ("GeneratedKeysColumnNameArray is not supported for " + databaseProductName );
115- }
116- setGeneratedKeysColumnNameArraySupported (false );
117- }
118- else {
119- if (isGetGeneratedKeysSupported ()) {
120- if (logger .isDebugEnabled ()) {
121- logger .debug ("GeneratedKeysColumnNameArray is supported for " + databaseProductName );
122- }
123- setGeneratedKeysColumnNameArraySupported (true );
124- }
125- else {
126- setGeneratedKeysColumnNameArraySupported (false );
127- }
128- }
129- }
130- catch (SQLException ex ) {
131- if (logger .isWarnEnabled ()) {
132- logger .warn ("Error retrieving 'DatabaseMetaData.getDatabaseProductName': " + ex .getMessage ());
133- }
134- }
13598
13699 try {
137100 this .databaseVersion = databaseMetaData .getDatabaseProductVersion ();
0 commit comments