Community
Participate
Working Groups
I would suggest a query language for CDO. I thing it would be nice to make queries on cdo via ocl. Maybe it should be possible to add also the content int which the query is executed (on the whole models, or only on one specific model) Interesting would be somthing like recursive functions in ocl like: def: let getSubroles(r: Role) : Set(Role) = r.subrole->collect(x|getSubroles(x))->asSet()->union(r.subrole) The point is that it should be possible to get peaces of the whole environment whitout loading all models: If elements are allreay in the heap, and we get them a second time from the server this should be the same object. :-)
I've added support for OCL at client side. A special IOCLHelper implementation triggers remote requests to lazily gather extents. The scope of the extents can be specified as resource-wide or global. There's a convenient CDOHelperUtil to get the IOCLHelper for CDO: IOCLHelper helper = CDOHelperUtil.createOCLHelper(true); helper.setContext(eObject); The following statements are identical in effect: IOCLHelper helper = CDOHelperUtil.createOCLHelper(); IOCLHelper helper = CDOHelperUtil.createOCLHelper(false); The QueryExtent signal and appropriate API has been added to the CDO protocol and is usable without OCL. The IOCLHelper implementation for CDO and the needed support is in the new org.eclipse.emf.cdo.client.ocl plugin. Some very basic tests are in: /org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/model1/ExtentTest.java /org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/model1/OCLTest.java
Committed to CVS
Fixed in 0.7.0.v200609261409
Move to verified as per bug 206558.
CLOSING