@@ -86,36 +86,38 @@ public static LinkedHashSet<TypeInfo> extractTypeInfo(DatabaseMetaData metaData)
8686 final LinkedHashSet <TypeInfo > typeInfoSet = new LinkedHashSet <>();
8787 try {
8888 final ResultSet resultSet = metaData .getTypeInfo ();
89- try {
90- while ( resultSet .next () ) {
91- typeInfoSet .add (
92- new TypeInfo (
93- resultSet .getString ( "TYPE_NAME" ),
94- resultSet .getInt ( "DATA_TYPE" ),
95- interpretCreateParams ( resultSet .getString ( "CREATE_PARAMS" ) ),
96- resultSet .getBoolean ( "UNSIGNED_ATTRIBUTE" ),
97- resultSet .getInt ( "PRECISION" ),
98- resultSet .getShort ( "MINIMUM_SCALE" ),
99- resultSet .getShort ( "MAXIMUM_SCALE" ),
100- resultSet .getBoolean ( "FIXED_PREC_SCALE" ),
101- resultSet .getString ( "LITERAL_PREFIX" ),
102- resultSet .getString ( "LITERAL_SUFFIX" ),
103- resultSet .getBoolean ( "CASE_SENSITIVE" ),
104- TypeSearchability .interpret ( resultSet .getShort ( "SEARCHABLE" ) ),
105- TypeNullability .interpret ( resultSet .getShort ( "NULLABLE" ) )
106- )
107- );
108- }
109- }
110- catch ( SQLException e ) {
111- LOG .unableToAccessTypeInfoResultSet ( e .toString () );
112- }
113- finally {
89+ if (resultSet != null ) {
11490 try {
115- resultSet .close ();
91+ while ( resultSet .next () ) {
92+ typeInfoSet .add (
93+ new TypeInfo (
94+ resultSet .getString ( "TYPE_NAME" ),
95+ resultSet .getInt ( "DATA_TYPE" ),
96+ interpretCreateParams ( resultSet .getString ( "CREATE_PARAMS" ) ),
97+ resultSet .getBoolean ( "UNSIGNED_ATTRIBUTE" ),
98+ resultSet .getInt ( "PRECISION" ),
99+ resultSet .getShort ( "MINIMUM_SCALE" ),
100+ resultSet .getShort ( "MAXIMUM_SCALE" ),
101+ resultSet .getBoolean ( "FIXED_PREC_SCALE" ),
102+ resultSet .getString ( "LITERAL_PREFIX" ),
103+ resultSet .getString ( "LITERAL_SUFFIX" ),
104+ resultSet .getBoolean ( "CASE_SENSITIVE" ),
105+ TypeSearchability .interpret ( resultSet .getShort ( "SEARCHABLE" ) ),
106+ TypeNullability .interpret ( resultSet .getShort ( "NULLABLE" ) )
107+ )
108+ );
109+ }
116110 }
117111 catch ( SQLException e ) {
118- LOG .unableToReleaseTypeInfoResultSet ();
112+ LOG .unableToAccessTypeInfoResultSet ( e .toString () );
113+ }
114+ finally {
115+ try {
116+ resultSet .close ();
117+ }
118+ catch ( SQLException e ) {
119+ LOG .unableToReleaseTypeInfoResultSet ();
120+ }
119121 }
120122 }
121123 }
0 commit comments