diff options
author | Camille Letavernier | 2015-11-06 14:01:56 +0000 |
---|---|---|
committer | Camille Letavernier | 2015-11-06 14:05:59 +0000 |
commit | e8824e4caf8d630a27344ddc2ce5664b33819b50 (patch) | |
tree | e788212e1026130d8cda81afb28ac3053b6da631 /plugins/customization | |
parent | 2f33599c2b1f5027a45f61f71c849eb63777e680 (diff) | |
download | org.eclipse.papyrus-e8824e4caf8d630a27344ddc2ce5664b33819b50.tar.gz org.eclipse.papyrus-e8824e4caf8d630a27344ddc2ce5664b33819b50.tar.xz org.eclipse.papyrus-e8824e4caf8d630a27344ddc2ce5664b33819b50.zip |
480969: [Properties View Generation] Generalizations between stereotypes
are not taken into account
https://bugs.eclipse.org/bugs/show_bug.cgi?id=480969
Change-Id: Ia0c65145ad006974e7d9eca2218b29134cee7bf3
Signed-off-by: Camille Letavernier <camille.letavernier@cea.fr>
Diffstat (limited to 'plugins/customization')
-rw-r--r-- | plugins/customization/org.eclipse.papyrus.customization.properties.generation/transforms/profile2datacontext.qvto | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/plugins/customization/org.eclipse.papyrus.customization.properties.generation/transforms/profile2datacontext.qvto b/plugins/customization/org.eclipse.papyrus.customization.properties.generation/transforms/profile2datacontext.qvto index 8e59878af64..d1a1552c36e 100644 --- a/plugins/customization/org.eclipse.papyrus.customization.properties.generation/transforms/profile2datacontext.qvto +++ b/plugins/customization/org.eclipse.papyrus.customization.properties.generation/transforms/profile2datacontext.qvto @@ -107,15 +107,14 @@ abstract mapping Classifier::toAbstractDCElement() : element : DataContextElemen mapping Stereotype::toDataContextElement() : element : DataContextElement, viewSingle : View, viewMultiple : View inherits Classifier::toAbstractDCElement{ element.properties := self.attribute->select(e | e.isAttribute(self)).map toProperty(); + + //Stereotype generalization var superClassifiers := self.generalization.target->select(e | e.isView()).oclAsType(Classifier); - var tempAtt := self.ownedAttribute->select(e | not e.isAttribute(self)).getDataContextElement()->asSet(); - if not superClassifiers->isEmpty() then - - element.supertypes := self.generalization.target->select(e | e.isView()).oclAsType(Classifier).late resolve(DataContextElement) - else - element.supertypes := superClassifiers.map toDCElement().element->union(tempAtt)->asSet() - endif; + //base metaclasses + var baseElements := self.ownedAttribute->select(e | not e.isAttribute(self)).getDataContextElement()->asSet(); + + element.supertypes := superClassifiers.map toDCElement().element->union(baseElements)->asSet() } mapping DataType::toDataContextElement() : element : DataContextElement, viewSingle : View, viewMultiple : View inherits Classifier::toAbstractDCElement when { |