in src/main/java/com/epam/digital/data/platform/liquibase/extension/change/core/DdmCreateCompositeEntityChange.java [113:133]
private boolean isValidForeignKey(List<DdmNestedEntityConfig> requiredEntities,
DdmCreateTableChange tableChange) {
for (DdmNestedEntityConfig entity : requiredEntities) {
if (entity.getTable().equals(tableChange.getTableName())) {
int keyCount = 0;
for (DdmLinkConfig linkConfig : entity.getLinkConfig()) {
for (ColumnConfig column : tableChange.getColumns()) {
if (column.getConstraints() != null &&
column.getConstraints().getForeignKeyName() != null &&
linkConfig.getColumn().equals(column.getName()) &&
linkConfig.getEntityTable()
.equals(column.getConstraints().getReferencedTableName())) {
keyCount++;
}
}
}
return entity.getLinkConfig().size() == keyCount;
}
}
return false;
}