Пример #1
0
 protected Table setupSql2EntityRelatedTable(
     String entityName,
     DfCustomizeEntityInfo entityInfo,
     Map<String, DfColumnMeta> metaMap,
     String columnName,
     Column column,
     String pkRelatedTableName) {
   final DfColumnMeta columnMeta = metaMap.get(columnName);
   final String sql2EntityRelatedTableName = columnMeta.getSql2EntityRelatedTableName();
   Table relatedTable = getRelatedTable(sql2EntityRelatedTableName); // first attack
   if (relatedTable == null) {
     if (pkRelatedTableName != null) { // second attack using PK-related
       relatedTable = getRelatedTable(pkRelatedTableName);
       if (relatedTable == null) {
         throwTableRelatedPrimaryKeyNotFoundException(
             entityName, entityInfo, pkRelatedTableName, columnName);
       }
     } else {
       return null;
     }
   } else {
     if (pkRelatedTableName != null) {
       if (!Srl.equalsFlexible(sql2EntityRelatedTableName, pkRelatedTableName)) {
         throwTableRelatedPrimaryKeyDifferentException(
             entityName, entityInfo, sql2EntityRelatedTableName, pkRelatedTableName, columnName);
       }
     }
   }
   column.setSql2EntityRelatedTable(relatedTable);
   return relatedTable;
 }