From 34de75d34c55b0ac961f76b1fc1234f16f200494 Mon Sep 17 00:00:00 2001
From: Ansgar Radermacher
Date: Mon, 27 Jan 2014 23:28:20 +0100
Subject: - 426748 - [QDesigner] Instance specifications of interaction
components have double "classifier" attribute
---
.../META-INF/MANIFEST.MF | 1 -
.../core/transformations/MainModelTrafo.java | 4 +-
.../models/library/fifo.notation | 42 +++++--
.../models/library/fifo.uml | 131 ++++++++++++++++++---
4 files changed, 151 insertions(+), 27 deletions(-)
(limited to 'extraplugins')
diff --git a/extraplugins/codegen/org.eclipse.papyrus.texteditor.modelexplorer/META-INF/MANIFEST.MF b/extraplugins/codegen/org.eclipse.papyrus.texteditor.modelexplorer/META-INF/MANIFEST.MF
index 818d1191697..91182541b1d 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.texteditor.modelexplorer/META-INF/MANIFEST.MF
+++ b/extraplugins/codegen/org.eclipse.papyrus.texteditor.modelexplorer/META-INF/MANIFEST.MF
@@ -13,7 +13,6 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.emf.facet.infra.query.core;bundle-version="0.3.0",
com.google.guava;bundle-version="11.0.0",
org.eclipse.papyrus.texteditor.model;bundle-version="1.0.0",
- org.eclipse.emf.facet.widgets.nattable.instance;bundle-version="0.3.0",
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
org.eclipse.core.expressions;bundle-version="3.4.500",
org.eclipse.emf.facet.infra.browser.custom.core;bundle-version="0.3.0",
diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/transformations/MainModelTrafo.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/transformations/MainModelTrafo.java
index da469b85d09..0936fdeea4c 100644
--- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/transformations/MainModelTrafo.java
+++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.core/src/org/eclipse/papyrus/qompass/designer/core/transformations/MainModelTrafo.java
@@ -420,7 +420,9 @@ public class MainModelTrafo {
// copy slots from the source deployment plan that are related to connector configuration
InstanceSpecification smConnectorIS = DepUtils.getNamedSubInstance(smIS, smConnector.getName());
if(smConnectorIS != null) {
- copy.put(smConnectorIS, tmReifiedConnectorIS);
+ // use putPair instead of put only - see bug 426748, avoid that classifier attribute points
+ // to two classifiers (bound and unbound)
+ copy.putPair(smConnectorIS, tmReifiedConnectorIS);
for(Slot smSlot : smConnectorIS.getSlots()) {
copy.getCopy(smSlot);
}
diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.modellibs.core/models/library/fifo.notation b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.modellibs.core/models/library/fifo.notation
index 3e1ac463e04..97040e4aacc 100644
--- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.modellibs.core/models/library/fifo.notation
+++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.modellibs.core/models/library/fifo.notation
@@ -49,7 +49,7 @@
-
+
@@ -78,7 +78,7 @@
-
+
@@ -132,7 +132,7 @@
-
+
@@ -161,7 +161,7 @@
-
+
@@ -208,7 +208,7 @@
-
+
@@ -255,7 +255,7 @@
-
+
@@ -302,7 +302,7 @@
-
+
@@ -357,7 +357,7 @@
-
+
@@ -393,7 +393,7 @@
-
+
@@ -1014,12 +1014,36 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.modellibs.core/models/library/fifo.uml b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.modellibs.core/models/library/fifo.uml
index 18e902f0d79..64e9e30b270 100644
--- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.modellibs.core/models/library/fifo.uml
+++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.modellibs.core/models/library/fifo.uml
@@ -125,7 +125,7 @@ if (m_filled < m_size) {
This is an implementation of a FIFO of a configurable size (default: 20 elements).
-
+
Configuration attribute: the size of the FIFO
@@ -157,10 +157,12 @@ if (m_filled < m_size) {
-
-
-
-
+
+
+
+
+
+
C/C++
if (m_filled > 0) {
@@ -174,10 +176,10 @@ if (m_filled < m_size) {
return m_fifo [current_pos];
}
-
-
-
-
+
+
+
+
C/C++
// copy passed parameters ...
@@ -190,10 +192,11 @@ if (m_filled < m_size) {
}
}
-
-
-
-
+
+
+
+
+
C/C++
return (m_filled > 0);
@@ -211,16 +214,37 @@ if (m_size == 0) {
m_fifo = new [pkgTemplateParameter('T')+'[m_size]'/];
[/template]