private void cacheMetadata ( ResultSetMetaData resultSetMetaData ) throws SQLException { cachedColumnNames = new LinkedHashMap < String , Integer > ( ) ; for ( int i = 1 ; i <= resultSetMetaData . getColumnCount ( ) ; i ++ ) { final String fieldTypeName = resultSetMetaData . getColumnTypeName ( i ) ; if ( ! fieldTypeName . equalsIgnoreCase ( "geometry" ) && isSupportedPropertyType ( resultSetMetaData . getColumnType ( i ) , fieldTypeName ) ) { cachedColumnNames . put ( resultSetMetaData . getColumnName ( i ) . toUpperCase ( ) , i ) ; columnCountProperties ++ ; } } }
Cache the column name and its index .