Initial OpenECOMP MSO commit
[so.git] / bpmn / MSOGammaBPMN / src / main / resources / process / Infrastructure / CreateVfModuleInfra.bpmn
1 <?xml version="1.0" encoding="UTF-8"?>\r
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://activiti.org/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd" id="_pNTO8MRhEeWv36YLr7PC3Q" exporter="camunda modeler" exporterVersion="2.7.0" targetNamespace="http://activiti.org/bpmn">\r
3   <bpmn2:process id="CreateVfModuleInfra" name="CreateVfModuleInfra" isExecutable="true">\r
4     <bpmn2:startEvent id="StartEvent_1" camunda:asyncAfter="true" name="Start">\r
5       <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>\r
6     </bpmn2:startEvent>\r
7     <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="PreProcessRequest"/>\r
8     <bpmn2:callActivity id="DoCreateVfModuleSubprocess" name="Do Create Vf Module" calledElement="DoCreateVfModule">\r
9       <bpmn2:extensionElements>\r
10         <camunda:in source="DoCreateVfModuleRequest" target="DoCreateVfModuleRequest"/>\r
11         <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>\r
12         <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>\r
13         <camunda:in source="isVidRequest" target="isVidRequest"/>\r
14         <camunda:in source="newVfModuleId" target="newVfModuleId"/>\r
15         <camunda:out source="DCVFM_vnfId" target="CVFMI_vnfId"/>\r
16         <camunda:out source="DCVFM_vfModuleId" target="CVFMI_vfModuleId"/>\r
17         <camunda:out source="RollbackData" target="RollbackData"/>\r
18         <camunda:out source="WorkflowException" target="WorkflowException"/>\r
19         <camunda:out source="WorkflowResponse" target="CVFMI_WorkflowResponse"/>\r
20       </bpmn2:extensionElements>\r
21       <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>\r
22       <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>\r
23     </bpmn2:callActivity>\r
24     <bpmn2:scriptTask id="SendResponse" camunda:asyncAfter="true" name="Send Response" scriptFormat="groovy">\r
25       <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>\r
26       <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>\r
27       <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
28 def createVfModule = new CreateVfModuleInfra()
29 createVfModule.sendResponse(execution)]]></bpmn2:script>\r
30     </bpmn2:scriptTask>\r
31     <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="SendResponse" targetRef="DoCreateVfModuleSubprocess"/>\r
32     <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_1" name="To FinishLine">\r
33       <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>\r
34       <bpmn2:linkEventDefinition id="_LinkEventDefinition_34" name="FinishLine"/>\r
35     </bpmn2:intermediateThrowEvent>\r
36     <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="DoCreateVfModuleSubprocess" targetRef="IntermediateThrowEvent_1"/>\r
37     <bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_1" name="FinishLine">\r
38       <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>\r
39       <bpmn2:linkEventDefinition id="_LinkEventDefinition_35" name="FinishLine"/>\r
40     </bpmn2:intermediateCatchEvent>\r
41     <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="IntermediateCatchEvent_1" targetRef="PrepareUpdateInfraRequest"/>\r
42     <bpmn2:scriptTask id="PrepareUpdateInfraRequest" name="Prepare Update Infra Request" scriptFormat="groovy">\r
43       <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>\r
44       <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>\r
45       <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
46 def createVfModule = new CreateVfModuleInfra()
47 createVfModule.prepareUpdateInfraRequest(execution)]]></bpmn2:script>\r
48     </bpmn2:scriptTask>\r
49     <bpmn2:serviceTask id="ServiceTask_1" name="Update Infra Request">\r
50       <bpmn2:extensionElements>\r
51         <camunda:connector>\r
52           <camunda:connectorId>http-connector</camunda:connectorId>\r
53           <camunda:inputOutput>\r
54             <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>\r
55             <camunda:inputParameter name="headers">\r
56               <camunda:map>\r
57                 <camunda:entry key="content-type">application/soap+xml</camunda:entry>\r
58               </camunda:map>\r
59             </camunda:inputParameter>\r
60             <camunda:inputParameter name="payload">${CVFMI_updateInfraRequest}</camunda:inputParameter>\r
61             <camunda:inputParameter name="method">POST</camunda:inputParameter>\r
62             <camunda:outputParameter name="CVFMI_dbResponseCode">${statusCode}</camunda:outputParameter>\r
63             <camunda:outputParameter name="CVFMI_dbResponse">${response}</camunda:outputParameter>\r
64           </camunda:inputOutput>\r
65         </camunda:connector>\r
66       </bpmn2:extensionElements>\r
67       <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>\r
68       <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>\r
69     </bpmn2:serviceTask>\r
70     <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="PrepareUpdateInfraRequest" targetRef="ServiceTask_1"/>\r
71     <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="ServiceTask_1" targetRef="UpdateInfraRequestResponseCheck"/>\r
72     <bpmn2:scriptTask id="PrepareMSOCompletionHandler" name="Prepare MSO Completion Handler" scriptFormat="groovy">\r
73       <bpmn2:incoming>updateInfraRequestResponseGood</bpmn2:incoming>\r
74       <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>\r
75       <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
76 def createVfModule = new CreateVfModuleInfra()
77 createVfModule.postProcessResponse(execution)]]></bpmn2:script>\r
78     </bpmn2:scriptTask>\r
79     <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="PrepareMSOCompletionHandler" targetRef="MSOCompletionHandler"/>\r
80     <bpmn2:callActivity id="MSOCompletionHandler" name="MSO Completion Handler" calledElement="CompleteMsoProcess">\r
81       <bpmn2:extensionElements>\r
82         <camunda:in source="CVFMI_msoCompletionRequest" target="CompleteMsoProcessRequest"/>\r
83         <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>\r
84         <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>\r
85         <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>\r
86         <camunda:out source="CompleteMsoProcessResponse" target="CompleteMsoProcessResponse"/>\r
87         <camunda:out source="CMSO_ErrorResponse" target="CMSO_ErrorResponse"/>\r
88       </bpmn2:extensionElements>\r
89       <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>\r
90       <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>\r
91     </bpmn2:callActivity>\r
92     <bpmn2:exclusiveGateway id="UpdateInfraRequestResponseCheck" name="Success? " default="updateInfraRequestResponseBad">\r
93       <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>\r
94       <bpmn2:outgoing>updateInfraRequestResponseBad</bpmn2:outgoing>\r
95       <bpmn2:outgoing>updateInfraRequestResponseGood</bpmn2:outgoing>\r
96     </bpmn2:exclusiveGateway>\r
97     <bpmn2:sequenceFlow id="updateInfraRequestResponseBad" name="no" sourceRef="UpdateInfraRequestResponseCheck" targetRef="EndEvent_2"/>\r
98     <bpmn2:sequenceFlow id="updateInfraRequestResponseGood" name="yes" sourceRef="UpdateInfraRequestResponseCheck" targetRef="PrepareMSOCompletionHandler">\r
99       <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CVFMI_dbResponseCode" ) == '200'}]]></bpmn2:conditionExpression>\r
100     </bpmn2:sequenceFlow>\r
101     <bpmn2:endEvent id="EndEvent_2">\r
102       <bpmn2:incoming>updateInfraRequestResponseBad</bpmn2:incoming>\r
103       <bpmn2:errorEventDefinition id="_ErrorEventDefinition_2" errorRef="Error_1"/>\r
104     </bpmn2:endEvent>\r
105     <bpmn2:subProcess id="ErrorHandler" name="Error Handler" triggeredByEvent="true">\r
106       <bpmn2:scriptTask id="ValidateRollbackResponse" name="Validate Rollback Response" scriptFormat="groovy">\r
107         <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>\r
108         <bpmn2:outgoing>SequenceFlow_21</bpmn2:outgoing>\r
109         <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
110 def createVfModule = new CreateVfModuleInfra()
111 createVfModule.validateRollbackResponse(execution)]]></bpmn2:script>\r
112       </bpmn2:scriptTask>\r
113       <bpmn2:sequenceFlow id="SequenceFlow_21" name="" sourceRef="ValidateRollbackResponse" targetRef="InclusiveGateway_1"/>\r
114       <bpmn2:callActivity id="ScriptTask_1" name="Do CreateVfModule Rollback" calledElement="DoCreateVfModuleRollback">\r
115         <bpmn2:extensionElements>\r
116           <camunda:in source="RollbackData" target="RollbackData"/>\r
117           <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>\r
118           <camunda:in source="isVidRequest" target="isVidRequest"/>\r
119           <camunda:out source="MSOWorkflowException" target="RollbackWorkflowException"/>\r
120         </bpmn2:extensionElements>\r
121         <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>\r
122         <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>\r
123       </bpmn2:callActivity>\r
124       <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="ScriptTask_1" targetRef="ValidateRollbackResponse"/>\r
125       <bpmn2:startEvent id="StartEvent_2" name="Catch All Errors">\r
126         <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>\r
127         <bpmn2:errorEventDefinition id="ErrorEventDefinition_1"/>\r
128       </bpmn2:startEvent>\r
129       <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="StartEvent_2" targetRef="ExclusiveGateway_1"/>\r
130       <bpmn2:callActivity id="FalloutHandler" name="Fallout Handler" calledElement="FalloutHandler">\r
131         <bpmn2:extensionElements>\r
132           <camunda:in source="CVFMI_FalloutHandlerRequest" target="FalloutHandlerRequest"/>\r
133           <camunda:in source="att-mso-request-id" target="att-mso-request-id"/>\r
134           <camunda:in source="att-mso-service-instance-id" target="att-mso-service-instance-id"/>\r
135           <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled"/>\r
136         </bpmn2:extensionElements>\r
137         <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>\r
138         <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>\r
139       </bpmn2:callActivity>\r
140       <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="FalloutHandler" targetRef="EndEvent_3"/>\r
141       <bpmn2:endEvent id="EndEvent_3">\r
142         <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>\r
143         <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_11"/>\r
144       </bpmn2:endEvent>\r
145       <bpmn2:scriptTask id="PrepareFalloutHandler" name="Prepare Fallout Handler" scriptFormat="groovy">\r
146         <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>\r
147         <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>\r
148         <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
149 def cvfm = new CreateVfModuleInfra()
150 cvfm.falloutHandlerPrep(execution, 'CVFMI_FalloutHandlerRequest')]]></bpmn2:script>\r
151       </bpmn2:scriptTask>\r
152       <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="PrepareFalloutHandler" targetRef="FalloutHandler"/>\r
153       <bpmn2:inclusiveGateway id="InclusiveGateway_1">\r
154         <bpmn2:incoming>SequenceFlow_21</bpmn2:incoming>\r
155         <bpmn2:incoming>isRollbackOnNoSequenceFlow</bpmn2:incoming>\r
156         <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>\r
157       </bpmn2:inclusiveGateway>\r
158       <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="InclusiveGateway_1" targetRef="PrepareFalloutHandler"/>\r
159       <bpmn2:exclusiveGateway id="ExclusiveGateway_1" name="Is Rollback On? " default="isRollbackOnNoSequenceFlow">\r
160         <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>\r
161         <bpmn2:outgoing>isRollbackOnNoSequenceFlow</bpmn2:outgoing>\r
162         <bpmn2:outgoing>IsRollbackOnYesSequenceFlow</bpmn2:outgoing>\r
163       </bpmn2:exclusiveGateway>\r
164       <bpmn2:sequenceFlow id="isRollbackOnNoSequenceFlow" name="no" sourceRef="ExclusiveGateway_1" targetRef="InclusiveGateway_1"/>\r
165       <bpmn2:scriptTask id="LogAndSaveOriginalException" name="Log and Save Original Exception" scriptFormat="groovy">\r
166         <bpmn2:incoming>IsRollbackOnYesSequenceFlow</bpmn2:incoming>\r
167         <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>\r
168         <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
169 def cvfm = new CreateVfModuleInfra()
170 cvfm.logAndSaveOriginalException(execution)]]></bpmn2:script>\r
171       </bpmn2:scriptTask>\r
172       <bpmn2:sequenceFlow id="IsRollbackOnYesSequenceFlow" name="yes" sourceRef="ExclusiveGateway_1" targetRef="LogAndSaveOriginalException">\r
173         <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CVFMI_rollbackEnabled") == true}]]></bpmn2:conditionExpression>\r
174       </bpmn2:sequenceFlow>\r
175       <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="LogAndSaveOriginalException" targetRef="ScriptTask_1"/>\r
176     </bpmn2:subProcess>\r
177     <bpmn2:scriptTask id="SetSuccessIndicator" name="Set Success Indicator" scriptFormat="groovy">\r
178       <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>\r
179       <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>\r
180       <bpmn2:script><![CDATA[execution.setVariable("CreateVfModuleSuccessIndicator", true)]]></bpmn2:script>\r
181     </bpmn2:scriptTask>\r
182     <bpmn2:endEvent id="EndEvent_1">\r
183       <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>\r
184       <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_10"/>\r
185     </bpmn2:endEvent>\r
186     <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="MSOCompletionHandler" targetRef="SetSuccessIndicator"/>\r
187     <bpmn2:sequenceFlow id="SequenceFlow_16" name="" sourceRef="SetSuccessIndicator" targetRef="EndEvent_1"/>\r
188     <bpmn2:boundaryEvent id="BoundaryEvent_1" name="" attachedToRef="ErrorHandler">\r
189       <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>\r
190       <bpmn2:errorEventDefinition id="_ErrorEventDefinition_3"/>\r
191     </bpmn2:boundaryEvent>\r
192     <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="BoundaryEvent_1" targetRef="EndEvent_4"/>\r
193     <bpmn2:endEvent id="EndEvent_4">\r
194       <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>\r
195       <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_12"/>\r
196     </bpmn2:endEvent>\r
197     <bpmn2:scriptTask id="PreProcessRequest" name="Pre-Process Request" scriptFormat="groovy">\r
198       <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>\r
199       <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>\r
200       <bpmn2:script><![CDATA[import com.att.bpm.scripts.*
201 def createVfModule = new CreateVfModuleInfra()
202 createVfModule.preProcessRequest(execution)]]></bpmn2:script>\r
203     </bpmn2:scriptTask>\r
204     <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="PreProcessRequest" targetRef="SendResponse"/>\r
205   </bpmn2:process>\r
206   <bpmn2:error id="Error_1" errorCode="MSOWorkflowException" name="MSOWorkflowException"/>\r
207   <bpmn2:error id="Error_2" errorCode="RESTFault" name="REST Fault"/>\r
208   <bpmndi:BPMNDiagram id="BPMNDiagram_1">\r
209     <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateVfModuleInfra">\r
210       <bpmndi:BPMNShape id="_BPMNShape_StartEvent_50" bpmnElement="StartEvent_1">\r
211         <dc:Bounds height="36.0" width="36.0" x="41.0" y="231.0"/>\r
212       </bpmndi:BPMNShape>\r
213       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_50" targetElement="_BPMNShape_ScriptTask_124">\r
214         <di:waypoint xsi:type="dc:Point" x="77.0" y="249.0"/>\r
215         <di:waypoint xsi:type="dc:Point" x="226.0" y="249.0"/>\r
216         <bpmndi:BPMNLabel>\r
217           <dc:Bounds height="6.0" width="6.0" x="99.0" y="249.0"/>\r
218         </bpmndi:BPMNLabel>\r
219       </bpmndi:BPMNEdge>\r
220       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_124" bpmnElement="PreProcessRequest">\r
221         <dc:Bounds height="80.0" width="100.0" x="226.0" y="209.0"/>\r
222       </bpmndi:BPMNShape>\r
223       <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_86" bpmnElement="SendResponse">\r
224         <dc:Bounds height="80.0" width="100.0" x="432.0" y="209.0"/>\r
225       </bpmndi:BPMNShape>\r
226       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_124" targetElement="_BPMNShape_ServiceTask_86">\r
227         <di:waypoint xsi:type="dc:Point" x="326.0" y="249.0"/>\r
228         <di:waypoint xsi:type="dc:Point" x="432.0" y="249.0"/>\r
229         <bpmndi:BPMNLabel>\r
230           <dc:Bounds height="6.0" width="6.0" x="348.0" y="249.0"/>\r
231         </bpmndi:BPMNLabel>\r
232       </bpmndi:BPMNEdge>\r
233       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_178" bpmnElement="DoCreateVfModuleSubprocess">\r
234         <dc:Bounds height="80.0" width="145.0" x="612.0" y="209.0"/>\r
235       </bpmndi:BPMNShape>\r
236       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ServiceTask_86" targetElement="_BPMNShape_ScriptTask_178">\r
237         <di:waypoint xsi:type="dc:Point" x="532.0" y="249.0"/>\r
238         <di:waypoint xsi:type="dc:Point" x="612.0" y="249.0"/>\r
239       </bpmndi:BPMNEdge>\r
240       <bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_47" bpmnElement="IntermediateThrowEvent_1">\r
241         <dc:Bounds height="36.0" width="36.0" x="823.0" y="231.0"/>\r
242         <bpmndi:BPMNLabel>\r
243           <dc:Bounds height="0.0" width="0.0" x="841.0" y="272.0"/>\r
244         </bpmndi:BPMNLabel>\r
245       </bpmndi:BPMNShape>\r
246       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_178" targetElement="_BPMNShape_IntermediateThrowEvent_47">\r
247         <di:waypoint xsi:type="dc:Point" x="756.0" y="249.0"/>\r
248         <di:waypoint xsi:type="dc:Point" x="823.0" y="249.0"/>\r
249       </bpmndi:BPMNEdge>\r
250       <bpmndi:BPMNShape id="_BPMNShape_IntermediateCatchEvent_32" bpmnElement="IntermediateCatchEvent_1">\r
251         <dc:Bounds height="36.0" width="36.0" x="39.0" y="349.0"/>\r
252         <bpmndi:BPMNLabel>\r
253           <dc:Bounds height="22.0" width="65.0" x="25.0" y="390.0"/>\r
254         </bpmndi:BPMNLabel>\r
255       </bpmndi:BPMNShape>\r
256       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_219" bpmnElement="PrepareUpdateInfraRequest">\r
257         <dc:Bounds height="80.0" width="100.0" x="127.0" y="327.0"/>\r
258       </bpmndi:BPMNShape>\r
259       <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_103" bpmnElement="ServiceTask_1">\r
260         <dc:Bounds height="80.0" width="100.0" x="277.0" y="327.0"/>\r
261       </bpmndi:BPMNShape>\r
262       <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_179" bpmnElement="UpdateInfraRequestResponseCheck" isMarkerVisible="true">\r
263         <dc:Bounds height="50.0" width="50.0" x="443.0" y="341.0"/>\r
264         <bpmndi:BPMNLabel>\r
265           <dc:Bounds height="22.0" width="68.0" x="435.0" y="308.0"/>\r
266         </bpmndi:BPMNLabel>\r
267       </bpmndi:BPMNShape>\r
268       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_220" bpmnElement="PrepareMSOCompletionHandler">\r
269         <dc:Bounds height="80.0" width="100.0" x="552.0" y="327.0"/>\r
270       </bpmndi:BPMNShape>\r
271       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_221" bpmnElement="MSOCompletionHandler">\r
272         <dc:Bounds height="80.0" width="100.0" x="708.0" y="327.0"/>\r
273       </bpmndi:BPMNShape>\r
274       <bpmndi:BPMNShape id="_BPMNShape_EndEvent_177" bpmnElement="EndEvent_1">\r
275         <dc:Bounds height="36.0" width="36.0" x="1020.0" y="349.0"/>\r
276         <bpmndi:BPMNLabel>\r
277           <dc:Bounds height="0.0" width="0.0" x="1038.0" y="390.0"/>\r
278         </bpmndi:BPMNLabel>\r
279       </bpmndi:BPMNShape>\r
280       <bpmndi:BPMNShape id="_BPMNShape_EndEvent_178" bpmnElement="EndEvent_2">\r
281         <dc:Bounds height="36.0" width="36.0" x="452.0" y="469.0"/>\r
282         <bpmndi:BPMNLabel>\r
283           <dc:Bounds height="0.0" width="0.0" x="470.0" y="510.0"/>\r
284         </bpmndi:BPMNLabel>\r
285       </bpmndi:BPMNShape>\r
286       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_IntermediateCatchEvent_32" targetElement="_BPMNShape_ScriptTask_219">\r
287         <di:waypoint xsi:type="dc:Point" x="75.0" y="367.0"/>\r
288         <di:waypoint xsi:type="dc:Point" x="127.0" y="367.0"/>\r
289         <bpmndi:BPMNLabel>\r
290           <dc:Bounds height="6.0" width="6.0" x="105.0" y="367.0"/>\r
291         </bpmndi:BPMNLabel>\r
292       </bpmndi:BPMNEdge>\r
293       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_219" targetElement="_BPMNShape_ServiceTask_103">\r
294         <di:waypoint xsi:type="dc:Point" x="227.0" y="367.0"/>\r
295         <di:waypoint xsi:type="dc:Point" x="277.0" y="367.0"/>\r
296       </bpmndi:BPMNEdge>\r
297       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ServiceTask_103" targetElement="_BPMNShape_ExclusiveGateway_179">\r
298         <di:waypoint xsi:type="dc:Point" x="377.0" y="367.0"/>\r
299         <di:waypoint xsi:type="dc:Point" x="410.0" y="367.0"/>\r
300         <di:waypoint xsi:type="dc:Point" x="410.0" y="366.0"/>\r
301         <di:waypoint xsi:type="dc:Point" x="443.0" y="366.0"/>\r
302         <bpmndi:BPMNLabel>\r
303           <dc:Bounds height="6.0" width="6.0" x="407.0" y="366.0"/>\r
304         </bpmndi:BPMNLabel>\r
305       </bpmndi:BPMNEdge>\r
306       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="updateInfraRequestResponseBad" sourceElement="_BPMNShape_ExclusiveGateway_179" targetElement="_BPMNShape_EndEvent_178">\r
307         <di:waypoint xsi:type="dc:Point" x="468.0" y="391.0"/>\r
308         <di:waypoint xsi:type="dc:Point" x="469.0" y="421.0"/>\r
309         <di:waypoint xsi:type="dc:Point" x="470.0" y="421.0"/>\r
310         <di:waypoint xsi:type="dc:Point" x="470.0" y="469.0"/>\r
311         <bpmndi:BPMNLabel>\r
312           <dc:Bounds height="22.0" width="20.0" x="459.0" y="419.0"/>\r
313         </bpmndi:BPMNLabel>\r
314       </bpmndi:BPMNEdge>\r
315       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="updateInfraRequestResponseGood" sourceElement="_BPMNShape_ExclusiveGateway_179" targetElement="_BPMNShape_ScriptTask_220">\r
316         <di:waypoint xsi:type="dc:Point" x="493.0" y="366.0"/>\r
317         <di:waypoint xsi:type="dc:Point" x="523.0" y="366.0"/>\r
318         <di:waypoint xsi:type="dc:Point" x="523.0" y="367.0"/>\r
319         <di:waypoint xsi:type="dc:Point" x="552.0" y="367.0"/>\r
320         <bpmndi:BPMNLabel>\r
321           <dc:Bounds height="22.0" width="27.0" x="510.0" y="367.0"/>\r
322         </bpmndi:BPMNLabel>\r
323       </bpmndi:BPMNEdge>\r
324       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ScriptTask_220" targetElement="_BPMNShape_ScriptTask_221">\r
325         <di:waypoint xsi:type="dc:Point" x="652.0" y="367.0"/>\r
326         <di:waypoint xsi:type="dc:Point" x="708.0" y="367.0"/>\r
327         <bpmndi:BPMNLabel>\r
328           <dc:Bounds height="6.0" width="6.0" x="678.0" y="367.0"/>\r
329         </bpmndi:BPMNLabel>\r
330       </bpmndi:BPMNEdge>\r
331       <bpmndi:BPMNShape id="_BPMNShape_SubProcess_20" bpmnElement="ErrorHandler" isExpanded="true">\r
332         <dc:Bounds height="385.0" width="925.0" x="48.0" y="540.0"/>\r
333       </bpmndi:BPMNShape>\r
334       <bpmndi:BPMNShape id="_BPMNShape_StartEvent_54" bpmnElement="StartEvent_2">\r
335         <dc:Bounds height="36.0" width="36.0" x="72.0" y="844.0"/>\r
336         <bpmndi:BPMNLabel>\r
337           <dc:Bounds height="22.0" width="98.0" x="60.0" y="886.0"/>\r
338         </bpmndi:BPMNLabel>\r
339       </bpmndi:BPMNShape>\r
340       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_222" bpmnElement="PrepareFalloutHandler">\r
341         <dc:Bounds height="80.0" width="100.0" x="564.0" y="672.0"/>\r
342       </bpmndi:BPMNShape>\r
343       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_223" bpmnElement="FalloutHandler">\r
344         <dc:Bounds height="80.0" width="100.0" x="708.0" y="672.0"/>\r
345       </bpmndi:BPMNShape>\r
346       <bpmndi:BPMNShape id="_BPMNShape_EndEvent_179" bpmnElement="EndEvent_3">\r
347         <dc:Bounds height="36.0" width="36.0" x="864.0" y="694.0"/>\r
348         <bpmndi:BPMNLabel>\r
349           <dc:Bounds height="0.0" width="0.0" x="882.0" y="735.0"/>\r
350         </bpmndi:BPMNLabel>\r
351       </bpmndi:BPMNShape>\r
352       <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_44" bpmnElement="BoundaryEvent_1">\r
353         <dc:Bounds height="36.0" width="36.0" x="955.0" y="690.0"/>\r
354         <bpmndi:BPMNLabel>\r
355           <dc:Bounds height="6.0" width="6.0" x="970.0" y="731.0"/>\r
356         </bpmndi:BPMNLabel>\r
357       </bpmndi:BPMNShape>\r
358       <bpmndi:BPMNShape id="_BPMNShape_EndEvent_180" bpmnElement="EndEvent_4">\r
359         <dc:Bounds height="36.0" width="36.0" x="1049.0" y="690.0"/>\r
360         <bpmndi:BPMNLabel>\r
361           <dc:Bounds height="0.0" width="0.0" x="1067.0" y="731.0"/>\r
362         </bpmndi:BPMNLabel>\r
363       </bpmndi:BPMNShape>\r
364       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ScriptTask_222" targetElement="_BPMNShape_ScriptTask_223">\r
365         <di:waypoint xsi:type="dc:Point" x="664.0" y="712.0"/>\r
366         <di:waypoint xsi:type="dc:Point" x="708.0" y="712.0"/>\r
367         <bpmndi:BPMNLabel>\r
368           <dc:Bounds height="6.0" width="6.0" x="689.0" y="712.0"/>\r
369         </bpmndi:BPMNLabel>\r
370       </bpmndi:BPMNEdge>\r
371       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ScriptTask_223" targetElement="_BPMNShape_EndEvent_179">\r
372         <di:waypoint xsi:type="dc:Point" x="808.0" y="712.0"/>\r
373         <di:waypoint xsi:type="dc:Point" x="864.0" y="712.0"/>\r
374         <bpmndi:BPMNLabel>\r
375           <dc:Bounds height="6.0" width="6.0" x="836.0" y="712.0"/>\r
376         </bpmndi:BPMNLabel>\r
377       </bpmndi:BPMNEdge>\r
378       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_BoundaryEvent_44" targetElement="_BPMNShape_EndEvent_180">\r
379         <di:waypoint xsi:type="dc:Point" x="991.0" y="708.0"/>\r
380         <di:waypoint xsi:type="dc:Point" x="1049.0" y="708.0"/>\r
381         <bpmndi:BPMNLabel>\r
382           <dc:Bounds height="6.0" width="6.0" x="1015.0" y="708.0"/>\r
383         </bpmndi:BPMNLabel>\r
384       </bpmndi:BPMNEdge>\r
385       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_241" bpmnElement="SetSuccessIndicator">\r
386         <dc:Bounds height="79.0" width="103.0" x="858.0" y="328.0"/>\r
387       </bpmndi:BPMNShape>\r
388       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ScriptTask_221" targetElement="_BPMNShape_ScriptTask_241">\r
389         <di:waypoint xsi:type="dc:Point" x="808.0" y="367.0"/>\r
390         <di:waypoint xsi:type="dc:Point" x="858.0" y="367.0"/>\r
391       </bpmndi:BPMNEdge>\r
392       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_ScriptTask_241" targetElement="_BPMNShape_EndEvent_177">\r
393         <di:waypoint xsi:type="dc:Point" x="960.0" y="367.0"/>\r
394         <di:waypoint xsi:type="dc:Point" x="1020.0" y="367.0"/>\r
395       </bpmndi:BPMNEdge>\r
396       <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_223" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">\r
397         <dc:Bounds height="50.0" width="50.0" x="205.0" y="836.0"/>\r
398         <bpmndi:BPMNLabel>\r
399           <dc:Bounds height="22.0" width="102.0" x="193.0" y="901.0"/>\r
400         </bpmndi:BPMNLabel>\r
401       </bpmndi:BPMNShape>\r
402       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_266" bpmnElement="ValidateRollbackResponse">\r
403         <dc:Bounds height="79.0" width="103.0" x="312.0" y="554.0"/>\r
404       </bpmndi:BPMNShape>\r
405       <bpmndi:BPMNShape id="_BPMNShape_InclusiveGateway_25" bpmnElement="InclusiveGateway_1">\r
406         <dc:Bounds height="50.0" width="50.0" x="459.0" y="686.0"/>\r
407         <bpmndi:BPMNLabel>\r
408           <dc:Bounds height="0.0" width="0.0" x="484.0" y="741.0"/>\r
409         </bpmndi:BPMNLabel>\r
410       </bpmndi:BPMNShape>\r
411       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_StartEvent_54" targetElement="_BPMNShape_ExclusiveGateway_223">\r
412         <di:waypoint xsi:type="dc:Point" x="108.0" y="862.0"/>\r
413         <di:waypoint xsi:type="dc:Point" x="156.0" y="862.0"/>\r
414         <di:waypoint xsi:type="dc:Point" x="156.0" y="861.0"/>\r
415         <di:waypoint xsi:type="dc:Point" x="205.0" y="861.0"/>\r
416         <bpmndi:BPMNLabel>\r
417           <dc:Bounds height="6.0" width="6.0" x="153.0" y="862.0"/>\r
418         </bpmndi:BPMNLabel>\r
419       </bpmndi:BPMNEdge>\r
420       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="isRollbackOnNoSequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_223" targetElement="_BPMNShape_InclusiveGateway_25">\r
421         <di:waypoint xsi:type="dc:Point" x="255.0" y="861.0"/>\r
422         <di:waypoint xsi:type="dc:Point" x="354.0" y="861.0"/>\r
423         <di:waypoint xsi:type="dc:Point" x="354.0" y="711.0"/>\r
424         <di:waypoint xsi:type="dc:Point" x="459.0" y="711.0"/>\r
425         <bpmndi:BPMNLabel>\r
426           <dc:Bounds height="22.0" width="20.0" x="324.0" y="866.0"/>\r
427         </bpmndi:BPMNLabel>\r
428       </bpmndi:BPMNEdge>\r
429       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_21" sourceElement="_BPMNShape_ScriptTask_266" targetElement="_BPMNShape_InclusiveGateway_25">\r
430         <di:waypoint xsi:type="dc:Point" x="414.0" y="593.0"/>\r
431         <di:waypoint xsi:type="dc:Point" x="484.0" y="593.0"/>\r
432         <di:waypoint xsi:type="dc:Point" x="484.0" y="686.0"/>\r
433         <bpmndi:BPMNLabel>\r
434           <dc:Bounds height="6.0" width="6.0" x="462.0" y="593.0"/>\r
435         </bpmndi:BPMNLabel>\r
436       </bpmndi:BPMNEdge>\r
437       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_InclusiveGateway_25" targetElement="_BPMNShape_ScriptTask_222">\r
438         <di:waypoint xsi:type="dc:Point" x="509.0" y="711.0"/>\r
439         <di:waypoint xsi:type="dc:Point" x="527.0" y="711.0"/>\r
440         <di:waypoint xsi:type="dc:Point" x="527.0" y="712.0"/>\r
441         <di:waypoint xsi:type="dc:Point" x="564.0" y="712.0"/>\r
442         <bpmndi:BPMNLabel>\r
443           <dc:Bounds height="6.0" width="6.0" x="533.0" y="712.0"/>\r
444         </bpmndi:BPMNLabel>\r
445       </bpmndi:BPMNEdge>\r
446       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_267" bpmnElement="ScriptTask_1">\r
447         <dc:Bounds height="79.0" width="103.0" x="179.0" y="554.0"/>\r
448       </bpmndi:BPMNShape>\r
449       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_22" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ScriptTask_267" targetElement="_BPMNShape_ScriptTask_266">\r
450         <di:waypoint xsi:type="dc:Point" x="281.0" y="593.0"/>\r
451         <di:waypoint xsi:type="dc:Point" x="312.0" y="593.0"/>\r
452         <bpmndi:BPMNLabel>\r
453           <dc:Bounds height="6.0" width="6.0" x="294.0" y="593.0"/>\r
454         </bpmndi:BPMNLabel>\r
455       </bpmndi:BPMNEdge>\r
456       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_283" bpmnElement="LogAndSaveOriginalException">\r
457         <dc:Bounds height="79.0" width="103.0" x="179.0" y="693.0"/>\r
458       </bpmndi:BPMNShape>\r
459       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="IsRollbackOnYesSequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_223" targetElement="_BPMNShape_ScriptTask_283">\r
460         <di:waypoint xsi:type="dc:Point" x="230.0" y="836.0"/>\r
461         <di:waypoint xsi:type="dc:Point" x="230.0" y="771.0"/>\r
462         <bpmndi:BPMNLabel>\r
463           <dc:Bounds height="22.0" width="27.0" x="240.0" y="804.0"/>\r
464         </bpmndi:BPMNLabel>\r
465       </bpmndi:BPMNEdge>\r
466       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_ScriptTask_283" targetElement="_BPMNShape_ScriptTask_267">\r
467         <di:waypoint xsi:type="dc:Point" x="230.0" y="693.0"/>\r
468         <di:waypoint xsi:type="dc:Point" x="230.0" y="632.0"/>\r
469       </bpmndi:BPMNEdge>\r
470     </bpmndi:BPMNPlane>\r
471   </bpmndi:BPMNDiagram>\r
472 </bpmn2:definitions>