Skip to content

Commit 1c8044e

Browse files
TopologyTemplate property page update
1 parent 433035c commit 1c8044e

File tree

4 files changed

+32
-5
lines changed

4 files changed

+32
-5
lines changed

ToscaDesigner/src/main/java/fr/softeam/toscadesigner/api/tosca/standard/package_/TTopologyTemplate.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -360,7 +360,7 @@ public boolean removeNodeTemplates(final TNodeTemplate obj) {
360360
public boolean removeRelationshipTemplates(final TRelationshipTemplate obj) {
361361
if (obj != null) {
362362
for (Dependency d : new ArrayList<>(this.elt.getDependsOnDependency())) {
363-
if (d.isStereotyped(TTopologyTemplate.MdaTypes.MDAASSOCDEP) && Objects.equals(d.getTagValue(TTopologyTemplate.MdaTypes.MDAASSOCDEP_ROLE), ""))
363+
if (d.isStereotyped(TTopologyTemplate.MdaTypes.MDAASSOCDEP) && Objects.equals(d.getTagValue(TTopologyTemplate.MdaTypes.MDAASSOCDEP_ROLE), "relationshipTemplates"))
364364
if (Objects.equals(d.getDependsOn(), obj.getElement())) {
365365
d.delete();
366366
return true;

ToscaDesigner/src/main/java/fr/softeam/toscadesigner/handlers/propertypages/topologyTemplate/TTopologyTemplatePropertyPage.java

Lines changed: 31 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
import fr.softeam.toscadesigner.api.IToscaDesignerPeerModule;
66
import fr.softeam.toscadesigner.api.ToscaDesignerProxyFactory;
7+
import fr.softeam.toscadesigner.api.tosca.standard.association.TRelationshipTemplate;
78
import fr.softeam.toscadesigner.api.tosca.standard.class_.TNodeTemplate;
89
import fr.softeam.toscadesigner.api.tosca.standard.package_.TGroup;
910
import fr.softeam.toscadesigner.api.tosca.standard.package_.TTopologyTemplate;
@@ -14,6 +15,7 @@
1415

1516
import org.modelio.api.module.propertiesPage.IModulePropertyTable;
1617
import org.modelio.metamodel.uml.infrastructure.ModelElement;
18+
import org.modelio.metamodel.uml.statik.Association;
1719
import org.modelio.metamodel.uml.statik.Class;
1820

1921
@objid("a7f33f74-8435-4a95-a221-94a56c5f4cfd")
@@ -46,7 +48,7 @@ public void changeProperty(int row, String value) {
4648
break;
4749

4850
case 3:
49-
Class elt2 = (Class) getModelElt(TNodeTemplate.MdaTypes.STEREOTYPE_ELT.getExtendedElement(), value);
51+
Class elt2 = (Class) getModelElt(TNodeTemplate.MdaTypes.STEREOTYPE_ELT.getExtendedElement(), value);
5052
if ((elt2 != null)
5153
&& (elt2.isStereotyped(IToscaDesignerPeerModule.MODULE_NAME, TNodeTemplate.STEREOTYPE_NAME))) {
5254
Object pc = ToscaDesignerProxyFactory.instantiate(elt2);
@@ -57,6 +59,19 @@ public void changeProperty(int row, String value) {
5759
}
5860
}
5961
break;
62+
63+
case 4:
64+
Association elt3 = (Association) getModelElt(TRelationshipTemplate.MdaTypes.STEREOTYPE_ELT.getExtendedElement(), value);
65+
if ((elt3!= null)
66+
&& (elt3.isStereotyped(IToscaDesignerPeerModule.MODULE_NAME, TRelationshipTemplate.STEREOTYPE_NAME))) {
67+
Object pc = ToscaDesignerProxyFactory.instantiate(elt3);
68+
if (value.startsWith(this._add)) {
69+
this._element.addRelationshipTemplates((TRelationshipTemplate) pc);
70+
} else {
71+
this._element.removeRelationshipTemplates((TRelationshipTemplate) pc);
72+
}
73+
}
74+
break;
6075
}
6176
}
6277

@@ -67,16 +82,16 @@ public void update(IModulePropertyTable table) {
6782
table.addProperty("Name", _element.getElement().getName());
6883

6984
// groups
70-
List<ModelElement> members_elt1 = extractModelElements(this._element.getGroups());
85+
List<ModelElement> members_elt = extractModelElements(this._element.getGroups());
7186
List<ModelElement> groupList = (TGroup.MdaTypes.STEREOTYPE_ELT.getExtendedElement() != null)
7287
? TGroup.MdaTypes.STEREOTYPE_ELT.getExtendedElement()
7388
: Collections.emptyList();
7489

75-
table.addProperty("Groups", getToscaValue(members_elt1),
90+
table.addProperty("Groups", getToscaValue(members_elt),
7691
getAddRemove(groupList, extractModelElements(this._element.getGroups())));
7792

7893
// node templates
79-
List <ModelElement> members_elt = extractModelElements(this._element.getNodeTemplates());
94+
members_elt = extractModelElements(this._element.getNodeTemplates());
8095
List<ModelElement> nodeTemplateList = (TNodeTemplate.MdaTypes.STEREOTYPE_ELT.getExtendedElement() != null)
8196
? TNodeTemplate.MdaTypes.STEREOTYPE_ELT.getExtendedElement()
8297
: Collections.emptyList();
@@ -86,6 +101,18 @@ public void update(IModulePropertyTable table) {
86101
getToscaValue(members_elt),
87102
getAddRemove(nodeTemplateList, extractModelElements(this._element.getNodeTemplates()))
88103
);
104+
105+
//relationship templates
106+
members_elt = extractModelElements(this._element.getRelationshipTemplates());
107+
List<ModelElement> relationshipTemplates = (TRelationshipTemplate.MdaTypes.STEREOTYPE_ELT.getExtendedElement() != null)
108+
? TRelationshipTemplate.MdaTypes.STEREOTYPE_ELT.getExtendedElement()
109+
: Collections.emptyList();
110+
111+
table.addProperty(
112+
"Relationship templates",
113+
getToscaValue(members_elt),
114+
getAddRemove(relationshipTemplates, extractModelElements(this._element.getRelationshipTemplates()))
115+
);
89116
}
90117

91118
}
377 Bytes
Binary file not shown.
348 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)