/** * 一意キー記述を処理します。 * * @param entityMeta エンティティメタデータ * @param tableDesc テーブル記述 * @param generator テーブルジェネレータ */ protected void doUniqueConstraints( EntityMeta entityMeta, TableDesc tableDesc, TableGenerator generator) { for (UniqueConstraint uc : generator.uniqueConstraints()) { UniqueKeyDesc uniqueKeyDesc = uniqueKeyDescFactory.getCompositeUniqueKeyDesc(uc); if (uniqueKeyDesc != null) { tableDesc.addUniqueKeyDesc(uniqueKeyDesc); } } }
/** * 一意キー記述を処理します。 * * @param entityMeta エンティティメタデータ * @param tableDesc テーブル記述 * @param table テーブル */ protected void doUniqueKeyDesc(EntityMeta entityMeta, TableDesc tableDesc, Table table) { String singlePkColumnName = null; PrimaryKeyDesc primaryKeyDesc = tableDesc.getPrimaryKeyDesc(); if (primaryKeyDesc != null && primaryKeyDesc.getColumnNameList().size() == 1) { singlePkColumnName = primaryKeyDesc.getColumnNameList().get(0); } for (ColumnDesc columnDesc : tableDesc.getColumnDescList()) { if (columnDesc.getName().equals(singlePkColumnName)) { continue; } UniqueKeyDesc uniqueKeyDesc = uniqueKeyDescFactory.getSingleUniqueKeyDesc(columnDesc); if (uniqueKeyDesc != null) { tableDesc.addUniqueKeyDesc(uniqueKeyDesc); } } for (UniqueConstraint uc : table.uniqueConstraints()) { UniqueKeyDesc uniqueKeyDesc = uniqueKeyDescFactory.getCompositeUniqueKeyDesc(uc); if (uniqueKeyDesc != null) { tableDesc.addUniqueKeyDesc(uniqueKeyDesc); } } }