if (inverseName != null) {
// return inverseName, if explicitly set
return inverseName;
}
JDOField declaringField = getDeclaringField();
String mappedByName = declaringField.getMappedByName();
if (mappedByName != null) {
// return mappedByName, if explicitly set on the declaring field
return mappedByName;
}
// try to resolve relationship info from mappedByName of the field on
// the other side
UnresolvedRelationshipHelper info = getUnresolvedRelationshipHelper();
// look for an unresolved relationship entry where the name of this
// field is used as the mappedByName
JDOField inverseField =
info.resolve(declaringField.getName(), getRelatedJDOClass());
if (inverseField != null) {
// found inverse => update inverseName and return it
inverseName = inverseField.getName();
return inverseName;
}
// no inverse name available => return null
return null;