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