Bug 123683 - FeatureMap support
Summary: FeatureMap support
Status: CLOSED FIXED
Alias: None
Product: GMF-Runtime
Classification: Modeling
Component: General (show other bugs)
Version: 1.0   Edit
Hardware: PC Windows XP
: P3 critical
Target Milestone: 1.0   Edit
Assignee: Chris McGee CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on: 129178
Blocks:
  Show dependency tree
 
Reported: 2006-01-12 17:16 EST by Marius Slavescu CLA
Modified: 2010-07-19 12:24 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marius Slavescu CLA 2006-01-12 17:16:04 EST
I found that EMF FeatureMap are not supported very well in the GMF runtime, especially the ExtendedMetadata. 

One example is in MSLUtil.destroy(MSLEditingDomain, EObject, int) line: 217:

   if (reference.isMany())
    ((Collection) container.eGet(reference)).remove(eObject);
   else
    container.eSet(reference, null);

I have an XSD based model and an extesion to it where I use substitution groups. The reference instance (container.eGet(reference)) that hits this fragment is a FeatureMapUtil$FeatureEList, the reference multiplicity is -2 (unspecified) and that will go on the container.eSet(reference, null) path which is wrong.

You will need to check somethig similar to what you see in the FeatureMapUtil.isMany().

FeatureMapUtil.isMany() returns true for my feature which is correct.
Comment 1 Chris McGee CLA 2006-02-24 10:28:51 EST
I'm looking for a test case for the fix to the bug. Is it possible for you to
provide an example attached to this bugzilla?
Comment 2 Vishy Ramaswamy CLA 2006-03-09 15:18:44 EST
This one is related to Bugzilla 129178 that has been fixed. The MSLUtil has been swept to use the FeatureMapUtil functionality
Comment 3 Richard Gronback CLA 2008-08-13 13:07:20 EDT
[target cleanup] 1.0 M6 was the original target milestone for this bug
Comment 4 Paul Slauenwhite CLA 2009-06-30 09:35:35 EDT
As of TPTP 4.6.0, TPTP is in maintenance mode and focusing on improving quality by resolving relevant enhancements/defects and increasing test coverage through test creation, automation, Build Verification Tests (BVTs), and expanded run-time execution. As part of the TPTP Bugzilla housecleaning process (see http://wiki.eclipse.org/Bugzilla_Housecleaning_Processes), this enhancement/defect is verified/closed by the Project Lead since this originator of this enhancement/defect has an inactive Bugzilla account and considered to be fixed. If this enhancement/defect is still unresolved and reproducible in the latest TPTP release (http://www.eclipse.org/tptp/home/downloads/), please re-open.
Comment 5 Paul Slauenwhite CLA 2009-06-30 09:57:18 EDT
This enhancement/defect was mistaken closed as part of the TPTP 4.6 Bugzilla housecleaning process (see http://wiki.eclipse.org/Bugzilla_Housecleaning_Processes) since the originator of this enhancement/defect has an inactive Bugzilla account.  If this enhancement/defect is still unresolved and reproducible, please re-open.
Comment 6 Eclipse Webmaster CLA 2010-07-19 12:24:49 EDT
[GMF Restructure] Bug 319140 : product GMF and component
Runtime EMF was the original product and component for this bug