@Override public QualifiedName getFullyQualifiedName(EObject obj) { if (obj instanceof JvmIdentifiableElement) return getFullyQualifiedName((JvmIdentifiableElement) obj); return super.getFullyQualifiedName(obj); }
protected Function<EObject, String> getResolver(EObject eObject) { if (null != GuidesignPackage.eINSTANCE.getEClassifier(eObject.eClass().getName())) { return guiDesignNameFunction; } else if (null != PomPackage.eINSTANCE.getEClassifier(eObject.eClass().getName())) { return getPomNameFunction(); } return super.getResolver(); }
public QualifiedName get() { EObject temp = obj; QualifiedName qualifiedNameFromDispatcher = qualifiedName.invoke(temp); if (qualifiedNameFromDispatcher!=null) return qualifiedNameFromDispatcher; String name = getResolver().apply(temp); if (Strings.isEmpty(name)) return null; QualifiedName qualifiedNameFromConverter = converter.toQualifiedName(name); while (temp.eContainer() != null) { temp = temp.eContainer(); QualifiedName parentsQualifiedName = getFullyQualifiedName(temp); if (parentsQualifiedName != null) return parentsQualifiedName.append(qualifiedNameFromConverter); } return qualifiedNameFromConverter; } });
} else { IQualifiedNameProvider nameProvider = new DefaultDeclarativeQualifiedNameProvider(); String attributeName = nameProvider.getFullyQualifiedName(reference).getLastSegment(); String oppositeAttributeName = nameProvider.getFullyQualifiedName(opposite).getLastSegment();