/** * PUBLIC: * Add a foreign key constraint to the table. * If there is a same name foreign key constraint already, nothing will happen. */ public void addForeignKeyConstraint(String name, String sourceField, String targetField, String targetTable) { ForeignKeyConstraint foreignKey = new ForeignKeyConstraint(name, sourceField, targetField, targetTable); addForeignKeyConstraint(foreignKey); }
/** * PUBLIC: * Add a foreign key constraint to the table. * If there is a same name foreign key constraint already, nothing will happen. */ public void addForeignKeyConstraint(String name, String sourceField, String targetField, String targetTable) { ForeignKeyConstraint foreignKey = new ForeignKeyConstraint(name, sourceField, targetField, targetTable); addForeignKeyConstraint(foreignKey); }
/** * PUBLIC: * Add a foreign key constraint to the table. * If there is a same name foreign key constraint already, nothing will happen. */ public void addForeignKeyConstraint(String name, String sourceField, String targetField, String targetTable) { ForeignKeyConstraint foreignKey = new ForeignKeyConstraint(name, sourceField, targetField, targetTable); addForeignKeyConstraint(foreignKey); }
/** * Build a foreign key constraint. */ protected ForeignKeyConstraint buildForeignKeyConstraint(Vector fkFieldNames, Vector pkFieldNames, TableDefinition targetTable, DatabasePlatform platform) { assert fkFieldNames.size() > 0 && fkFieldNames.size() == pkFieldNames.size(); ForeignKeyConstraint fkConstraint = new ForeignKeyConstraint(); for(int i=0; i<fkFieldNames.size(); i++) { fkConstraint.getSourceFields().add(fkFieldNames.get(i)); fkConstraint.getTargetFields().add(pkFieldNames.get(i)); } fkConstraint.setTargetTable(targetTable.getFullName()); String fkFieldName = (String)fkFieldNames.get(0); String name = buildForeignKeyConstraintName(this.getName(), fkFieldName, platform.getMaxForeignKeyNameSize(), platform); fkConstraint.setName(name); return fkConstraint; }
/** * Build a foreign key constraint. */ protected ForeignKeyConstraint buildForeignKeyConstraint(List<String> fkFieldNames, List<String> pkFieldNames, TableDefinition targetTable, DatabasePlatform platform) { assert fkFieldNames.size() > 0 && fkFieldNames.size() == pkFieldNames.size(); ForeignKeyConstraint fkConstraint = new ForeignKeyConstraint(); for(int i=0; i<fkFieldNames.size(); i++) { fkConstraint.getSourceFields().add(fkFieldNames.get(i)); fkConstraint.getTargetFields().add(pkFieldNames.get(i)); } fkConstraint.setTargetTable(targetTable.getFullName()); String fkFieldName = fkFieldNames.get(0); String name = buildForeignKeyConstraintName(this.getName(), fkFieldName, platform.getMaxForeignKeyNameSize(), platform); fkConstraint.setName(name); return fkConstraint; }
/** * Build a foreign key constraint. */ protected ForeignKeyConstraint buildForeignKeyConstraint(List<String> fkFieldNames, List<String> pkFieldNames, TableDefinition targetTable, DatabasePlatform platform) { assert fkFieldNames.size() > 0 && fkFieldNames.size() == pkFieldNames.size(); ForeignKeyConstraint fkConstraint = new ForeignKeyConstraint(); for(int i=0; i<fkFieldNames.size(); i++) { fkConstraint.getSourceFields().add(fkFieldNames.get(i)); fkConstraint.getTargetFields().add(pkFieldNames.get(i)); } fkConstraint.setTargetTable(targetTable.getFullName()); String fkFieldName = fkFieldNames.get(0); String name = buildForeignKeyConstraintName(this.getName(), fkFieldName, platform.getMaxForeignKeyNameSize(), platform); fkConstraint.setName(name); return fkConstraint; }
/** * Build a foreign key constraint using FieldDefinition.getForeignKeyFieldName(). */ protected ForeignKeyConstraint buildForeignKeyConstraint(FieldDefinition field, DatabasePlatform platform) { Vector sourceFields = new Vector(); Vector targetFields = new Vector(); ForeignKeyConstraint fkConstraint = new ForeignKeyConstraint(); DatabaseField tempTargetField = new DatabaseField(field.getForeignKeyFieldName()); DatabaseField tempSourceField = new DatabaseField(field.getName()); sourceFields.add(tempSourceField.getName()); targetFields.add(tempTargetField.getName()); fkConstraint.setSourceFields(sourceFields); fkConstraint.setTargetFields(targetFields); fkConstraint.setTargetTable(tempTargetField.getTable().getQualifiedNameDelimited(platform)); String tempName = buildForeignKeyConstraintName(this.getName(), tempSourceField.getName(), platform.getMaxForeignKeyNameSize(), platform); fkConstraint.setName(tempName); return fkConstraint; }
/** * Build a foreign key constraint using FieldDefinition.getForeignKeyFieldName(). */ protected ForeignKeyConstraint buildForeignKeyConstraint(FieldDefinition field, DatabasePlatform platform) { Vector sourceFields = new Vector(); Vector targetFields = new Vector(); ForeignKeyConstraint fkConstraint = new ForeignKeyConstraint(); DatabaseField tempTargetField = new DatabaseField(field.getForeignKeyFieldName()); DatabaseField tempSourceField = new DatabaseField(field.getName()); sourceFields.addElement(tempSourceField.getName()); targetFields.addElement(tempTargetField.getName()); fkConstraint.setSourceFields(sourceFields); fkConstraint.setTargetFields(targetFields); fkConstraint.setTargetTable(tempTargetField.getTable().getQualifiedNameDelimited(platform)); String tempName = buildForeignKeyConstraintName(this.getName(), tempSourceField.getName(), platform.getMaxForeignKeyNameSize(), platform); fkConstraint.setName(tempName); return fkConstraint; }
/** * Build a foreign key constraint using FieldDefinition.getForeignKeyFieldName(). */ protected ForeignKeyConstraint buildForeignKeyConstraint(FieldDefinition field, DatabasePlatform platform) { Vector sourceFields = new Vector(); Vector targetFields = new Vector(); ForeignKeyConstraint fkConstraint = new ForeignKeyConstraint(); DatabaseField tempTargetField = new DatabaseField(field.getForeignKeyFieldName()); DatabaseField tempSourceField = new DatabaseField(field.getName()); sourceFields.add(tempSourceField.getName()); targetFields.add(tempTargetField.getName()); fkConstraint.setSourceFields(sourceFields); fkConstraint.setTargetFields(targetFields); fkConstraint.setTargetTable(tempTargetField.getTable().getQualifiedNameDelimited(platform)); String tempName = buildForeignKeyConstraintName(this.getName(), tempSourceField.getName(), platform.getMaxForeignKeyNameSize(), platform); fkConstraint.setName(tempName); return fkConstraint; }
/** * INTERNAL: * Process this JPA metadata into an EclipseLink ForeignKeyConstraint. */ public void process(DatabaseTable table) { if (! isProviderDefaultConstraintMode()) { ForeignKeyConstraint foreignKeyConstraint = new ForeignKeyConstraint(); foreignKeyConstraint.setName(getName()); foreignKeyConstraint.setForeignKeyDefinition(getForeignKeyDefinition()); foreignKeyConstraint.setDisableForeignKey(isNoConstraintMode()); table.addForeignKeyConstraint(foreignKeyConstraint); } }