/** * {@inheritDoc} * * @see org.teiid.designer.core.container.ObjectManager#setObjectId(org.eclipse.emf.ecore.EObject, * java.lang.String) */ @Override public void setObjectId(EObject object, String uuid) { Resource resrc = object.eResource(); if (resrc instanceof XResource) { ((XResource) resrc).setUuid(object, uuid); } else { MtkXmiResourceImpl.DETACHED_EOBJECT_TO_UUID_MAP.put(object, uuid); MtkXmiResourceImpl.DETACHED_UUID_TO_EOBJECT_MAP.put(uuid, object); } }
/** * {@inheritDoc} * * @see org.teiid.designer.core.container.ObjectManager#getObjectId(org.eclipse.emf.ecore.EObject) */ @Override public String getObjectId(EObject object) { CoreArgCheck.isNotNull(object); Resource resrc = object.eResource(); if (resrc == null) { // check unattached objects return MtkXmiResourceImpl.DETACHED_EOBJECT_TO_UUID_MAP.get(object); } String uuid = resrc instanceof XResource ? ((XResource) resrc).getUuid(object) : resrc.getURIFragment(object); if ((uuid != null) && uuid.startsWith(UUID.PROTOCOL)) { return uuid; } return null; }