// The extra table check is if the mapping is actually defined
// on our java class (meaning we have the right table at this
// point and can avoid the cloning)
if (getDescriptor().usesTablePerClassInheritanceStrategy() && ! pkField.getTable().equals(getDescriptor().getPrimaryTable())) {
// We need to update the pk field to be to our table.
pkField = (DatabaseField) pkField.clone();
pkField.setTable(getDescriptor().getPrimaryTable());
}
mapping.addTargetForeignKeyField(fkField, pkField);
}