ColumnInfo columnInfoOfJoinColumn = getJoinColumn(targetTableInfo, joinColumn, m.getIdAttribute().getBindableJavaType()); if (!targetTableInfo.getColumnMetadatas().contains(columnInfoOfJoinColumn)) ColumnInfo columnInfoOfJoinColumn = getJoinColumn(targetTableInfo, joinColumn, m.getIdAttribute().getBindableJavaType()); if (!targetTableInfo.getColumnMetadatas().contains(columnInfoOfJoinColumn))
/** * Add tableGenerator to table info. * * @param appMetadata * @param persistenceUnit * @param tableInfos * @param entityMetadata * @param isCompositeId */ private void addTableGenerator(ApplicationMetadata appMetadata, String persistenceUnit, List<TableInfo> tableInfos, EntityMetadata entityMetadata) { Metamodel metamodel = appMetadata.getMetamodel(persistenceUnit); IdDiscriptor keyValue = ((MetamodelImpl) metamodel).getKeyValue(entityMetadata.getEntityClazz().getName()); if (keyValue != null && keyValue.getTableDiscriptor() != null) { TableInfo tableGeneratorDiscriptor = new TableInfo(keyValue.getTableDiscriptor().getTable(), "CounterColumnType", String.class, keyValue.getTableDiscriptor().getPkColumnName()); if (!tableInfos.contains(tableGeneratorDiscriptor)) { tableGeneratorDiscriptor.addColumnInfo(getJoinColumn(tableGeneratorDiscriptor, keyValue.getTableDiscriptor().getValueColumnName(), Long.class)); tableInfos.add(tableGeneratorDiscriptor); } } }
tableInfo.addColumnInfo(getJoinColumn(tableInfo, relation.getJoinColumnName(kunderaMetadata), entityMetadata.getIdAttribute().getJavaType())); tableInfo.addColumnInfo(getJoinColumn(tableInfo, relation.getJoinColumnName(kunderaMetadata), targetEntityMetadata.getIdAttribute().getJavaType())); if (!tableInfos.isEmpty() && !tableInfos.contains(joinTableInfo) || tableInfos.isEmpty()) joinTableInfo.addColumnInfo(getJoinColumn(joinTableInfo, joinColumnName, entityMetadata.getIdAttribute().getJavaType())); joinTableInfo.addColumnInfo(getJoinColumn(joinTableInfo, inverseJoinColumnName, targetEntityMetadata.getIdAttribute().getJavaType()));