protected QualifiedName concatNames(EObject obj, String name) { if (name == null) return null; QualifiedName parentName = getFullyQualifiedName(obj.eContainer()); if (parentName == null) return null; return parentName.append(name); }
protected QualifiedName getOwnerClassName(QualifiedName nestedClassName) { String lastSegment = nestedClassName.getLastSegment(); int trimIndex = lastSegment.lastIndexOf('$'); if(trimIndex == -1) return nestedClassName.skipLast(1); else return nestedClassName.skipLast(1).append(lastSegment.substring(0, trimIndex)); }
protected QualifiedName resolveWildcard(QualifiedName relativeName) { int segmentCount = relativeName.getSegmentCount(); if (segmentCount == 1) { return getImportedNamespacePrefix().append(relativeName); } for(int i = 0; i < segmentCount; i++) { if (relativeName.getSegment(i).indexOf('$') != -1) { return null; } } return getImportedNamespacePrefix().append(relativeName.toString("$")); }
protected QualifiedName internalResolve(QualifiedName relativeName) { QualifiedName importedNamespace = getImportedNamespacePrefix(); if (importedNamespace.getLastSegment().equals(relativeName.getFirstSegment())) { return importedNamespace.skipLast(1).append(relativeName); } return null; } }
public class CustomQualifiedNameProvider extends DefaultDeclarativeQualifiedNameProvider { @Override public QualifiedName getFullyQualifiedName(EObject obj) { if (obj instanceof InterfaceDeclaration && obj.eContainer().eContainer() instanceof AbstractElement) { QualifiedName packageQualifiedName = getFullyQualifiedName(((AbstractElement)obj.eContainer().eContainer()).getPackageDeclaration()); return packageQualifiedName.append(((InterfaceDeclaration) obj).getName()); } return super.getFullyQualifiedName(obj); } }
private QualifiedName prependParentNames(final EObject object, final QualifiedName name) { EObject curr = object; while ((curr.eContainer() != null)) { { curr = curr.eContainer(); final QualifiedName parentsQualifiedName = this.getFullyQualifiedName(curr); if ((parentsQualifiedName != null)) { return parentsQualifiedName.append(name); } } } return name; } }
public QualifiedName resolve(QualifiedName relativeName) { if (relativeName.isEmpty()) return null; if (hasWildCard) { return importedNamespacePrefix.append(relativeName); } else { if (!ignoreCase) { if (relativeName.getSegmentCount()==1 && relativeName.getLastSegment().equals(importedNamespacePrefix.getLastSegment())) { return importedNamespacePrefix; } } else { if (relativeName.getSegmentCount()==1 && relativeName.getLastSegment().equalsIgnoreCase(importedNamespacePrefix.getLastSegment())) { return importedNamespacePrefix.skipLast(1).append(relativeName.getLastSegment()); } } } return null; }
@SuppressWarnings("unused") private QualifiedName qualifiedName(ZenModel model) { if (!Strings.isEmpty(model.getNamespace())) { return QualifiedName.create(model.getNamespace().split("\\.")).append(model.getName()); //$NON-NLS-1$ } return QualifiedName.create(model.getName()); } }
@Override public QualifiedName getFullyQualifiedName(EObject obj) { if (obj instanceof Pattern) { Pattern pattern = (Pattern) obj; return nameConverter.toQualifiedName(CorePatternLanguageHelper.getFullyQualifiedName(pattern)); } else if (obj instanceof PatternBody) { PatternBody patternBody = (PatternBody) obj; Pattern pattern = (Pattern) patternBody.eContainer(); return getFullyQualifiedName(pattern).append(Integer.toString(pattern.getBodies().indexOf(patternBody))); } return super.getFullyQualifiedName(obj); }
@Override public QualifiedName resolve(QualifiedName relativeName) { QualifiedName prefix = getImportedNamespacePrefix(); if (relativeName.getSegmentCount() > 1 && !alias.isEmpty() && relativeName.startsWith(alias)) { relativeName = relativeName.skipFirst(1); } return prefix.append(relativeName); } }
@Override public QualifiedName deresolve(QualifiedName fullyQualifiedName) { if (fullyQualifiedName.startsWith(getImportedNamespacePrefix())) { int segmentCount = getImportedNamespacePrefix().getSegmentCount(); return alias.append(fullyQualifiedName.skipFirst(segmentCount)); } return null; }
@Override protected List<IEObjectDescription> getLocalElementsByName(QualifiedName name) { XAbstractFeatureCall featureCall = getFeatureCall(); if (featureCall.isExplicitOperationCallOrBuilderSyntax()) return Collections.emptyList(); QualifiedName fqn = parentSegments.append(name); IScope typeScope = getSession().getScope(getFeatureCall(), TypesPackage.Literals.JVM_PARAMETERIZED_TYPE_REFERENCE__TYPE, resolvedTypes); IEObjectDescription typeDescription = typeScope.getSingleElement(fqn); if (typeDescription != null) { EObject type = typeDescription.getEObjectOrProxy(); if (type instanceof JvmType) return Collections.<IEObjectDescription>singletonList(new TypeLiteralDescription( new AliasedEObjectDescription(name, typeDescription), isVisible((JvmType) type))); } return Collections.emptyList(); }
QualifiedName qualifiedName(Model e) { QualifiedName namespace = getConverter().toQualifiedName( e.getNamespace()); return QualifiedName.create(namespace.getSegments()) .append(e.getName()); } }
public QualifiedName qualifiedName(Model e) { QualifiedName namespace = getConverter().toQualifiedName( e.getNamespace()); return QualifiedName.create(namespace.getSegments()) .append(e.getName()); } }
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; } });
QualifiedName qualifiedName(Model e) { QualifiedName namespace = getConverter().toQualifiedName( e.getNamespace()); return QualifiedName.create(namespace.getSegments()) .append(e.getName()); } }
public QualifiedName get() { EObject temp = obj; QualifiedName qualifiedNameFromDispatcher = qualifiedName.invoke(temp); if (qualifiedNameFromDispatcher!=null) return qualifiedNameFromDispatcher; String name = getResolver(obj).apply(temp); if (Strings.isEmpty(name)) return null; QualifiedName qualifiedNameFromConverter = getConverter().toQualifiedName(name); while (temp.eContainer() != null) { temp = temp.eContainer(); QualifiedName parentsQualifiedName = getFullyQualifiedName(temp); if (parentsQualifiedName != null) return parentsQualifiedName.append(qualifiedNameFromConverter); } return qualifiedNameFromConverter; } });
@Override public QualifiedName getFullyQualifiedName(EObject obj) { if (obj instanceof Annotation) { Annotation annotation = (Annotation) obj; String name = annotation.getName(); return nameConverter.toQualifiedName("annotation." + name); } else if (obj instanceof AnnotationParameter) { AnnotationParameter parameter = (AnnotationParameter) obj; Annotation annotation = (Annotation) parameter.eContainer(); return getFullyQualifiedName(annotation).append(parameter.getName()); } return super.getFullyQualifiedName(obj); }
@Override public QualifiedName get() { EObject temp = obj; String name = nameDispatcher.invoke(temp); if (Strings.isEmpty(name)) return null; QualifiedName qualifiedName = QualifiedName.create(name); if(!isRecurseParent(obj)) return qualifiedName; QualifiedName parentsQualifiedName = getFullyQualifiedName(obj.eContainer()); if (parentsQualifiedName == null) return null; else return parentsQualifiedName.append(qualifiedName); }
private QualifiedName getFullyQualifiedName(final Resource resource, final TclModel model) { final String name = resource.getURI().trimFileExtension().lastSegment(); final String derivedPackage = this.classpathUtil.inferPackage(model); boolean _isNullOrEmpty = StringExtensions.isNullOrEmpty(derivedPackage); if (_isNullOrEmpty) { return QualifiedName.create(name); } else { return this.qualifiedName(model).append(name); } }