private String getRelativeFragmentPath(Resource resource, EObject base, String path) { String basePath = resource.getURIFragment(base); if (basePath != null && path.startsWith(basePath)) { int i = basePath.length(); if (path.length() == i) { return ""; } else if (path.charAt(i) == '/') { return path.substring(i); } } return null; }
public static String getURIFragment(EObject eObject) { Resource resource = eObject.eResource(); String fragment = resource.getURIFragment(eObject); return fragment; }
private static void getURI(EObject parent, EObject target, Appendable buf) throws Exception { Resource r = target.eResource(); buf.append(target.eClass().getName()); buf.append("@"); if (r == null) { if (((InternalEObject)target).eIsProxy()) { buf.append("(unresolved proxy "+((InternalEObject)target).eProxyURI()+")"); } else { buf.append("(resource null)"); } } else if (parent.eResource() == r) buf.append(r.getURIFragment(target)); else buf.append(r.getURI().toString()).append("#").append(r.getURIFragment(target)); }
@Override public String getMessage() { String message = super.getMessage(); if (element != null) { message = MessageFormat.format("Error loading element with Id {0} ({1}): {2}", element.getId(), element.eResource().getURIFragment(element), message); } else if (attribute != null) { message = MessageFormat.format("Error loading attribute with name {0} ({1}): {2}", attribute.getName(), attribute.eResource().getURIFragment(attribute), message); } return message; }
private static void getURI(EObject parent, EObject target, Appendable buf) throws Exception { Resource r = target.eResource(); buf.append(target.eClass().getName()); buf.append("@"); if (r == null) { if (((InternalEObject)target).eIsProxy()) { buf.append("(unresolved proxy "+((InternalEObject)target).eProxyURI()+")"); } else { buf.append("(resource null)"); } } else if (parent.eResource() == r) buf.append(r.getURIFragment(target)); else buf.append(r.getURI().toString()).append("#").append(r.getURIFragment(target)); }
protected void clearPackage(Resource resource, EPackage pack) { Map<InternalEObject, URI> uris = Maps.newHashMap(); for(EClassifier classifier: pack.getEClassifiers()) { InternalEObject internalEObject = (InternalEObject) classifier; URI appendFragment = resource.getURI().appendFragment(resource.getURIFragment(internalEObject)); uris.put(internalEObject, appendFragment); } pack.getEClassifiers().clear(); for (Map.Entry<InternalEObject, URI> entry : uris.entrySet()) { entry.getKey().eSetProxyURI(entry.getValue()); } }
protected String getFragment(final EObject obj) { String _xblockexpression = null; { if ((((obj == null) || obj.eIsProxy()) || (obj.eResource() == null))) { return "none"; } _xblockexpression = obj.eResource().getURIFragment(obj); } return _xblockexpression; }
+ resource.getURIFragment(eObject);
protected void unload(EObject object) { InternalEObject internalEObject = (InternalEObject) object; Resource resource = object.eResource(); internalEObject.eSetProxyURI(resource.getURI().appendFragment(resource.getURIFragment(internalEObject))); }
protected String getElementName(EObject primaryTarget) { QualifiedName qualifiedName = qualifiedNameProvider.getFullyQualifiedName(primaryTarget); if (qualifiedName != null) { return qualifiedNameConverter.toString(qualifiedName); } String simpleName = SimpleAttributeResolver.NAME_RESOLVER.getValue(primaryTarget); return (simpleName != null) ? simpleName : primaryTarget.eResource().getURIFragment(primaryTarget); }
private org.eclipse.emf.common.util.URI createURI(EObject o) { return o.eResource().getURI().appendFragment(o.eResource().getURIFragment(o)); } /**
private String getHRef(SerializerProvider ctxt, EObject parent, EObject value) { if (isExternal(ctxt, parent, value)) { URI targetURI = EMFContext.getURI(ctxt, value); URI sourceURI = EMFContext.getURI(ctxt, parent); URI deresolved = handler != null ? handler.deresolve(sourceURI, targetURI) : targetURI; return deresolved == null ? null : deresolved.toString(); } else { Resource resource = EMFContext.getResource(ctxt, value); if (resource != null) { return resource.getURIFragment(value); } return null; } }
private String getHRef(SerializerProvider ctxt, EObject parent, EObject value) { if (isExternal(ctxt, parent, value)) { URI targetURI = EMFContext.getURI(ctxt, value); URI sourceURI = EMFContext.getURI(ctxt, parent); URI deresolved = handler != null ? handler.deresolve(sourceURI, targetURI): targetURI; return deresolved == null ? null: deresolved.toString(); } else { Resource resource = EMFContext.getResource(ctxt, value); if (resource != null) { return resource.getURIFragment(value); } return null; } } }
protected org.eclipse.emf.common.util.URI createURI(EObject o) { return o.eResource().getURI().appendFragment(o.eResource().getURIFragment(o)); }
private String getHRef(SerializerProvider ctxt, EObject parent, EObject value) { if (isExternal(ctxt, parent, value)) { URI targetURI = EMFContext.getURI(ctxt, value); URI sourceURI = EMFContext.getURI(ctxt, parent); URI deresolved = handler != null ? handler.deresolve(sourceURI, targetURI): targetURI; return deresolved == null ? null: deresolved.toString(); } else { Resource resource = EMFContext.getResource(ctxt, value); if (resource != null) { return resource.getURIFragment(value); } return null; } } }
/** * Turn object into a proxy. * * @param anObject * @return <code>true</code> if object was able to become a proxy. * * @since 1.0.0 */ public static boolean becomeProxy(EObject anObject) { if (anObject != null) { Resource res = anObject.eResource(); if (res != null) { URI uri = res.getURI(); ((InternalEObject) anObject).eSetProxyURI(uri.appendFragment(res.getURIFragment(anObject))); //anObject.eAdapters().clear(); return true; } } return false; }
uri = uri.appendFragment(resource.getURIFragment(eObject)); uri = URI.createHierarchicalURI(null, null, resource.getURIFragment(eObject));
public void assertSerializeWithoutNodeModel(EObject semanticObject) { try { EObject parsed; if (semanticObject.eResource().getContents().contains(semanticObject)) { List<Pair<EObject, ICompositeNode>> nodes = detachNodeModel(semanticObject); String serialized = serializeWithoutNodeModel(semanticObject); parsed = parseHelper.parse(serialized, semanticObject.eResource().getResourceSet()); reattachNodes(nodes); } else { INode oldNode = NodeModelUtils.getNode(semanticObject); String oldtext = oldNode.getRootNode().getText(); String oldURI = semanticObject.eResource().getURIFragment(semanticObject); List<Pair<EObject, ICompositeNode>> nodes = detachNodeModel(semanticObject); String serialized = serializeWithoutNodeModel(semanticObject); String newtext = oldtext.substring(0, oldNode.getOffset()) + serialized + oldtext.substring(oldNode.getOffset() + oldNode.getLength()); EObject newmodel = parseHelper.parse(newtext, semanticObject.eResource().getResourceSet()); parsed = newmodel.eResource().getEObject(oldURI); reattachNodes(nodes); } EcoreUtil.resolveAll(parsed); Assert.assertTrue(parsed.eResource().getErrors().toString(), parsed.eResource().getErrors().isEmpty()); assertEqualWithEmfFormatter(semanticObject, parsed); } catch (Exception e) { throw new RuntimeException(e); } }
public void assertSerializeWithoutNodeModel(EObject semanticObject) { try { EObject parsed; if (semanticObject.eResource().getContents().contains(semanticObject)) { List<Pair<EObject, ICompositeNode>> nodes = detachNodeModel(semanticObject); String serialized = serializeWithoutNodeModel(semanticObject); parsed = parseHelper.parse(serialized, semanticObject.eResource().getResourceSet()); reattachNodes(nodes); } else { INode oldNode = NodeModelUtils.getNode(semanticObject); String oldtext = oldNode.getRootNode().getText(); String oldURI = semanticObject.eResource().getURIFragment(semanticObject); List<Pair<EObject, ICompositeNode>> nodes = detachNodeModel(semanticObject); String serialized = serializeWithoutNodeModel(semanticObject); String newtext = oldtext.substring(0, oldNode.getOffset()) + serialized + oldtext.substring(oldNode.getOffset() + oldNode.getLength()); EObject newmodel = parseHelper.parse(newtext, semanticObject.eResource().getResourceSet()); parsed = newmodel.eResource().getEObject(oldURI); reattachNodes(nodes); } EcoreUtil.resolveAll(parsed); Assert.assertTrue(parsed.eResource().getErrors().toString(), parsed.eResource().getErrors().isEmpty()); parsed.eResource().getResourceSet().getResources().remove(parsed.eResource()); assertEqualWithEmfFormatter(semanticObject, parsed); } catch (Exception e) { throw new RuntimeException(e); } }
public void assertSerializeWithoutNodeModel(EObject semanticObject) { try { EObject parsed; if (semanticObject.eResource().getContents().contains(semanticObject)) { List<Pair<EObject, ICompositeNode>> nodes = detachNodeModel(semanticObject); String serialized = serializeWithoutNodeModel(semanticObject); parsed = parseHelper.parse(serialized, semanticObject.eResource().getResourceSet()); reattachNodes(nodes); } else { INode oldNode = NodeModelUtils.getNode(semanticObject); String oldtext = oldNode.getRootNode().getText(); String oldURI = semanticObject.eResource().getURIFragment(semanticObject); List<Pair<EObject, ICompositeNode>> nodes = detachNodeModel(semanticObject); String serialized = serializeWithoutNodeModel(semanticObject); ITextRegion oldRegion = oldNode.getTextRegion(); String newtext = oldtext.substring(0, oldRegion.getOffset()) + serialized + oldtext.substring(oldRegion.getOffset() + oldRegion.getLength()); EObject newmodel = parseHelper.parse(newtext, semanticObject.eResource().getResourceSet()); parsed = newmodel.eResource().getEObject(oldURI); reattachNodes(nodes); } EcoreUtil.resolveAll(parsed); Assert.assertTrue(parsed.eResource().getErrors().toString(), parsed.eResource().getErrors().isEmpty()); parsed.eResource().getResourceSet().getResources().remove(parsed.eResource()); assertEqualWithEmfFormatter(semanticObject, parsed); } catch (Exception e) { throw new RuntimeException(e); } }