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();
    }
  }
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.