[560196] Re-instate check for AS before CS
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/src/org/eclipse/ocl/xtext/essentialocl/utilities/EssentialOCLCSResource.java b/plugins/org.eclipse.ocl.xtext.essentialocl/src/org/eclipse/ocl/xtext/essentialocl/utilities/EssentialOCLCSResource.java
index 4254fcb..b2f7b30 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/src/org/eclipse/ocl/xtext/essentialocl/utilities/EssentialOCLCSResource.java
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/src/org/eclipse/ocl/xtext/essentialocl/utilities/EssentialOCLCSResource.java
@@ -273,6 +273,10 @@
if (uri.fileExtension().equals(PivotConstants.ESSENTIAL_OCL_FILE_EXTENSION)) { // FIXME use csResource.getASResource(metamodelManager);
return new TransientASResource(asResourceSet, asURI);
}
+ ASResource asResource = (ASResource) asResourceSet.getResource(asURI, false);
+ if (asResource != null) { // This happens for a *.ecore load for an OCLinEcore edit - see Bug 560196
+ return asResource;
+ }
@SuppressWarnings("null")@NonNull Resource asResource2 = ContentTypeFirstResourceFactoryRegistry.createResource(asResourceSet, asURI, getASContentType());
if (asResource2 instanceof ASResource) {
((ASResource)asResource2).setSaveable(false);