diff options
author | Eike Stepper | 2010-10-08 17:59:54 +0000 |
---|---|---|
committer | Eike Stepper | 2010-10-08 17:59:54 +0000 |
commit | e9e7d0213d27d538fe420153036af82e7df511ab (patch) | |
tree | 2be727e899975bb0de053a56a7caf95b0dfea7fa /plugins/org.eclipse.emf.cdo.server.ocl | |
parent | 01700460fd91df78dc01bd6f026f7077fe98fa5a (diff) | |
download | cdo-e9e7d0213d27d538fe420153036af82e7df511ab.tar.gz cdo-e9e7d0213d27d538fe420153036af82e7df511ab.tar.xz cdo-e9e7d0213d27d538fe420153036af82e7df511ab.zip |
[256931] Provide common query language (OCL)
https://bugs.eclipse.org/bugs/show_bug.cgi?id=256931
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.server.ocl')
2 files changed, 10 insertions, 5 deletions
diff --git a/plugins/org.eclipse.emf.cdo.server.ocl/src/org/eclipse/emf/cdo/server/ocl/CDOExtentCreator.java b/plugins/org.eclipse.emf.cdo.server.ocl/src/org/eclipse/emf/cdo/server/ocl/CDOExtentCreator.java index 0fa6b99e78..da00a092bf 100644 --- a/plugins/org.eclipse.emf.cdo.server.ocl/src/org/eclipse/emf/cdo/server/ocl/CDOExtentCreator.java +++ b/plugins/org.eclipse.emf.cdo.server.ocl/src/org/eclipse/emf/cdo/server/ocl/CDOExtentCreator.java @@ -21,6 +21,7 @@ import org.eclipse.emf.cdo.view.CDOView; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.spi.cdo.InternalCDOObject; import java.util.Collection; import java.util.HashSet; @@ -81,7 +82,8 @@ public class CDOExtentCreator implements OCLExtentCreator revisionCacheAdder.addRevision(revision); } - extent.add(view.getObject(revision.getID())); + InternalCDOObject object = (InternalCDOObject)view.getObject(revision.getID()); + extent.add(object.cdoInternalInstance()); return !canceled.get(); } }); @@ -239,7 +241,8 @@ public class CDOExtentCreator implements OCLExtentCreator try { - return getView().getObject(next); + InternalCDOObject object = (InternalCDOObject)getView().getObject(next); + return object.cdoInternalInstance(); } finally { diff --git a/plugins/org.eclipse.emf.cdo.server.ocl/src/org/eclipse/emf/cdo/server/ocl/OCLQueryHandler.java b/plugins/org.eclipse.emf.cdo.server.ocl/src/org/eclipse/emf/cdo/server/ocl/OCLQueryHandler.java index 1383175f86..a71576d878 100644 --- a/plugins/org.eclipse.emf.cdo.server.ocl/src/org/eclipse/emf/cdo/server/ocl/OCLQueryHandler.java +++ b/plugins/org.eclipse.emf.cdo.server.ocl/src/org/eclipse/emf/cdo/server/ocl/OCLQueryHandler.java @@ -35,6 +35,7 @@ import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EClassifier; import org.eclipse.emf.ecore.EEnumLiteral; import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.spi.cdo.InternalCDOObject; import org.eclipse.ocl.Environment; import org.eclipse.ocl.OCL; @@ -95,7 +96,7 @@ public class OCLQueryHandler implements IQueryHandler OCLHelper<EClassifier, ?, ?, Constraint> helper = ocl.createOCLHelper(); EClassifier classifier; - CDOObject object = null; + EObject object = null; Object contextParameter = parameters.get(CONTEXT_PARAMETER); parameters.remove(CONTEXT_PARAMETER); @@ -103,7 +104,8 @@ public class OCLQueryHandler implements IQueryHandler if (contextParameter instanceof CDOID) { CDOID id = (CDOID)contextParameter; - object = view.getObject(id); + InternalCDOObject cdoObject = (InternalCDOObject)view.getObject(id); + object = cdoObject.cdoInternalInstance(); classifier = object.eClass(); } else if (contextParameter instanceof EClassifier) @@ -172,7 +174,7 @@ public class OCLQueryHandler implements IQueryHandler } } - protected Object evaluate(Query<EClassifier, EClass, EObject> query, CDOObject object) + protected Object evaluate(Query<EClassifier, EClass, EObject> query, EObject object) { if (object == null) { |