@Override protected void addTo(DatabaseObject foundObject, DatabaseSnapshot snapshot) throws DatabaseException, InvalidExampleException { if (!snapshot.getSnapshotControl().shouldInclude(Table.class)) { return; } if (foundObject instanceof Schema) { Database database = snapshot.getDatabase(); Schema schema = (Schema) foundObject; List<CachedRow> tableMetaDataRs = null; try { tableMetaDataRs = ((JdbcDatabaseSnapshot) snapshot) .getMetaData() .getTables( ((AbstractJdbcDatabase) database).getJdbcCatalogName(schema), ((AbstractJdbcDatabase) database).getJdbcSchemaName(schema), null, new String[] {"TABLE"}); for (CachedRow row : tableMetaDataRs) { String tableName = row.getString("TABLE_NAME"); Table tableExample = (Table) new Table().setName(cleanNameFromDatabase(tableName, database)).setSchema(schema); schema.addDatabaseObject(tableExample); } } catch (SQLException e) { throw new DatabaseException(e); } } }