cd977e3ae6e9dc287648377e2ddaf6aa59d281b0
[so.git] / bpmn / MSOCommonBPMN / src / main / resources / subprocess / CompleteMsoProcess.bpmn
1 <?xml version="1.0" encoding="UTF-8"?>
2 <bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="_EsMs0HcuEeW2U_kkOHX1ZQ" targetNamespace="http://camunda.org/schema/1.0/bpmn" exporter="Camunda Modeler" exporterVersion="1.6.0" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
3   <bpmn2:process id="CompleteMsoProcess" name="CompleteMsoProcess" isExecutable="true">
4     <bpmn2:scriptTask id="preProcessRequest" name="Pre-Process Request" scriptFormat="groovy">
5       <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>
6       <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>
7       <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
8 def preProcessRequestData = new CompleteMsoProcess()
9 preProcessRequestData.preProcessRequest(execution)
10
11 ]]></bpmn2:script>
12     </bpmn2:scriptTask>
13     <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="preProcessRequest" targetRef="ExclusiveGateway_5" />
14     <bpmn2:startEvent id="StartEvent_1" name="Start With Message ">
15       <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>
16       <bpmn2:messageEventDefinition id="MessageEventDefinition_1" messageRef="Message_2" />
17     </bpmn2:startEvent>
18     <bpmn2:sequenceFlow id="SequenceFlow_18" name="" sourceRef="StartEvent_1" targetRef="preProcessRequest" />
19     <bpmn2:parallelGateway id="ExclusiveGateway_5">
20       <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>
21       <bpmn2:outgoing>SequenceFlow_45</bpmn2:outgoing>
22       <bpmn2:outgoing>SequenceFlow_46</bpmn2:outgoing>
23     </bpmn2:parallelGateway>
24     <bpmn2:sequenceFlow id="SequenceFlow_45" name="" sourceRef="ExclusiveGateway_5" targetRef="ParallelGateway_3" />
25     <bpmn2:sequenceFlow id="SequenceFlow_46" name="" sourceRef="ExclusiveGateway_5" targetRef="ExclusiveGateway_3" />
26     <bpmn2:exclusiveGateway id="ParallelGateway_3" name="Notification Url Present?" default="SequenceFlow_40">
27       <bpmn2:incoming>SequenceFlow_45</bpmn2:incoming>
28       <bpmn2:outgoing>SequenceFlow_40</bpmn2:outgoing>
29       <bpmn2:outgoing>if_notifcationURLExists</bpmn2:outgoing>
30     </bpmn2:exclusiveGateway>
31     <bpmn2:sequenceFlow id="SequenceFlow_40" name="No" sourceRef="ParallelGateway_3" targetRef="ParallelGateway_5" />
32     <bpmn2:subProcess id="subProcessExceptionCompleteMSO" name="Sub Process Exception Complete MSO" triggeredByEvent="true">
33       <bpmn2:endEvent id="endEventExceptionCompleteMSO">
34         <bpmn2:extensionElements>
35           <camunda:connector>
36             <camunda:inputOutput>
37               <camunda:outputParameter name="DB_ADAPTER_ERROR">${CMSO_updateRequestResponse}</camunda:outputParameter>
38             </camunda:inputOutput>
39           </camunda:connector>
40         </bpmn2:extensionElements>
41         <bpmn2:incoming>SequenceFlow_1i1h3il</bpmn2:incoming>
42         <bpmn2:terminateEventDefinition id="MessageEventDefinition_3" />
43       </bpmn2:endEvent>
44       <bpmn2:startEvent id="startEventExceptionCompleteMSO">
45         <bpmn2:outgoing>SequenceFlow_1i1h3il</bpmn2:outgoing>
46         <bpmn2:errorEventDefinition id="ErrorEventDefinition_4" />
47       </bpmn2:startEvent>
48       <bpmn2:sequenceFlow id="SequenceFlow_1i1h3il" sourceRef="startEventExceptionCompleteMSO" targetRef="endEventExceptionCompleteMSO" />
49     </bpmn2:subProcess>
50     <bpmn2:exclusiveGateway id="ParallelGateway_7">
51       <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>
52       <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>
53       <bpmn2:outgoing>SequenceFlow_39</bpmn2:outgoing>
54     </bpmn2:exclusiveGateway>
55     <bpmn2:sequenceFlow id="SequenceFlow_39" name="" sourceRef="ParallelGateway_7" targetRef="ParallelGateway_6" />
56     <bpmn2:endEvent id="EndEvent_4">
57       <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>
58       <bpmn2:errorEventDefinition id="ErrorEventDefinition_5" errorRef="Error_3" />
59     </bpmn2:endEvent>
60     <bpmn2:scriptTask id="ScriptTask_3" name="Prepare&#10;&#10;Update DB Request" scriptFormat="groovy">
61       <bpmn2:incoming>SequenceFlow_72</bpmn2:incoming>
62       <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>
63       <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
64 def completeMsoProcess = new CompleteMsoProcess()
65 completeMsoProcess.setUpdateDBstatustoSuccessPayload(execution)]]></bpmn2:script>
66     </bpmn2:scriptTask>
67     <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="ScriptTask_3" targetRef="updateInfraRequest" />
68     <bpmn2:endEvent id="EndEvent_5">
69       <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>
70       <bpmn2:errorEventDefinition id="ErrorEventDefinition_3" errorRef="Error_3" />
71     </bpmn2:endEvent>
72     <bpmn2:exclusiveGateway id="ExclusiveGateway_3" name="Active Request?" default="SequenceFlow_72">
73       <bpmn2:incoming>SequenceFlow_46</bpmn2:incoming>
74       <bpmn2:outgoing>SequenceFlow_72</bpmn2:outgoing>
75       <bpmn2:outgoing>SequenceFlow_81</bpmn2:outgoing>
76     </bpmn2:exclusiveGateway>
77     <bpmn2:sequenceFlow id="SequenceFlow_72" name="No" sourceRef="ExclusiveGateway_3" targetRef="ScriptTask_3" />
78     <bpmn2:sequenceFlow id="SequenceFlow_81" name="Yes" sourceRef="ExclusiveGateway_3" targetRef="prepareUpdateRequest">
79       <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CMSO_request_id-Ok") ==true}]]></bpmn2:conditionExpression>
80     </bpmn2:sequenceFlow>
81     <bpmn2:scriptTask id="BuildErrorMessage1" name="Build Error Message" scriptFormat="groovy">
82       <bpmn2:incoming>SequenceFlow_25</bpmn2:incoming>
83       <bpmn2:incoming>SequenceFlow_1q7eer1</bpmn2:incoming>
84       <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>
85       <bpmn2:script><![CDATA[//println "INSIDE --> Build Error Message @@@@"
86 import org.openecomp.mso.bpmn.common.scripts.*
87 def buildDataErrorMessage = new CompleteMsoProcess()
88 buildDataErrorMessage.buildDataError(execution, "Complete --Update DB status to SUCCESS-- Failed")]]></bpmn2:script>
89     </bpmn2:scriptTask>
90     <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="BuildErrorMessage1" targetRef="EndEvent_5" />
91     <bpmn2:scriptTask id="prepareUpdateRequest" name="Prepare&#10;&#10;Update DB Request" scriptFormat="groovy">
92       <bpmn2:incoming>SequenceFlow_81</bpmn2:incoming>
93       <bpmn2:outgoing>SequenceFlow_49</bpmn2:outgoing>
94       <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
95 def completeMsoProcess = new CompleteMsoProcess()
96 completeMsoProcess.updateDBStatusToSuccessPayload(execution)]]></bpmn2:script>
97     </bpmn2:scriptTask>
98     <bpmn2:sequenceFlow id="SequenceFlow_49" name="" sourceRef="prepareUpdateRequest" targetRef="updateDBStatus" />
99     <bpmn2:serviceTask id="updateInfraRequest" name="Update DB status to SUCCESS">
100       <bpmn2:extensionElements>
101         <camunda:connector>
102           <camunda:inputOutput>
103             <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>
104             <camunda:inputParameter name="payload"><![CDATA[${execution.getVariable("CMSO_setUpdateDBstatustoSuccessPayload")}]]></camunda:inputParameter>
105             <camunda:inputParameter name="headers">
106               <camunda:map>
107                 <camunda:entry key="content-type">application/soap+xml</camunda:entry>
108                 <camunda:entry key="Authorization">#{BasicAuthHeaderValueDB}</camunda:entry>
109               </camunda:map>
110             </camunda:inputParameter>
111             <camunda:inputParameter name="method">POST</camunda:inputParameter>
112             <camunda:outputParameter name="CMSO_updateRequestResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>
113             <camunda:outputParameter name="CMSO_updateRequestResponseCode">${statusCode}</camunda:outputParameter>
114           </camunda:inputOutput>
115           <camunda:connectorId>soap-http-connector</camunda:connectorId>
116         </camunda:connector>
117       </bpmn2:extensionElements>
118       <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>
119       <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>
120     </bpmn2:serviceTask>
121     <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="updateInfraRequest" targetRef="ExclusiveGateway_7" />
122     <bpmn2:boundaryEvent id="BoundaryEvent_6" name="" attachedToRef="updateDBStatus">
123       <bpmn2:outgoing>SequenceFlow_1q7eer1</bpmn2:outgoing>
124       <bpmn2:errorEventDefinition id="_ErrorEventDefinition_83" errorRef="Error_1" />
125     </bpmn2:boundaryEvent>
126     <bpmn2:scriptTask id="BuildErrorMessage" name="Build Error Message" scriptFormat="groovy">
127       <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>
128       <bpmn2:incoming>SequenceFlow_0mipf25</bpmn2:incoming>
129       <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>
130       <bpmn2:script><![CDATA[//println "INSIDE --> Build Error Message @@@@"
131 //println "CMSO_updateRequestResponse IS --> " + execution.getVariable("CMSO_updateRequestResponse")
132 import org.openecomp.mso.bpmn.common.scripts.*
133 def buildDataErrorMessage = new CompleteMsoProcess()
134 buildDataErrorMessage.buildDataError(execution, "Complete MSO  -- Update DB status to SUCCESS -- Failed")]]></bpmn2:script>
135     </bpmn2:scriptTask>
136     <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="BuildErrorMessage" targetRef="EndEvent_4" />
137     <bpmn2:exclusiveGateway id="ExclusiveGateway_10" default="SequenceFlow_25">
138       <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>
139       <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>
140       <bpmn2:outgoing>SequenceFlow_25</bpmn2:outgoing>
141     </bpmn2:exclusiveGateway>
142     <bpmn2:sequenceFlow id="SequenceFlow_24" name="" sourceRef="ExclusiveGateway_10" targetRef="ParallelGateway_7">
143       <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CMSO_updateRequestResponseCode")==200}]]></bpmn2:conditionExpression>
144     </bpmn2:sequenceFlow>
145     <bpmn2:sequenceFlow id="SequenceFlow_25" name="" sourceRef="ExclusiveGateway_10" targetRef="BuildErrorMessage1" />
146     <bpmn2:exclusiveGateway id="ExclusiveGateway_7" default="SequenceFlow_1">
147       <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>
148       <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>
149       <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>
150     </bpmn2:exclusiveGateway>
151     <bpmn2:sequenceFlow id="SequenceFlow_7" sourceRef="ExclusiveGateway_7" targetRef="ParallelGateway_7">
152       <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CMSO_updateRequestResponseCode")==200}]]></bpmn2:conditionExpression>
153     </bpmn2:sequenceFlow>
154     <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="ExclusiveGateway_7" targetRef="BuildErrorMessage" />
155     <bpmn2:serviceTask id="updateDBStatus" name="Update DB status to SUCCESS">
156       <bpmn2:extensionElements>
157         <camunda:connector>
158           <camunda:inputOutput>
159             <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>
160             <camunda:inputParameter name="payload"><![CDATA[${execution.getVariable("CMSO_updateDBStatusToSuccessPayload")}]]></camunda:inputParameter>
161             <camunda:inputParameter name="headers">
162               <camunda:map>
163                 <camunda:entry key="content-type">application/soap+xml</camunda:entry>
164                 <camunda:entry key="Authorization">#{BasicAuthHeaderValueDB}</camunda:entry>
165               </camunda:map>
166             </camunda:inputParameter>
167             <camunda:inputParameter name="method">POST</camunda:inputParameter>
168             <camunda:outputParameter name="CMSO_updateRequestResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>
169             <camunda:outputParameter name="CMSO_updateRequestResponseCode">${statusCode}</camunda:outputParameter>
170           </camunda:inputOutput>
171           <camunda:connectorId>soap-http-connector</camunda:connectorId>
172         </camunda:connector>
173       </bpmn2:extensionElements>
174       <bpmn2:incoming>SequenceFlow_49</bpmn2:incoming>
175       <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>
176     </bpmn2:serviceTask>
177     <bpmn2:sequenceFlow id="SequenceFlow_23" name="" sourceRef="updateDBStatus" targetRef="ExclusiveGateway_10" />
178     <bpmn2:boundaryEvent id="BoundaryEvent_7" name="" attachedToRef="updateInfraRequest">
179       <bpmn2:outgoing>SequenceFlow_0mipf25</bpmn2:outgoing>
180       <bpmn2:errorEventDefinition id="_ErrorEventDefinition_84" errorRef="Error_1" />
181     </bpmn2:boundaryEvent>
182     <bpmn2:exclusiveGateway id="ParallelGateway_5">
183       <bpmn2:incoming>SequenceFlow_40</bpmn2:incoming>
184       <bpmn2:incoming>SequenceFlow_13qdn1s</bpmn2:incoming>
185       <bpmn2:outgoing>SequenceFlow_32</bpmn2:outgoing>
186     </bpmn2:exclusiveGateway>
187     <bpmn2:sequenceFlow id="SequenceFlow_32" name="" sourceRef="ParallelGateway_5" targetRef="ParallelGateway_6" />
188     <bpmn2:parallelGateway id="ParallelGateway_6">
189       <bpmn2:incoming>SequenceFlow_32</bpmn2:incoming>
190       <bpmn2:incoming>SequenceFlow_39</bpmn2:incoming>
191       <bpmn2:outgoing>SequenceFlow_33</bpmn2:outgoing>
192     </bpmn2:parallelGateway>
193     <bpmn2:sequenceFlow id="SequenceFlow_33" name="" sourceRef="ParallelGateway_6" targetRef="Done" />
194     <bpmn2:scriptTask id="Done" name="Prepare Response" scriptFormat="groovy">
195       <bpmn2:incoming>SequenceFlow_33</bpmn2:incoming>
196       <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>
197       <bpmn2:script><![CDATA[println "INSIDE --> Complete MSO Process Done SUCCESSFULLY"
198 import org.openecomp.mso.bpmn.common.scripts.*
199 def postProcessResponseData = new CompleteMsoProcess()
200 postProcessResponseData.postProcessResponse(execution)
201 println "CompleteMsoProcess Response -->" + "\n" + execution.getVariable("CompletionHandlerResponse")]]></bpmn2:script>
202     </bpmn2:scriptTask>
203     <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="Done" targetRef="EndEvent_1" />
204     <bpmn2:endEvent id="EndEvent_1">
205       <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>
206       <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_2" />
207     </bpmn2:endEvent>
208     <bpmn2:sequenceFlow id="SequenceFlow_1q7eer1" name="Connect Fault" sourceRef="BoundaryEvent_6" targetRef="BuildErrorMessage1" />
209     <bpmn2:sequenceFlow id="SequenceFlow_0mipf25" name="Connect Fault" sourceRef="BoundaryEvent_7" targetRef="BuildErrorMessage" />
210     <bpmn2:callActivity id="CallActivity_101qf6x" name="Call Notification Service" calledElement="${URN_mso_workflow_notification_name}">
211       <bpmn2:extensionElements>
212         <camunda:in source="mso-request-id" target="mso-request-id" />
213         <camunda:in source="mso-service-instance-id" target="mso-service-instance-id" />
214         <camunda:in variables="all" />
215         <camunda:out variables="all" />
216       </bpmn2:extensionElements>
217       <bpmn2:incoming>if_notifcationURLExists</bpmn2:incoming>
218       <bpmn2:outgoing>SequenceFlow_13qdn1s</bpmn2:outgoing>
219     </bpmn2:callActivity>
220     <bpmn2:sequenceFlow id="SequenceFlow_13qdn1s" sourceRef="CallActivity_101qf6x" targetRef="ParallelGateway_5" />
221     <bpmn2:sequenceFlow id="if_notifcationURLExists" name="Yes" sourceRef="ParallelGateway_3" targetRef="CallActivity_101qf6x">
222       <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CMSO_notification-url-Ok") ==true}]]></bpmn2:conditionExpression>
223     </bpmn2:sequenceFlow>
224   </bpmn2:process>
225   <bpmn2:message id="Message_2" name="CompleteMsoProcessRequest" />
226   <bpmn2:error id="Error_3" name="MSOWorkflowException" errorCode="MSOWorkflowException" />
227   <bpmn2:error id="Error_1" name="Java Lang Exception" errorCode="java.lang.Exception" />
228   <bpmndi:BPMNDiagram id="BPMNDiagram_1">
229     <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CompleteMsoProcess">
230       <bpmndi:BPMNShape id="_BPMNShape_StartEvent_41" bpmnElement="StartEvent_1">
231         <dc:Bounds x="106" y="297" width="36" height="36" />
232         <bpmndi:BPMNLabel>
233           <dc:Bounds x="132" y="338" width="50" height="24" />
234         </bpmndi:BPMNLabel>
235       </bpmndi:BPMNShape>
236       <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_4" bpmnElement="ParallelGateway_3" isMarkerVisible="true">
237         <dc:Bounds x="471" y="193" width="50" height="50" />
238         <bpmndi:BPMNLabel>
239           <dc:Bounds x="386" y="170" width="73" height="24" />
240         </bpmndi:BPMNLabel>
241       </bpmndi:BPMNShape>
242       <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_6" bpmnElement="ParallelGateway_5" isMarkerVisible="true">
243         <dc:Bounds x="811" y="193" width="50" height="50" />
244         <bpmndi:BPMNLabel>
245           <dc:Bounds x="836" y="248" width="0" height="0" />
246         </bpmndi:BPMNLabel>
247       </bpmndi:BPMNShape>
248       <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_59" bpmnElement="ExclusiveGateway_5">
249         <dc:Bounds x="372" y="289" width="50" height="50" />
250         <bpmndi:BPMNLabel>
251           <dc:Bounds x="397" y="344" width="0" height="0" />
252         </bpmndi:BPMNLabel>
253       </bpmndi:BPMNShape>
254       <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_7" bpmnElement="ParallelGateway_6">
255         <dc:Bounds x="1162" y="290" width="50" height="50" />
256         <bpmndi:BPMNLabel>
257           <dc:Bounds x="1187" y="345" width="0" height="0" />
258         </bpmndi:BPMNLabel>
259       </bpmndi:BPMNShape>
260       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_32" bpmnElement="SequenceFlow_32" sourceElement="_BPMNShape_ParallelGateway_6" targetElement="_BPMNShape_ParallelGateway_7">
261         <di:waypoint xsi:type="dc:Point" x="861" y="218" />
262         <di:waypoint xsi:type="dc:Point" x="1187" y="218" />
263         <di:waypoint xsi:type="dc:Point" x="1187" y="290" />
264         <bpmndi:BPMNLabel>
265           <dc:Bounds x="1024" y="203" width="0" height="0" />
266         </bpmndi:BPMNLabel>
267       </bpmndi:BPMNEdge>
268       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_34" bpmnElement="preProcessRequest">
269         <dc:Bounds x="226" y="275" width="100" height="80" />
270       </bpmndi:BPMNShape>
271       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_34" targetElement="_BPMNShape_ExclusiveGateway_59">
272         <di:waypoint xsi:type="dc:Point" x="326" y="315" />
273         <di:waypoint xsi:type="dc:Point" x="372" y="314" />
274         <bpmndi:BPMNLabel>
275           <dc:Bounds x="338" y="315" width="0" height="0" />
276         </bpmndi:BPMNLabel>
277       </bpmndi:BPMNEdge>
278       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_StartEvent_41" targetElement="_BPMNShape_ScriptTask_34">
279         <di:waypoint xsi:type="dc:Point" x="142" y="315" />
280         <di:waypoint xsi:type="dc:Point" x="226" y="315" />
281         <bpmndi:BPMNLabel>
282           <dc:Bounds x="184" y="300" width="0" height="0" />
283         </bpmndi:BPMNLabel>
284       </bpmndi:BPMNEdge>
285       <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_60" bpmnElement="ExclusiveGateway_3" isMarkerVisible="true">
286         <dc:Bounds x="475" y="538" width="50" height="50" />
287         <bpmndi:BPMNLabel>
288           <dc:Bounds x="533" y="553" width="80" height="12" />
289         </bpmndi:BPMNLabel>
290       </bpmndi:BPMNShape>
291       <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_9" bpmnElement="ParallelGateway_7" isMarkerVisible="true">
292         <dc:Bounds x="955" y="538" width="50" height="50" />
293         <bpmndi:BPMNLabel>
294           <dc:Bounds x="980" y="593" width="0" height="0" />
295         </bpmndi:BPMNLabel>
296       </bpmndi:BPMNShape>
297       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_41" bpmnElement="SequenceFlow_39" sourceElement="_BPMNShape_ParallelGateway_9" targetElement="_BPMNShape_ParallelGateway_7">
298         <di:waypoint xsi:type="dc:Point" x="1005" y="563" />
299         <di:waypoint xsi:type="dc:Point" x="1187" y="563" />
300         <di:waypoint xsi:type="dc:Point" x="1187" y="340" />
301         <bpmndi:BPMNLabel>
302           <dc:Bounds x="1096" y="548" width="0" height="0" />
303         </bpmndi:BPMNLabel>
304       </bpmndi:BPMNEdge>
305       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_42" bpmnElement="SequenceFlow_40" sourceElement="_BPMNShape_ParallelGateway_4" targetElement="_BPMNShape_ParallelGateway_6">
306         <di:waypoint xsi:type="dc:Point" x="496" y="243" />
307         <di:waypoint xsi:type="dc:Point" x="496" y="306" />
308         <di:waypoint xsi:type="dc:Point" x="836" y="306" />
309         <di:waypoint xsi:type="dc:Point" x="836" y="243" />
310         <bpmndi:BPMNLabel>
311           <dc:Bounds x="502" y="248.42647058823525" width="14" height="12" />
312         </bpmndi:BPMNLabel>
313       </bpmndi:BPMNEdge>
314       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_51" bpmnElement="updateInfraRequest">
315         <dc:Bounds x="714" y="614" width="100" height="80" />
316       </bpmndi:BPMNShape>
317       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_52" bpmnElement="updateDBStatus">
318         <dc:Bounds x="711" y="433" width="100" height="80" />
319       </bpmndi:BPMNShape>
320       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_47" bpmnElement="SequenceFlow_45" sourceElement="_BPMNShape_ExclusiveGateway_59" targetElement="_BPMNShape_ParallelGateway_4">
321         <di:waypoint xsi:type="dc:Point" x="397" y="289" />
322         <di:waypoint xsi:type="dc:Point" x="397" y="218" />
323         <di:waypoint xsi:type="dc:Point" x="471" y="218" />
324         <bpmndi:BPMNLabel>
325           <dc:Bounds x="412" y="253.5" width="0" height="0" />
326         </bpmndi:BPMNLabel>
327       </bpmndi:BPMNEdge>
328       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_64" bpmnElement="prepareUpdateRequest">
329         <dc:Bounds x="563" y="433" width="100" height="80" />
330       </bpmndi:BPMNShape>
331       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_48" bpmnElement="SequenceFlow_46" sourceElement="_BPMNShape_ExclusiveGateway_59" targetElement="_BPMNShape_ExclusiveGateway_60">
332         <di:waypoint xsi:type="dc:Point" x="397" y="339" />
333         <di:waypoint xsi:type="dc:Point" x="397" y="563" />
334         <di:waypoint xsi:type="dc:Point" x="475" y="563" />
335         <bpmndi:BPMNLabel>
336           <dc:Bounds x="412" y="451" width="0" height="0" />
337         </bpmndi:BPMNLabel>
338       </bpmndi:BPMNEdge>
339       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_50" bpmnElement="SequenceFlow_49" sourceElement="_BPMNShape_ScriptTask_64" targetElement="_BPMNShape_ScriptTask_52">
340         <di:waypoint xsi:type="dc:Point" x="663" y="473" />
341         <di:waypoint xsi:type="dc:Point" x="711" y="473" />
342         <bpmndi:BPMNLabel>
343           <dc:Bounds x="681" y="473" width="0" height="0" />
344         </bpmndi:BPMNLabel>
345       </bpmndi:BPMNEdge>
346       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_73" bpmnElement="SequenceFlow_72" sourceElement="_BPMNShape_ExclusiveGateway_60" targetElement="_BPMNShape_ScriptTask_88">
347         <di:waypoint xsi:type="dc:Point" x="500" y="588" />
348         <di:waypoint xsi:type="dc:Point" x="500" y="654" />
349         <di:waypoint xsi:type="dc:Point" x="563" y="654" />
350         <bpmndi:BPMNLabel>
351           <dc:Bounds x="506" y="611" width="14" height="12" />
352         </bpmndi:BPMNLabel>
353       </bpmndi:BPMNEdge>
354       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_82" bpmnElement="SequenceFlow_81" sourceElement="_BPMNShape_ExclusiveGateway_60" targetElement="_BPMNShape_ScriptTask_64">
355         <di:waypoint xsi:type="dc:Point" x="500" y="538" />
356         <di:waypoint xsi:type="dc:Point" x="500" y="473" />
357         <di:waypoint xsi:type="dc:Point" x="563" y="473" />
358         <bpmndi:BPMNLabel>
359           <dc:Bounds x="505" y="492" width="18" height="12" />
360         </bpmndi:BPMNLabel>
361       </bpmndi:BPMNEdge>
362       <bpmndi:BPMNShape id="_BPMNShape_SubProcess_13" bpmnElement="subProcessExceptionCompleteMSO" isExpanded="true">
363         <dc:Bounds x="166" y="858" width="427" height="169" />
364       </bpmndi:BPMNShape>
365       <bpmndi:BPMNShape id="_BPMNShape_EndEvent_110" bpmnElement="endEventExceptionCompleteMSO">
366         <dc:Bounds x="466" y="925" width="36" height="36" />
367         <bpmndi:BPMNLabel>
368           <dc:Bounds x="484" y="966" width="0" height="0" />
369         </bpmndi:BPMNLabel>
370       </bpmndi:BPMNShape>
371       <bpmndi:BPMNShape id="_BPMNShape_StartEvent_51" bpmnElement="startEventExceptionCompleteMSO">
372         <dc:Bounds x="214" y="925" width="36" height="36" />
373         <bpmndi:BPMNLabel>
374           <dc:Bounds x="232" y="966" width="0" height="0" />
375         </bpmndi:BPMNLabel>
376       </bpmndi:BPMNShape>
377       <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_63" bpmnElement="ExclusiveGateway_7" isMarkerVisible="true">
378         <dc:Bounds x="873" y="628" width="50" height="50" />
379         <bpmndi:BPMNLabel>
380           <dc:Bounds x="898" y="683" width="0" height="0" />
381         </bpmndi:BPMNLabel>
382       </bpmndi:BPMNShape>
383       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_51" targetElement="_BPMNShape_ExclusiveGateway_63">
384         <di:waypoint xsi:type="dc:Point" x="814" y="654" />
385         <di:waypoint xsi:type="dc:Point" x="873" y="653" />
386         <bpmndi:BPMNLabel>
387           <dc:Bounds x="999" y="697" width="0" height="0" />
388         </bpmndi:BPMNLabel>
389       </bpmndi:BPMNEdge>
390       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ExclusiveGateway_63" targetElement="_BPMNShape_ParallelGateway_9">
391         <di:waypoint xsi:type="dc:Point" x="923" y="653" />
392         <di:waypoint xsi:type="dc:Point" x="980" y="653" />
393         <di:waypoint xsi:type="dc:Point" x="980" y="588" />
394         <bpmndi:BPMNLabel>
395           <dc:Bounds x="899" y="611" width="0" height="0" />
396         </bpmndi:BPMNLabel>
397       </bpmndi:BPMNEdge>
398       <bpmndi:BPMNShape id="_BPMNShape_EndEvent_111" bpmnElement="EndEvent_4">
399         <dc:Bounds x="1010" y="741" width="36" height="36" />
400         <bpmndi:BPMNLabel>
401           <dc:Bounds x="1028" y="782" width="0" height="0" />
402         </bpmndi:BPMNLabel>
403       </bpmndi:BPMNShape>
404       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_76" bpmnElement="BuildErrorMessage">
405         <dc:Bounds x="849" y="719" width="100" height="80" />
406       </bpmndi:BPMNShape>
407       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_ExclusiveGateway_63" targetElement="_BPMNShape_ScriptTask_76">
408         <di:waypoint xsi:type="dc:Point" x="898" y="678" />
409         <di:waypoint xsi:type="dc:Point" x="899" y="719" />
410         <bpmndi:BPMNLabel>
411           <dc:Bounds x="943" y="505" width="0" height="0" />
412         </bpmndi:BPMNLabel>
413       </bpmndi:BPMNEdge>
414       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_76" targetElement="_BPMNShape_EndEvent_111">
415         <di:waypoint xsi:type="dc:Point" x="949" y="759" />
416         <di:waypoint xsi:type="dc:Point" x="1010" y="759" />
417         <bpmndi:BPMNLabel>
418           <dc:Bounds x="980" y="759" width="0" height="0" />
419         </bpmndi:BPMNLabel>
420       </bpmndi:BPMNEdge>
421       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_77" bpmnElement="Done">
422         <dc:Bounds x="1253" y="276" width="100" height="80" />
423       </bpmndi:BPMNShape>
424       <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_66" bpmnElement="ExclusiveGateway_10" isMarkerVisible="true">
425         <dc:Bounds x="873" y="447" width="50" height="50" />
426         <bpmndi:BPMNLabel>
427           <dc:Bounds x="898" y="502" width="0" height="0" />
428         </bpmndi:BPMNLabel>
429       </bpmndi:BPMNShape>
430       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ScriptTask_52" targetElement="_BPMNShape_ExclusiveGateway_66">
431         <di:waypoint xsi:type="dc:Point" x="811" y="473" />
432         <di:waypoint xsi:type="dc:Point" x="873" y="472" />
433         <bpmndi:BPMNLabel>
434           <dc:Bounds x="1005" y="473" width="0" height="0" />
435         </bpmndi:BPMNLabel>
436       </bpmndi:BPMNEdge>
437       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_ExclusiveGateway_66" targetElement="_BPMNShape_ParallelGateway_9">
438         <di:waypoint xsi:type="dc:Point" x="923" y="472" />
439         <di:waypoint xsi:type="dc:Point" x="980" y="472" />
440         <di:waypoint xsi:type="dc:Point" x="980" y="538" />
441         <bpmndi:BPMNLabel>
442           <dc:Bounds x="1092" y="473" width="0" height="0" />
443         </bpmndi:BPMNLabel>
444       </bpmndi:BPMNEdge>
445       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_79" bpmnElement="BuildErrorMessage1">
446         <dc:Bounds x="849" y="326" width="100" height="80" />
447       </bpmndi:BPMNShape>
448       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_26" bpmnElement="SequenceFlow_25" sourceElement="_BPMNShape_ExclusiveGateway_66" targetElement="_BPMNShape_ScriptTask_79">
449         <di:waypoint xsi:type="dc:Point" x="898" y="447" />
450         <di:waypoint xsi:type="dc:Point" x="899" y="406" />
451         <bpmndi:BPMNLabel>
452           <dc:Bounds x="986" y="427" width="0" height="0" />
453         </bpmndi:BPMNLabel>
454       </bpmndi:BPMNEdge>
455       <bpmndi:BPMNShape id="_BPMNShape_EndEvent_113" bpmnElement="EndEvent_5">
456         <dc:Bounds x="1010" y="348" width="36" height="36" />
457         <bpmndi:BPMNLabel>
458           <dc:Bounds x="1028" y="389" width="0" height="0" />
459         </bpmndi:BPMNLabel>
460       </bpmndi:BPMNShape>
461       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_34" bpmnElement="SequenceFlow_33" sourceElement="_BPMNShape_ParallelGateway_7" targetElement="_BPMNShape_ScriptTask_77">
462         <di:waypoint xsi:type="dc:Point" x="1212" y="315" />
463         <di:waypoint xsi:type="dc:Point" x="1253" y="316" />
464         <bpmndi:BPMNLabel>
465           <dc:Bounds x="1202" y="316" width="0" height="0" />
466         </bpmndi:BPMNLabel>
467       </bpmndi:BPMNEdge>
468       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_ScriptTask_79" targetElement="_BPMNShape_EndEvent_113">
469         <di:waypoint xsi:type="dc:Point" x="949" y="366" />
470         <di:waypoint xsi:type="dc:Point" x="1010" y="366" />
471         <bpmndi:BPMNLabel>
472           <dc:Bounds x="969" y="366" width="0" height="0" />
473         </bpmndi:BPMNLabel>
474       </bpmndi:BPMNEdge>
475       <bpmndi:BPMNShape id="_BPMNShape_EndEvent_128" bpmnElement="EndEvent_1">
476         <dc:Bounds x="1397" y="297" width="36" height="36" />
477         <bpmndi:BPMNLabel>
478           <dc:Bounds x="1415" y="338" width="0" height="0" />
479         </bpmndi:BPMNLabel>
480       </bpmndi:BPMNShape>
481       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ScriptTask_77" targetElement="_BPMNShape_EndEvent_128">
482         <di:waypoint xsi:type="dc:Point" x="1353" y="316" />
483         <di:waypoint xsi:type="dc:Point" x="1397" y="315" />
484         <bpmndi:BPMNLabel>
485           <dc:Bounds x="1375" y="300.5" width="0" height="0" />
486         </bpmndi:BPMNLabel>
487       </bpmndi:BPMNEdge>
488       <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_28" bpmnElement="BoundaryEvent_6">
489         <dc:Bounds x="742" y="415" width="36" height="36" />
490         <bpmndi:BPMNLabel>
491           <dc:Bounds x="760" y="456" width="0" height="0" />
492         </bpmndi:BPMNLabel>
493       </bpmndi:BPMNShape>
494       <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_29" bpmnElement="BoundaryEvent_7">
495         <dc:Bounds x="743" y="676" width="36" height="36" />
496         <bpmndi:BPMNLabel>
497           <dc:Bounds x="1036" y="558" width="0" height="0" />
498         </bpmndi:BPMNLabel>
499       </bpmndi:BPMNShape>
500       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_88" bpmnElement="ScriptTask_3">
501         <dc:Bounds x="563" y="614" width="100" height="80" />
502       </bpmndi:BPMNShape>
503       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ScriptTask_88" targetElement="_BPMNShape_ScriptTask_51">
504         <di:waypoint xsi:type="dc:Point" x="663" y="654" />
505         <di:waypoint xsi:type="dc:Point" x="714" y="654" />
506         <bpmndi:BPMNLabel>
507           <dc:Bounds x="683" y="678" width="0" height="0" />
508         </bpmndi:BPMNLabel>
509       </bpmndi:BPMNEdge>
510       <bpmndi:BPMNEdge id="SequenceFlow_1q7eer1_di" bpmnElement="SequenceFlow_1q7eer1">
511         <di:waypoint xsi:type="dc:Point" x="760" y="415" />
512         <di:waypoint xsi:type="dc:Point" x="760" y="366" />
513         <di:waypoint xsi:type="dc:Point" x="849" y="366" />
514         <bpmndi:BPMNLabel>
515           <dc:Bounds x="680" y="380" width="68" height="12" />
516         </bpmndi:BPMNLabel>
517       </bpmndi:BPMNEdge>
518       <bpmndi:BPMNEdge id="SequenceFlow_0mipf25_di" bpmnElement="SequenceFlow_0mipf25">
519         <di:waypoint xsi:type="dc:Point" x="761" y="712" />
520         <di:waypoint xsi:type="dc:Point" x="761" y="759" />
521         <di:waypoint xsi:type="dc:Point" x="849" y="759" />
522         <bpmndi:BPMNLabel>
523           <dc:Bounds x="680" y="726" width="68" height="12" />
524         </bpmndi:BPMNLabel>
525       </bpmndi:BPMNEdge>
526       <bpmndi:BPMNShape id="CallActivity_101qf6x_di" bpmnElement="CallActivity_101qf6x">
527         <dc:Bounds x="620" y="119" width="100" height="80" />
528       </bpmndi:BPMNShape>
529       <bpmndi:BPMNEdge id="SequenceFlow_13qdn1s_di" bpmnElement="SequenceFlow_13qdn1s">
530         <di:waypoint xsi:type="dc:Point" x="720" y="159" />
531         <di:waypoint xsi:type="dc:Point" x="836" y="159" />
532         <di:waypoint xsi:type="dc:Point" x="836" y="193" />
533         <bpmndi:BPMNLabel>
534           <dc:Bounds x="778" y="144" width="0" height="0" />
535         </bpmndi:BPMNLabel>
536       </bpmndi:BPMNEdge>
537       <bpmndi:BPMNEdge id="SequenceFlow_1i1h3il_di" bpmnElement="SequenceFlow_1i1h3il">
538         <di:waypoint xsi:type="dc:Point" x="250" y="943" />
539         <di:waypoint xsi:type="dc:Point" x="466" y="943" />
540         <bpmndi:BPMNLabel>
541           <dc:Bounds x="358" y="928" width="0" height="0" />
542         </bpmndi:BPMNLabel>
543       </bpmndi:BPMNEdge>
544       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="if_notifcationURLExists">
545         <di:waypoint xsi:type="dc:Point" x="496" y="193" />
546         <di:waypoint xsi:type="dc:Point" x="496" y="159" />
547         <di:waypoint xsi:type="dc:Point" x="620" y="159" />
548         <bpmndi:BPMNLabel>
549           <dc:Bounds x="519" y="165" width="18" height="12" />
550         </bpmndi:BPMNLabel>
551       </bpmndi:BPMNEdge>
552     </bpmndi:BPMNPlane>
553   </bpmndi:BPMNDiagram>
554 </bpmn2:definitions>