/** * the '..' operator would be rejected by {@link org.eclipse.xtext.naming.IQualifiedNameConverter.DefaultImpl} * so we have to enable it here. */ @Override public QualifiedName toQualifiedName(String qualifiedNameAsString) { if (criticalOperatorNames.contains(qualifiedNameAsString)) return QualifiedName.create(qualifiedNameAsString); return super.toQualifiedName(qualifiedNameAsString); } }
@Override public QualifiedName toQualifiedName(String qualifiedNameAsString) { QualifiedName qualifiedName = super.toQualifiedName(qualifiedNameAsString); // workaround for mediaTypes with dots if (qualifiedName.getSegmentCount() >= 2 && qualifiedName.getSegment(0).startsWith("application/")) { //$NON-NLS-1$ return QualifiedName.create(qualifiedNameAsString); } return qualifiedName; } }
@Override public boolean createEObjectDescriptions(EObject eObject, IAcceptor<IEObjectDescription> acceptor) { if (eObject instanceof Grammar) { String grammarName = ((Grammar) eObject).getName(); if (!Strings.isEmpty(grammarName)) { QualifiedName qualifiedName = defaultQualifiedNameConverter.toQualifiedName(grammarName); acceptor.accept(EObjectDescription.create(qualifiedName, eObject)); } } else if (eObject instanceof AbstractMetamodelDeclaration || eObject instanceof AbstractRule) return super.createEObjectDescriptions(eObject, acceptor); return eObject instanceof Grammar; } }