private boolean refreshSchema ( BigDecimal scnDecimal , SchemaAndTable schemaAndTable ) throws SQLException { try { if ( ! tableSchemaLastUpdate . containsKey ( schemaAndTable ) || scnDecimal . compareTo ( tableSchemaLastUpdate . get ( schemaAndTable ) ) > 0 ) { if ( containerized ) { try ( Statement switchToPdb = connection . createStatement ( ) ) { switchToPdb . execute ( "ALTER SESSION SET CONTAINER = " + configBean . pdb ) ; } } tableSchemas . put ( schemaAndTable , getTableSchema ( schemaAndTable ) ) ; tableSchemaLastUpdate . put ( schemaAndTable , scnDecimal ) ; return true ; } return false ; } finally { alterSession ( ) ; } }
Refresh the schema for the table if the last update of this table was before the given SCN . Returns true if it was updated else returns false .