if (!oldTable.equals(newTable)) { metadata.triggerOnTableChanged(newTable, oldTable);
@Override public void onTableRemoved(TableMetadata table) { synchronized (mappers) { Iterator<Mapper<?>> it = mappers.values().iterator(); while (it.hasNext()) { Mapper<?> mapper = it.next(); if (mapper.getTableMetadata().equals(table)) { LOGGER.error("Table {} has been removed; existing mappers for @Entity annotated {} will not work anymore", table.getName(), mapper.getMappedClass()); it.remove(); } } } }
@Override public void onTableChanged(TableMetadata current, TableMetadata previous) { synchronized (mappers) { Iterator<Mapper<?>> it = mappers.values().iterator(); while (it.hasNext()) { Mapper<?> mapper = it.next(); if (mapper.getTableMetadata().equals(previous)) { LOGGER.warn("Table {} has been altered; existing mappers for @Entity annotated {} might not work properly anymore", previous.getName(), mapper.getMappedClass()); it.remove(); } } } }
private void updateTables(Metadata metadata, Map<String, TableMetadata> oldTables, Map<String, TableMetadata> newTables, String tableToRebuild) { Iterator<TableMetadata> it = oldTables.values().iterator(); while (it.hasNext()) { TableMetadata oldTable = it.next(); String tableName = oldTable.getName(); // If we're rebuilding only a single table, we should only consider that one // because newTables will only contain that table. if ((tableToRebuild == null || tableToRebuild.equals(tableName)) && !newTables.containsKey(tableName)) { it.remove(); metadata.triggerOnTableRemoved(oldTable); } } for (TableMetadata newTable : newTables.values()) { TableMetadata oldTable = oldTables.put(newTable.getName(), newTable); if (oldTable == null) { metadata.triggerOnTableAdded(newTable); } else if (!oldTable.equals(newTable)) { metadata.triggerOnTableChanged(newTable, oldTable); } } }
private void updateTables(Metadata metadata, Map<String, TableMetadata> oldTables, Map<String, TableMetadata> newTables, String tableToRebuild) { Iterator<TableMetadata> it = oldTables.values().iterator(); while (it.hasNext()) { TableMetadata oldTable = it.next(); String tableName = oldTable.getName(); // If we're rebuilding only a single table, we should only consider that one // because newTables will only contain that table. if ((tableToRebuild == null || tableToRebuild.equals(tableName)) && !newTables.containsKey(tableName)) { it.remove(); metadata.triggerOnTableRemoved(oldTable); } } for (TableMetadata newTable : newTables.values()) { TableMetadata oldTable = oldTables.put(newTable.getName(), newTable); if (oldTable == null) { metadata.triggerOnTableAdded(newTable); } else if (!oldTable.equals(newTable)) { metadata.triggerOnTableChanged(newTable, oldTable); } } }
private void updateTables(Metadata metadata, Map<String, TableMetadata> oldTables, Map<String, TableMetadata> newTables, String tableToRebuild) { Iterator<TableMetadata> it = oldTables.values().iterator(); while (it.hasNext()) { TableMetadata oldTable = it.next(); String tableName = oldTable.getName(); // If we're rebuilding only a single table, we should only consider that one // because newTables will only contain that table. if ((tableToRebuild == null || tableToRebuild.equals(tableName)) && !newTables.containsKey(tableName)) { it.remove(); metadata.triggerOnTableRemoved(oldTable); } } for (TableMetadata newTable : newTables.values()) { TableMetadata oldTable = oldTables.put(newTable.getName(), newTable); if (oldTable == null) { metadata.triggerOnTableAdded(newTable); } else if (!oldTable.equals(newTable)) { metadata.triggerOnTableChanged(newTable, oldTable); } } }