0d48719c6b3d0937dc5738395dc2096811c92b53
[so.git] / bpmn / so-bpmn-infrastructure-flows / src / main / resources / subprocess / DoCreateVnfAndModules.bpmn
1 <?xml version="1.0" encoding="UTF-8"?>
2 <bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.4.0">
3   <bpmn:process id="DoCreateVnfAndModules" name="DoCreateVnfAndModules" isExecutable="true">
4     <bpmn:startEvent id="StartEvent_1">
5       <bpmn:outgoing>SequenceFlow_0o4vuzt</bpmn:outgoing>
6     </bpmn:startEvent>
7     <bpmn:scriptTask id="PreProcessRequest" name="PreProcess Request" scriptFormat="groovy">
8       <bpmn:incoming>SequenceFlow_0o4vuzt</bpmn:incoming>
9       <bpmn:outgoing>SequenceFlow_1xd3ri5</bpmn:outgoing>
10       <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
11 def doCreateVnfAndModules = new DoCreateVnfAndModules()
12 doCreateVnfAndModules.preProcessRequest(execution)]]></bpmn:script>
13     </bpmn:scriptTask>
14     <bpmn:callActivity id="CreateBaseVfModule" name="Create Base VF Module" calledElement="DoCreateVfModule">
15       <bpmn:extensionElements>
16         <camunda:in source="msoRequestId" target="msoRequestId" />
17         <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled" />
18         <camunda:in source="disableRollback" target="disableRollback" />
19         <camunda:in source="vnfType" target="vnfType" />
20         <camunda:in source="vnfName" target="vnfName" />
21         <camunda:in source="vnfId" target="vnfId" />
22         <camunda:in source="baseVfModuleName" target="vfModuleName" />
23         <camunda:in source="vfModuleType" target="vfModuleType" />
24         <camunda:in source="volumeGroupId" target="volumeGroupId" />
25         <camunda:in source="volumeGroupName" target="volumeGroupName" />
26         <camunda:in source="baseVfModuleId" target="vfModuleId" />
27         <camunda:in source="baseVfModuleModelInfo" target="vfModuleModelInfo" />
28         <camunda:in source="isBaseVfModule" target="isBaseVfModule" />
29         <camunda:in source="asdcServiceModelVersion" target="asdcServiceModelVersion" />
30         <camunda:out source="vfModuleId" target="createdVfModuleId" />
31         <camunda:out source="vfModuleOutputParams" target="createdVfModuleOutputParams" />
32         <camunda:out source="rollbackData" target="DCVAM_baseRollbackData" />
33         <camunda:out source="WorkflowException" target="WorkflowException" />
34         <camunda:in source="serviceInstanceId" target="serviceInstanceId" />
35         <camunda:in source="serviceModelInfo" target="serviceModelInfo" />
36         <camunda:in source="vnfModelInfo" target="vnfModelInfo" />
37         <camunda:in source="globalSubscriberId" target="globalSubscriberId" />
38         <camunda:in source="sdncVersion" target="sdncVersion" />
39         <camunda:in source="lcpCloudRegionId" target="lcpCloudRegionId" />
40         <camunda:in source="tenantId" target="tenantId" />
41         <camunda:in source="false" target="usePreload" />
42         <camunda:in source="aLaCarte" target="aLaCarte" />
43       </bpmn:extensionElements>
44       <bpmn:incoming>SequenceFlow_1hf7k7q</bpmn:incoming>
45       <bpmn:outgoing>SequenceFlow_1ixcnb6</bpmn:outgoing>
46     </bpmn:callActivity>
47     <bpmn:sequenceFlow id="SequenceFlow_0o4vuzt" sourceRef="StartEvent_1" targetRef="PreProcessRequest" />
48     <bpmn:sequenceFlow id="SequenceFlow_1xd3ri5" sourceRef="PreProcessRequest" targetRef="QueryCatalogDB" />
49     <bpmn:callActivity id="CreateAddOnVfModule" name="Create Add-On VF Module" calledElement="DoCreateVfModule">
50       <bpmn:extensionElements>
51         <camunda:in source="msoRequestId" target="msoRequestId" />
52         <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled" />
53         <camunda:in source="disableRollback" target="disableRollback" />
54         <camunda:in source="vnfType" target="vnfType" />
55         <camunda:in source="vnfName" target="vnfName" />
56         <camunda:in source="vnfId" target="vnfId" />
57         <camunda:in source="addOnVfModuleName" target="vfModuleName" />
58         <camunda:in source="vfModuleType" target="vfModuleType" />
59         <camunda:in source="addOnVfModuleId" target="vfModuleId" />
60         <camunda:in source="volumeGroupId" target="volumeGroupId" />
61         <camunda:in source="volumeGroupName" target="volumeGroupName" />
62         <camunda:in source="addOnVfModuleModelInfo" target="vfModuleModelInfo" />
63         <camunda:in source="isBaseVfModule" target="isBaseVfModule" />
64         <camunda:in source="asdcServiceModelVersion" target="asdcServiceModelVersion" />
65         <camunda:out source="vfModuleId" target="createdVfModuleId" />
66         <camunda:out source="vfModuleOutputParameters" target="createdVfModuleOutputParameters" />
67         <camunda:out source="rollbackData" target="DCVAM_addOnRollbackData" />
68         <camunda:out source="WorkflowException" target="WorkflowException" />
69         <camunda:in source="serviceInstanceId" target="serviceInstanceId" />
70         <camunda:in source="serviceModelInfo" target="serviceModelInfo" />
71         <camunda:in source="vnfModelInfo" target="vnfModelInfo" />
72         <camunda:in source="globalSubscriberId" target="globalSubscriberId" />
73         <camunda:in source="sdncVersion" target="sdncVersion" />
74         <camunda:in source="lcpCloudRegionId" target="lcpCloudRegionId" />
75         <camunda:in source="tenantId" target="tenantId" />
76         <camunda:in source="false" target="usePreload" />
77         <camunda:in source="aLaCarte" target="aLaCarte" />
78       </bpmn:extensionElements>
79       <bpmn:incoming>SequenceFlow_1lh21yl</bpmn:incoming>
80       <bpmn:outgoing>SequenceFlow_1llbx0k</bpmn:outgoing>
81     </bpmn:callActivity>
82     <bpmn:scriptTask id="Task_1lfmdks" name="Validate Create Add-On VF Module Response" scriptFormat="groovy">
83       <bpmn:incoming>SequenceFlow_1llbx0k</bpmn:incoming>
84       <bpmn:outgoing>SequenceFlow_1mguf2m</bpmn:outgoing>
85       <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
86 def doCreateVnfAndModules = new DoCreateVnfAndModules()
87 doCreateVnfAndModules.validateAddOnModule(execution)]]></bpmn:script>
88     </bpmn:scriptTask>
89     <bpmn:endEvent id="EndEvent_0v6povc">
90       <bpmn:incoming>SequenceFlow_132bohl</bpmn:incoming>
91       <bpmn:terminateEventDefinition />
92     </bpmn:endEvent>
93     <bpmn:sequenceFlow id="SequenceFlow_1llbx0k" sourceRef="CreateAddOnVfModule" targetRef="Task_1lfmdks" />
94     <bpmn:exclusiveGateway id="ExclusiveGateway_1vyqr5o" name="Are there more add-on modules?" default="SequenceFlow_132bohl">
95       <bpmn:extensionElements>
96         <camunda:properties>
97           <camunda:property />
98         </camunda:properties>
99       </bpmn:extensionElements>
100       <bpmn:incoming>SequenceFlow_1a6wyuu</bpmn:incoming>
101       <bpmn:incoming>SequenceFlow_0j52dxv</bpmn:incoming>
102       <bpmn:outgoing>SequenceFlow_132bohl</bpmn:outgoing>
103       <bpmn:outgoing>SequenceFlow_0jz6bqn</bpmn:outgoing>
104     </bpmn:exclusiveGateway>
105     <bpmn:sequenceFlow id="SequenceFlow_132bohl" name="No" sourceRef="ExclusiveGateway_1vyqr5o" targetRef="EndEvent_0v6povc" />
106     <bpmn:callActivity id="CreateVNF" name="Create VNF" calledElement="DoCreateVnf">
107       <bpmn:extensionElements>
108         <camunda:in source="msoRequestId" target="msoRequestId" />
109         <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled" />
110         <camunda:in source="disableRollback" target="disableRollback" />
111         <camunda:in source="serviceInstanceId" target="serviceInstanceId" />
112         <camunda:in source="vnfModelInfo" target="vnfModelInfo" />
113         <camunda:in source="vnfType" target="vnfType" />
114         <camunda:in source="vnfName" target="vnfName" />
115         <camunda:in source="vnfId" target="vnfId" />
116         <camunda:in source="vnfInputParameters" target="vnfInputParameters" />
117         <camunda:in source="productFamilyId" target="productFamilyId" />
118         <camunda:out source="vnfId" target="vnfId" />
119         <camunda:out source="vnfOutputParams" target="vnfOutputParams" />
120         <camunda:out source="rollbackData" target="rollbackData" />
121         <camunda:out source="WorkflowException" target="WorkflowException" />
122         <camunda:in source="serviceModelInfo" target="serviceModelInfo" />
123         <camunda:in source="globalSubscriberId" target="globalSubscriberId" />
124         <camunda:in source="sdncVersion" target="sdncVersion" />
125         <camunda:out source="vnfName" target="vnfName" />
126         <camunda:in source="lcpCloudRegionId" target="lcpCloudRegionId" />
127         <camunda:in source="tenantId" target="tenantId" />
128         <camunda:in source="rollbackData" target="rollbackData" />
129         <camunda:in source="vnfResourceDecomposition" target="vnfResourceDecomposition" />
130       </bpmn:extensionElements>
131       <bpmn:incoming>SequenceFlow_19ohb1a</bpmn:incoming>
132       <bpmn:outgoing>SequenceFlow_07u8e3l</bpmn:outgoing>
133     </bpmn:callActivity>
134     <bpmn:scriptTask id="PreProcessAddOnModule" name="PreProcess Add-On Module" scriptFormat="groovy">
135       <bpmn:incoming>SequenceFlow_0jz6bqn</bpmn:incoming>
136       <bpmn:outgoing>SequenceFlow_12x4dvf</bpmn:outgoing>
137       <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
138 def doCreateVnfAndModules = new DoCreateVnfAndModules()
139 doCreateVnfAndModules.preProcessAddOnModule(execution)]]></bpmn:script>
140     </bpmn:scriptTask>
141     <bpmn:scriptTask id="QueryCatalogDB" name="Query Catalog DB for VF Modules" scriptFormat="groovy">
142       <bpmn:incoming>SequenceFlow_1xd3ri5</bpmn:incoming>
143       <bpmn:outgoing>SequenceFlow_19ohb1a</bpmn:outgoing>
144       <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
145 def doCreateVnfAndModules = new DoCreateVnfAndModules()
146 doCreateVnfAndModules.queryCatalogDB(execution)]]></bpmn:script>
147     </bpmn:scriptTask>
148     <bpmn:exclusiveGateway id="ExclusiveGateway_1hx9s0y" name="Less than initialCount?" default="SequenceFlow_1vrogpr">
149       <bpmn:incoming>SequenceFlow_1mguf2m</bpmn:incoming>
150       <bpmn:incoming>SequenceFlow_12x4dvf</bpmn:incoming>
151       <bpmn:outgoing>SequenceFlow_0kld3qt</bpmn:outgoing>
152       <bpmn:outgoing>SequenceFlow_1vrogpr</bpmn:outgoing>
153     </bpmn:exclusiveGateway>
154     <bpmn:sequenceFlow id="SequenceFlow_0jz6bqn" name="yes" sourceRef="ExclusiveGateway_1vyqr5o" targetRef="PreProcessAddOnModule">
155       <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[#{execution.getVariable("addOnModulesDeployed") <  execution.getVariable("addOnModulesToDeploy")}]]></bpmn:conditionExpression>
156     </bpmn:sequenceFlow>
157     <bpmn:sequenceFlow id="SequenceFlow_0kld3qt" name="yes" sourceRef="ExclusiveGateway_1hx9s0y" targetRef="GenerateAddOnModuleName">
158       <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression"><![CDATA[#{execution.getVariable("instancesOfThisModuleDeployed") < execution.getVariable("initialCount")}]]></bpmn:conditionExpression>
159     </bpmn:sequenceFlow>
160     <bpmn:sequenceFlow id="SequenceFlow_1mguf2m" sourceRef="Task_1lfmdks" targetRef="ExclusiveGateway_1hx9s0y" />
161     <bpmn:sequenceFlow id="SequenceFlow_1vrogpr" name="no" sourceRef="ExclusiveGateway_1hx9s0y" targetRef="PostProcessAddOnModule" />
162     <bpmn:sequenceFlow id="SequenceFlow_1hf7k7q" sourceRef="GenerateBaseModuleName" targetRef="CreateBaseVfModule" />
163     <bpmn:callActivity id="GenerateBaseModuleName" name="Generate Base Module Name" calledElement="GenerateVfModuleName">
164       <bpmn:extensionElements>
165         <camunda:in source="vnfId" target="vnfId" />
166         <camunda:in source="vnfName" target="vnfName" />
167         <camunda:in source="baseVfModuleLabel" target="vfModuleLabel" />
168         <camunda:in source="basePersonaModelId" target="personaModelId" />
169         <camunda:out source="vfModuleName" target="baseVfModuleName" />
170         <camunda:out source="WorkflowException" target="WorkflowException" />
171         <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled" />
172       </bpmn:extensionElements>
173       <bpmn:incoming>SequenceFlow_07u8e3l</bpmn:incoming>
174       <bpmn:outgoing>SequenceFlow_1hf7k7q</bpmn:outgoing>
175     </bpmn:callActivity>
176     <bpmn:callActivity id="GenerateAddOnModuleName" name="Generate Add-On Module Name" calledElement="GenerateVfModuleName">
177       <bpmn:extensionElements>
178         <camunda:in source="vnfId" target="vnfId" />
179         <camunda:in source="vnfName" target="vnfName" />
180         <camunda:in source="addOnVfModuleLabel" target="vfModuleLabel" />
181         <camunda:in source="addOnPersonaModelId" target="personaModelId" />
182         <camunda:out source="vfModuleName" target="addOnVfModuleName" />
183         <camunda:out source="WorkflowException" target="WorkflowException" />
184         <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled" />
185       </bpmn:extensionElements>
186       <bpmn:incoming>SequenceFlow_0kld3qt</bpmn:incoming>
187       <bpmn:outgoing>SequenceFlow_1lh21yl</bpmn:outgoing>
188     </bpmn:callActivity>
189     <bpmn:sequenceFlow id="SequenceFlow_1lh21yl" sourceRef="GenerateAddOnModuleName" targetRef="CreateAddOnVfModule" />
190     <bpmn:sequenceFlow id="SequenceFlow_12x4dvf" sourceRef="PreProcessAddOnModule" targetRef="ExclusiveGateway_1hx9s0y" />
191     <bpmn:sequenceFlow id="SequenceFlow_1ixcnb6" sourceRef="CreateBaseVfModule" targetRef="Task_054rz9i" />
192     <bpmn:sequenceFlow id="SequenceFlow_1a6wyuu" sourceRef="Task_054rz9i" targetRef="ExclusiveGateway_1vyqr5o" />
193     <bpmn:scriptTask id="Task_054rz9i" name="Validate Create Base VF Module Response" scriptFormat="groovy">
194       <bpmn:incoming>SequenceFlow_1ixcnb6</bpmn:incoming>
195       <bpmn:outgoing>SequenceFlow_1a6wyuu</bpmn:outgoing>
196       <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
197 def doCreateVnfAndModules = new DoCreateVnfAndModules()
198 doCreateVnfAndModules.validateBaseModule(execution)]]></bpmn:script>
199     </bpmn:scriptTask>
200     <bpmn:subProcess id="SubProcess_0u7tbb2" name="Sub-process for Application Errors" triggeredByEvent="true">
201       <bpmn:endEvent id="EndEvent_16s0a3q">
202         <bpmn:incoming>SequenceFlow_1h74w1v</bpmn:incoming>
203       </bpmn:endEvent>
204       <bpmn:callActivity id="CallActivity_0gtajjm" name="Call DoCreateVnfAndModulesRollback" calledElement="DoCreateVnfAndModulesRollback">
205         <bpmn:extensionElements>
206           <camunda:in source="msoRequestId" target="msoRequestId" />
207           <camunda:in source="rollbackData" target="rollbackData" />
208           <camunda:in source="disableRollback" target="disableRollback" />
209           <camunda:out source="rolledBack" target="rolledBack" />
210           <camunda:out source="rollbackError" target="rollbackError" />
211           <camunda:in source="sdncVersion" target="sdncVersion" />
212         </bpmn:extensionElements>
213         <bpmn:incoming>SequenceFlow_03v8mmc</bpmn:incoming>
214         <bpmn:outgoing>SequenceFlow_0yu0im2</bpmn:outgoing>
215       </bpmn:callActivity>
216       <bpmn:scriptTask id="PreProcessRollback" name="Pre Process Rollback" scriptFormat="groovy">
217         <bpmn:incoming>SequenceFlow_1l0rxnh</bpmn:incoming>
218         <bpmn:outgoing>SequenceFlow_03v8mmc</bpmn:outgoing>
219         <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
220 def dcvam = new DoCreateVnfAndModules()
221 dcvam.preProcessRollback(execution)]]></bpmn:script>
222       </bpmn:scriptTask>
223       <bpmn:scriptTask id="PostProcessRollback" name="Post Process Rollback" scriptFormat="groovy">
224         <bpmn:incoming>SequenceFlow_0yu0im2</bpmn:incoming>
225         <bpmn:outgoing>SequenceFlow_1h74w1v</bpmn:outgoing>
226         <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
227 def dcvam = new DoCreateVnfAndModules()
228 dcvam.postProcessRollback(execution)]]></bpmn:script>
229       </bpmn:scriptTask>
230       <bpmn:sequenceFlow id="SequenceFlow_1l0rxnh" sourceRef="StartEvent_1nbwxby" targetRef="PreProcessRollback" />
231       <bpmn:sequenceFlow id="SequenceFlow_1h74w1v" sourceRef="PostProcessRollback" targetRef="EndEvent_16s0a3q" />
232       <bpmn:sequenceFlow id="SequenceFlow_03v8mmc" sourceRef="PreProcessRollback" targetRef="CallActivity_0gtajjm" />
233       <bpmn:sequenceFlow id="SequenceFlow_0yu0im2" sourceRef="CallActivity_0gtajjm" targetRef="PostProcessRollback" />
234       <bpmn:startEvent id="StartEvent_1nbwxby">
235         <bpmn:outgoing>SequenceFlow_1l0rxnh</bpmn:outgoing>
236         <bpmn:errorEventDefinition errorRef="Error_2" />
237       </bpmn:startEvent>
238     </bpmn:subProcess>
239     <bpmn:sequenceFlow id="SequenceFlow_19ohb1a" sourceRef="QueryCatalogDB" targetRef="CreateVNF" />
240     <bpmn:sequenceFlow id="SequenceFlow_07u8e3l" sourceRef="CreateVNF" targetRef="GenerateBaseModuleName" />
241     <bpmn:sequenceFlow id="SequenceFlow_0j52dxv" sourceRef="PostProcessAddOnModule" targetRef="ExclusiveGateway_1vyqr5o" />
242     <bpmn:scriptTask id="PostProcessAddOnModule" name="PostProcess Add-On Module" scriptFormat="groovy">
243       <bpmn:incoming>SequenceFlow_1vrogpr</bpmn:incoming>
244       <bpmn:outgoing>SequenceFlow_0j52dxv</bpmn:outgoing>
245       <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
246 def doCreateVnfAndModules = new DoCreateVnfAndModules()
247 doCreateVnfAndModules.postProcessAddOnModule(execution)]]></bpmn:script>
248     </bpmn:scriptTask>
249     <bpmn:sequenceFlow id="SequenceFlow_1t407j7" sourceRef="Task_1mrb29r" targetRef="Task_0qrf3e8" />
250     <bpmn:sequenceFlow id="SequenceFlow_0baw1tl" sourceRef="Task_0qrf3e8" targetRef="GenerateBaseModuleName" />
251     <bpmn:scriptTask id="Task_1mrb29r" name="Create Platform" scriptFormat="groovy">
252       <bpmn:incoming>SequenceFlow_07u8e3l</bpmn:incoming>
253       <bpmn:outgoing>SequenceFlow_1t407j7</bpmn:outgoing>
254       <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
255 def doCreateVnfAndModules = new DoCreateVnfAndModules()
256 doCreateVnfAndModules.createPlatform(execution)]]></bpmn:script>
257     </bpmn:scriptTask>
258     <bpmn:scriptTask id="Task_0qrf3e8" name="Create Line-of-Business" scriptFormat="groovy">
259       <bpmn:incoming>SequenceFlow_1t407j7</bpmn:incoming>
260       <bpmn:outgoing>SequenceFlow_0baw1tl</bpmn:outgoing>
261       <bpmn:script><![CDATA[import org.onap.so.bpmn.infrastructure.scripts.*
262 def doCreateVnfAndModules = new DoCreateVnfAndModules()
263 doCreateVnfAndModules.createLineOfBusiness(execution)]]></bpmn:script>
264     </bpmn:scriptTask>
265   </bpmn:process>
266   <bpmn:error id="Error_1" name="Java Lang Exception" errorCode="java.lang.Exception" />
267   <bpmn:error id="Error_2" name="MSO Workflow Exception" errorCode="MSOWorkflowException" />
268   <bpmndi:BPMNDiagram id="BPMNDiagram_1">
269     <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoCreateVnfAndModules">
270       <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">
271         <dc:Bounds x="152" y="147" width="36" height="36" />
272         <bpmndi:BPMNLabel>
273           <dc:Bounds x="170" y="183" width="0" height="0" />
274         </bpmndi:BPMNLabel>
275       </bpmndi:BPMNShape>
276       <bpmndi:BPMNShape id="ScriptTask_1tco8kw_di" bpmnElement="PreProcessRequest">
277         <dc:Bounds x="256" y="125" width="100" height="80" />
278       </bpmndi:BPMNShape>
279       <bpmndi:BPMNShape id="CallActivity_1sztzw8_di" bpmnElement="CreateBaseVfModule">
280         <dc:Bounds x="1239" y="125" width="100" height="80" />
281       </bpmndi:BPMNShape>
282       <bpmndi:BPMNEdge id="SequenceFlow_0o4vuzt_di" bpmnElement="SequenceFlow_0o4vuzt">
283         <di:waypoint xsi:type="dc:Point" x="188" y="165" />
284         <di:waypoint xsi:type="dc:Point" x="256" y="165" />
285         <bpmndi:BPMNLabel>
286           <dc:Bounds x="222" y="150" width="0" height="0" />
287         </bpmndi:BPMNLabel>
288       </bpmndi:BPMNEdge>
289       <bpmndi:BPMNEdge id="SequenceFlow_1xd3ri5_di" bpmnElement="SequenceFlow_1xd3ri5">
290         <di:waypoint xsi:type="dc:Point" x="356" y="165" />
291         <di:waypoint xsi:type="dc:Point" x="418" y="165" />
292         <bpmndi:BPMNLabel>
293           <dc:Bounds x="387" y="150" width="0" height="0" />
294         </bpmndi:BPMNLabel>
295       </bpmndi:BPMNEdge>
296       <bpmndi:BPMNShape id="CallActivity_0auiwq0_di" bpmnElement="CreateAddOnVfModule">
297         <dc:Bounds x="2100" y="57" width="100" height="80" />
298       </bpmndi:BPMNShape>
299       <bpmndi:BPMNShape id="ScriptTask_1eeaxqn_di" bpmnElement="Task_1lfmdks">
300         <dc:Bounds x="2239" y="57" width="100" height="80" />
301       </bpmndi:BPMNShape>
302       <bpmndi:BPMNShape id="EndEvent_1h41bs7_di" bpmnElement="EndEvent_0v6povc">
303         <dc:Bounds x="2362" y="147" width="36" height="36" />
304         <bpmndi:BPMNLabel>
305           <dc:Bounds x="2380" y="183" width="0" height="0" />
306         </bpmndi:BPMNLabel>
307       </bpmndi:BPMNShape>
308       <bpmndi:BPMNEdge id="SequenceFlow_1llbx0k_di" bpmnElement="SequenceFlow_1llbx0k">
309         <di:waypoint xsi:type="dc:Point" x="2200" y="97" />
310         <di:waypoint xsi:type="dc:Point" x="2239" y="97" />
311         <bpmndi:BPMNLabel>
312           <dc:Bounds x="2220" y="82" width="0" height="0" />
313         </bpmndi:BPMNLabel>
314       </bpmndi:BPMNEdge>
315       <bpmndi:BPMNShape id="ExclusiveGateway_1vyqr5o_di" bpmnElement="ExclusiveGateway_1vyqr5o" isMarkerVisible="true">
316         <dc:Bounds x="1517" y="140" width="50" height="50" />
317         <bpmndi:BPMNLabel>
318           <dc:Bounds x="1498" y="190" width="90" height="24" />
319         </bpmndi:BPMNLabel>
320       </bpmndi:BPMNShape>
321       <bpmndi:BPMNEdge id="SequenceFlow_132bohl_di" bpmnElement="SequenceFlow_132bohl">
322         <di:waypoint xsi:type="dc:Point" x="1542" y="140" />
323         <di:waypoint xsi:type="dc:Point" x="1542" y="36" />
324         <di:waypoint xsi:type="dc:Point" x="2380" y="36" />
325         <di:waypoint xsi:type="dc:Point" x="2380" y="147" />
326         <bpmndi:BPMNLabel>
327           <dc:Bounds x="1962" y="21" width="16" height="12" />
328         </bpmndi:BPMNLabel>
329       </bpmndi:BPMNEdge>
330       <bpmndi:BPMNShape id="CallActivity_0zr4ioh_di" bpmnElement="CreateVNF">
331         <dc:Bounds x="574" y="125" width="100" height="80" />
332       </bpmndi:BPMNShape>
333       <bpmndi:BPMNShape id="ScriptTask_0tknqn1_di" bpmnElement="PreProcessAddOnModule">
334         <dc:Bounds x="1651" y="125" width="100" height="80" />
335       </bpmndi:BPMNShape>
336       <bpmndi:BPMNShape id="ScriptTask_1u6qcio_di" bpmnElement="QueryCatalogDB">
337         <dc:Bounds x="418" y="125" width="100" height="80" />
338       </bpmndi:BPMNShape>
339       <bpmndi:BPMNShape id="ExclusiveGateway_1hx9s0y_di" bpmnElement="ExclusiveGateway_1hx9s0y" isMarkerVisible="true">
340         <dc:Bounds x="1844" y="140" width="50" height="50" />
341         <bpmndi:BPMNLabel>
342           <dc:Bounds x="1837" y="190" width="63" height="24" />
343         </bpmndi:BPMNLabel>
344       </bpmndi:BPMNShape>
345       <bpmndi:BPMNEdge id="SequenceFlow_0jz6bqn_di" bpmnElement="SequenceFlow_0jz6bqn">
346         <di:waypoint xsi:type="dc:Point" x="1567" y="165" />
347         <di:waypoint xsi:type="dc:Point" x="1609" y="165" />
348         <di:waypoint xsi:type="dc:Point" x="1609" y="165" />
349         <di:waypoint xsi:type="dc:Point" x="1649" y="165" />
350         <bpmndi:BPMNLabel>
351           <dc:Bounds x="1571" y="147" width="16" height="12" />
352         </bpmndi:BPMNLabel>
353       </bpmndi:BPMNEdge>
354       <bpmndi:BPMNEdge id="SequenceFlow_0kld3qt_di" bpmnElement="SequenceFlow_0kld3qt">
355         <di:waypoint xsi:type="dc:Point" x="1869" y="140" />
356         <di:waypoint xsi:type="dc:Point" x="1869" y="89" />
357         <di:waypoint xsi:type="dc:Point" x="1952" y="89" />
358         <bpmndi:BPMNLabel>
359           <dc:Bounds x="1886" y="96" width="16" height="12" />
360         </bpmndi:BPMNLabel>
361       </bpmndi:BPMNEdge>
362       <bpmndi:BPMNEdge id="SequenceFlow_1mguf2m_di" bpmnElement="SequenceFlow_1mguf2m">
363         <di:waypoint xsi:type="dc:Point" x="2289" y="137" />
364         <di:waypoint xsi:type="dc:Point" x="2289" y="165" />
365         <di:waypoint xsi:type="dc:Point" x="1894" y="165" />
366         <bpmndi:BPMNLabel>
367           <dc:Bounds x="2304" y="151" width="0" height="0" />
368         </bpmndi:BPMNLabel>
369       </bpmndi:BPMNEdge>
370       <bpmndi:BPMNEdge id="SequenceFlow_1vrogpr_di" bpmnElement="SequenceFlow_1vrogpr">
371         <di:waypoint xsi:type="dc:Point" x="1869" y="190" />
372         <di:waypoint xsi:type="dc:Point" x="1869" y="221" />
373         <di:waypoint xsi:type="dc:Point" x="1869" y="221" />
374         <di:waypoint xsi:type="dc:Point" x="1869" y="301" />
375         <di:waypoint xsi:type="dc:Point" x="1751" y="301" />
376         <bpmndi:BPMNLabel>
377           <dc:Bounds x="1878" y="247" width="14" height="12" />
378         </bpmndi:BPMNLabel>
379       </bpmndi:BPMNEdge>
380       <bpmndi:BPMNEdge id="SequenceFlow_1hf7k7q_di" bpmnElement="SequenceFlow_1hf7k7q">
381         <di:waypoint xsi:type="dc:Point" x="1191" y="165" />
382         <di:waypoint xsi:type="dc:Point" x="1239" y="165" />
383         <bpmndi:BPMNLabel>
384           <dc:Bounds x="1215" y="150" width="0" height="0" />
385         </bpmndi:BPMNLabel>
386       </bpmndi:BPMNEdge>
387       <bpmndi:BPMNShape id="CallActivity_0rz8zl9_di" bpmnElement="GenerateBaseModuleName">
388         <dc:Bounds x="1091" y="125" width="100" height="80" />
389       </bpmndi:BPMNShape>
390       <bpmndi:BPMNShape id="CallActivity_0otq8mo_di" bpmnElement="GenerateAddOnModuleName">
391         <dc:Bounds x="1952" y="57" width="100" height="80" />
392       </bpmndi:BPMNShape>
393       <bpmndi:BPMNEdge id="SequenceFlow_1lh21yl_di" bpmnElement="SequenceFlow_1lh21yl">
394         <di:waypoint xsi:type="dc:Point" x="2052" y="97" />
395         <di:waypoint xsi:type="dc:Point" x="2100" y="97" />
396         <bpmndi:BPMNLabel>
397           <dc:Bounds x="2076" y="82" width="0" height="0" />
398         </bpmndi:BPMNLabel>
399       </bpmndi:BPMNEdge>
400       <bpmndi:BPMNEdge id="SequenceFlow_12x4dvf_di" bpmnElement="SequenceFlow_12x4dvf">
401         <di:waypoint xsi:type="dc:Point" x="1751" y="165" />
402         <di:waypoint xsi:type="dc:Point" x="1844" y="165" />
403         <bpmndi:BPMNLabel>
404           <dc:Bounds x="1798" y="140" width="0" height="0" />
405         </bpmndi:BPMNLabel>
406       </bpmndi:BPMNEdge>
407       <bpmndi:BPMNEdge id="SequenceFlow_1ixcnb6_di" bpmnElement="SequenceFlow_1ixcnb6">
408         <di:waypoint xsi:type="dc:Point" x="1339" y="165" />
409         <di:waypoint xsi:type="dc:Point" x="1381" y="165" />
410         <bpmndi:BPMNLabel>
411           <dc:Bounds x="1360" y="150" width="0" height="0" />
412         </bpmndi:BPMNLabel>
413       </bpmndi:BPMNEdge>
414       <bpmndi:BPMNEdge id="SequenceFlow_1a6wyuu_di" bpmnElement="SequenceFlow_1a6wyuu">
415         <di:waypoint xsi:type="dc:Point" x="1481" y="165" />
416         <di:waypoint xsi:type="dc:Point" x="1517" y="165" />
417         <bpmndi:BPMNLabel>
418           <dc:Bounds x="1499" y="150" width="0" height="0" />
419         </bpmndi:BPMNLabel>
420       </bpmndi:BPMNEdge>
421       <bpmndi:BPMNShape id="ScriptTask_1obevnp_di" bpmnElement="Task_054rz9i">
422         <dc:Bounds x="1381" y="125" width="100" height="80" />
423       </bpmndi:BPMNShape>
424       <bpmndi:BPMNShape id="SubProcess_0u7tbb2_di" bpmnElement="SubProcess_0u7tbb2" isExpanded="true">
425         <dc:Bounds x="113" y="382" width="783" height="195" />
426       </bpmndi:BPMNShape>
427       <bpmndi:BPMNShape id="EndEvent_16s0a3q_di" bpmnElement="EndEvent_16s0a3q">
428         <dc:Bounds x="843" y="460" width="36" height="36" />
429         <bpmndi:BPMNLabel>
430           <dc:Bounds x="861" y="501" width="0" height="0" />
431         </bpmndi:BPMNLabel>
432       </bpmndi:BPMNShape>
433       <bpmndi:BPMNShape id="CallActivity_0gtajjm_di" bpmnElement="CallActivity_0gtajjm">
434         <dc:Bounds x="508" y="438" width="100" height="80" />
435       </bpmndi:BPMNShape>
436       <bpmndi:BPMNShape id="ScriptTask_12g5tld_di" bpmnElement="PreProcessRollback">
437         <dc:Bounds x="345" y="438" width="100" height="80" />
438       </bpmndi:BPMNShape>
439       <bpmndi:BPMNShape id="ScriptTask_1nk6apr_di" bpmnElement="PostProcessRollback">
440         <dc:Bounds x="676" y="438" width="100" height="80" />
441       </bpmndi:BPMNShape>
442       <bpmndi:BPMNEdge id="SequenceFlow_1l0rxnh_di" bpmnElement="SequenceFlow_1l0rxnh">
443         <di:waypoint xsi:type="dc:Point" x="246" y="478" />
444         <di:waypoint xsi:type="dc:Point" x="345" y="478" />
445         <bpmndi:BPMNLabel>
446           <dc:Bounds x="296" y="463" width="0" height="0" />
447         </bpmndi:BPMNLabel>
448       </bpmndi:BPMNEdge>
449       <bpmndi:BPMNEdge id="SequenceFlow_1h74w1v_di" bpmnElement="SequenceFlow_1h74w1v">
450         <di:waypoint xsi:type="dc:Point" x="776" y="478" />
451         <di:waypoint xsi:type="dc:Point" x="808" y="478" />
452         <di:waypoint xsi:type="dc:Point" x="808" y="478" />
453         <di:waypoint xsi:type="dc:Point" x="843" y="478" />
454         <bpmndi:BPMNLabel>
455           <dc:Bounds x="823" y="478" width="0" height="0" />
456         </bpmndi:BPMNLabel>
457       </bpmndi:BPMNEdge>
458       <bpmndi:BPMNEdge id="SequenceFlow_03v8mmc_di" bpmnElement="SequenceFlow_03v8mmc">
459         <di:waypoint xsi:type="dc:Point" x="445" y="478" />
460         <di:waypoint xsi:type="dc:Point" x="508" y="478" />
461         <bpmndi:BPMNLabel>
462           <dc:Bounds x="477" y="463" width="0" height="0" />
463         </bpmndi:BPMNLabel>
464       </bpmndi:BPMNEdge>
465       <bpmndi:BPMNEdge id="SequenceFlow_0yu0im2_di" bpmnElement="SequenceFlow_0yu0im2">
466         <di:waypoint xsi:type="dc:Point" x="608" y="478" />
467         <di:waypoint xsi:type="dc:Point" x="676" y="478" />
468         <bpmndi:BPMNLabel>
469           <dc:Bounds x="642" y="463" width="0" height="0" />
470         </bpmndi:BPMNLabel>
471       </bpmndi:BPMNEdge>
472       <bpmndi:BPMNShape id="StartEvent_00jdkur_di" bpmnElement="StartEvent_1nbwxby">
473         <dc:Bounds x="210" y="460" width="36" height="36" />
474         <bpmndi:BPMNLabel>
475           <dc:Bounds x="228" y="501" width="0" height="0" />
476         </bpmndi:BPMNLabel>
477       </bpmndi:BPMNShape>
478       <bpmndi:BPMNEdge id="SequenceFlow_19ohb1a_di" bpmnElement="SequenceFlow_19ohb1a">
479         <di:waypoint xsi:type="dc:Point" x="518" y="165" />
480         <di:waypoint xsi:type="dc:Point" x="574" y="165" />
481         <bpmndi:BPMNLabel>
482           <dc:Bounds x="546" y="140" width="0" height="0" />
483         </bpmndi:BPMNLabel>
484       </bpmndi:BPMNEdge>
485       <bpmndi:BPMNEdge id="SequenceFlow_07u8e3l_di" bpmnElement="SequenceFlow_07u8e3l">
486         <di:waypoint xsi:type="dc:Point" x="674" y="165" />
487         <di:waypoint xsi:type="dc:Point" x="742" y="165" />
488         <bpmndi:BPMNLabel>
489           <dc:Bounds x="708" y="150" width="0" height="0" />
490         </bpmndi:BPMNLabel>
491       </bpmndi:BPMNEdge>
492       <bpmndi:BPMNEdge id="SequenceFlow_0j52dxv_di" bpmnElement="SequenceFlow_0j52dxv">
493         <di:waypoint xsi:type="dc:Point" x="1651" y="301" />
494         <di:waypoint xsi:type="dc:Point" x="1543" y="301" />
495         <di:waypoint xsi:type="dc:Point" x="1542" y="190" />
496         <bpmndi:BPMNLabel>
497           <dc:Bounds x="1597" y="286" width="0" height="0" />
498         </bpmndi:BPMNLabel>
499       </bpmndi:BPMNEdge>
500       <bpmndi:BPMNShape id="ScriptTask_0srhar8_di" bpmnElement="PostProcessAddOnModule">
501         <dc:Bounds x="1651" y="262" width="100" height="80" />
502       </bpmndi:BPMNShape>
503       <bpmndi:BPMNEdge id="SequenceFlow_1t407j7_di" bpmnElement="SequenceFlow_1t407j7">
504         <di:waypoint xsi:type="dc:Point" x="842" y="165" />
505         <di:waypoint xsi:type="dc:Point" x="916" y="165" />
506         <bpmndi:BPMNLabel>
507           <dc:Bounds x="879" y="150" width="0" height="0" />
508         </bpmndi:BPMNLabel>
509       </bpmndi:BPMNEdge>
510       <bpmndi:BPMNEdge id="SequenceFlow_0baw1tl_di" bpmnElement="SequenceFlow_0baw1tl">
511         <di:waypoint xsi:type="dc:Point" x="1016" y="165" />
512         <di:waypoint xsi:type="dc:Point" x="1091" y="165" />
513         <bpmndi:BPMNLabel>
514           <dc:Bounds x="1054" y="150" width="0" height="0" />
515         </bpmndi:BPMNLabel>
516       </bpmndi:BPMNEdge>
517       <bpmndi:BPMNShape id="ScriptTask_0i9vj5o_di" bpmnElement="Task_1mrb29r">
518         <dc:Bounds x="742" y="125" width="100" height="80" />
519       </bpmndi:BPMNShape>
520       <bpmndi:BPMNShape id="ScriptTask_0stghuy_di" bpmnElement="Task_0qrf3e8">
521         <dc:Bounds x="916" y="125" width="100" height="80" />
522       </bpmndi:BPMNShape>
523     </bpmndi:BPMNPlane>
524   </bpmndi:BPMNDiagram>
525 </bpmn:definitions>