blob: 7e5a1cd497fb32eb1ca08d0a90cb5ecb2bf87fd5 [file] [log] [blame]
xg353yb6b7bef2017-04-11 13:30:42 +02001<?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="_pNTO8MRhEeWv36YLr7PC3Q" targetNamespace="http://camunda.org/schema/1.0/bpmn" exporter="Camunda Modeler" exporterVersion="1.4.0" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
3 <bpmn2:process id="CreateVfModuleInfra" name="CreateVfModuleInfra" isExecutable="true">
4 <bpmn2:startEvent id="StartEvent_1" name="Start">
5 <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>
6 </bpmn2:startEvent>
7 <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="PreProcessRequest" />
8 <bpmn2:callActivity id="DoCreateVfModuleSubprocess" name="Do Create Vf Module" calledElement="DoCreateVfModule">
9 <bpmn2:extensionElements>
10 <camunda:in source="DoCreateVfModuleRequest" target="DoCreateVfModuleRequest" />
11 <camunda:in source="mso-request-id" target="mso-request-id" />
12 <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled" />
13 <camunda:in source="isVidRequest" target="isVidRequest" />
14 <camunda:in source="newVfModuleId" target="newVfModuleId" />
15 <camunda:out source="DCVFM_vnfId" target="CVFMI_vnfId" />
16 <camunda:out source="DCVFM_vfModuleId" target="CVFMI_vfModuleId" />
17 <camunda:out source="RollbackData" target="RollbackData" />
18 <camunda:out source="WorkflowException" target="WorkflowException" />
19 <camunda:out source="WorkflowResponse" target="CVFMI_WorkflowResponse" />
20 </bpmn2:extensionElements>
21 <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>
22 <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>
23 </bpmn2:callActivity>
24 <bpmn2:scriptTask id="SendResponse" name="Send Response" scriptFormat="groovy">
25 <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>
26 <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>
27 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
ChrisC025301d2017-01-31 11:40:03 +010028def createVfModule = new CreateVfModuleInfra()
xg353yb6b7bef2017-04-11 13:30:42 +020029createVfModule.sendResponse(execution)]]></bpmn2:script>
30 </bpmn2:scriptTask>
31 <bpmn2:sequenceFlow id="SequenceFlow_7" name="" sourceRef="SendResponse" targetRef="DoCreateVfModuleSubprocess" />
32 <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_1" name="To FinishLine">
33 <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>
34 <bpmn2:linkEventDefinition id="_LinkEventDefinition_34" name="FinishLine" />
35 </bpmn2:intermediateThrowEvent>
36 <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="DoCreateVfModuleSubprocess" targetRef="IntermediateThrowEvent_1" />
37 <bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_1" name="FinishLine">
38 <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>
39 <bpmn2:linkEventDefinition id="_LinkEventDefinition_35" name="FinishLine" />
40 </bpmn2:intermediateCatchEvent>
41 <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="IntermediateCatchEvent_1" targetRef="PrepareUpdateInfraRequest" />
42 <bpmn2:scriptTask id="PrepareUpdateInfraRequest" name="Prepare Update Infra Request" scriptFormat="groovy">
43 <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>
44 <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>
45 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
ChrisC025301d2017-01-31 11:40:03 +010046def createVfModule = new CreateVfModuleInfra()
xg353yb6b7bef2017-04-11 13:30:42 +020047createVfModule.prepareUpdateInfraRequest(execution)]]></bpmn2:script>
48 </bpmn2:scriptTask>
49 <bpmn2:serviceTask id="ServiceTask_1" name="Update Infra Request">
50 <bpmn2:extensionElements>
51 <camunda:connector>
52 <camunda:inputOutput>
53 <camunda:inputParameter name="url">${URN_mso_adapters_db_endpoint}</camunda:inputParameter>
54 <camunda:inputParameter name="headers">
55 <camunda:map>
56 <camunda:entry key="content-type">application/soap+xml</camunda:entry>
57 <camunda:entry key="Authorization">#{BasicAuthHeaderValueDB}</camunda:entry>
58 </camunda:map>
59 </camunda:inputParameter>
60 <camunda:inputParameter name="payload">${CVFMI_updateInfraRequest}</camunda:inputParameter>
61 <camunda:inputParameter name="method">POST</camunda:inputParameter>
62 <camunda:outputParameter name="CVFMI_dbResponseCode">${statusCode}</camunda:outputParameter>
63 <camunda:outputParameter name="CVFMI_dbResponse">${response}</camunda:outputParameter>
64 </camunda:inputOutput>
65 <camunda:connectorId>http-connector</camunda:connectorId>
66 </camunda:connector>
67 </bpmn2:extensionElements>
68 <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>
69 <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>
70 </bpmn2:serviceTask>
71 <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="PrepareUpdateInfraRequest" targetRef="ServiceTask_1" />
72 <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="ServiceTask_1" targetRef="UpdateInfraRequestResponseCheck" />
73 <bpmn2:scriptTask id="PrepareMSOCompletionHandler" name="Prepare MSO Completion Handler" scriptFormat="groovy">
74 <bpmn2:incoming>updateInfraRequestResponseGood</bpmn2:incoming>
75 <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>
76 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
ChrisC025301d2017-01-31 11:40:03 +010077def createVfModule = new CreateVfModuleInfra()
xg353yb6b7bef2017-04-11 13:30:42 +020078createVfModule.postProcessResponse(execution)]]></bpmn2:script>
79 </bpmn2:scriptTask>
80 <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="PrepareMSOCompletionHandler" targetRef="MSOCompletionHandler" />
81 <bpmn2:callActivity id="MSOCompletionHandler" name="MSO Completion Handler" calledElement="CompleteMsoProcess">
82 <bpmn2:extensionElements>
83 <camunda:in source="CVFMI_msoCompletionRequest" target="CompleteMsoProcessRequest" />
84 <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled" />
85 <camunda:in source="mso-service-instance-id" target="mso-service-instance-id" />
86 <camunda:in source="mso-request-id" target="mso-request-id" />
87 <camunda:out source="CompleteMsoProcessResponse" target="CompleteMsoProcessResponse" />
88 <camunda:out source="CMSO_ErrorResponse" target="CMSO_ErrorResponse" />
89 </bpmn2:extensionElements>
90 <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>
91 <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>
92 </bpmn2:callActivity>
93 <bpmn2:exclusiveGateway id="UpdateInfraRequestResponseCheck" name="Success? " default="updateInfraRequestResponseBad">
94 <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>
95 <bpmn2:outgoing>updateInfraRequestResponseBad</bpmn2:outgoing>
96 <bpmn2:outgoing>updateInfraRequestResponseGood</bpmn2:outgoing>
97 </bpmn2:exclusiveGateway>
98 <bpmn2:sequenceFlow id="updateInfraRequestResponseBad" name="no" sourceRef="UpdateInfraRequestResponseCheck" targetRef="EndEvent_2" />
99 <bpmn2:sequenceFlow id="updateInfraRequestResponseGood" name="yes" sourceRef="UpdateInfraRequestResponseCheck" targetRef="PrepareMSOCompletionHandler">
100 <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CVFMI_dbResponseCode" ) == '200'}]]></bpmn2:conditionExpression>
101 </bpmn2:sequenceFlow>
102 <bpmn2:endEvent id="EndEvent_2">
103 <bpmn2:incoming>updateInfraRequestResponseBad</bpmn2:incoming>
104 <bpmn2:errorEventDefinition id="_ErrorEventDefinition_2" errorRef="Error_1" />
105 </bpmn2:endEvent>
106 <bpmn2:subProcess id="ErrorHandler" name="Error Handler" triggeredByEvent="true">
107 <bpmn2:scriptTask id="ValidateRollbackResponse" name="Validate Rollback Response" scriptFormat="groovy">
108 <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>
109 <bpmn2:outgoing>SequenceFlow_21</bpmn2:outgoing>
110 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
ChrisC025301d2017-01-31 11:40:03 +0100111def createVfModule = new CreateVfModuleInfra()
xg353yb6b7bef2017-04-11 13:30:42 +0200112createVfModule.validateRollbackResponse(execution)]]></bpmn2:script>
113 </bpmn2:scriptTask>
114 <bpmn2:sequenceFlow id="SequenceFlow_21" name="" sourceRef="ValidateRollbackResponse" targetRef="InclusiveGateway_1" />
115 <bpmn2:callActivity id="ScriptTask_1" name="Do CreateVfModule Rollback" calledElement="DoCreateVfModuleRollback">
116 <bpmn2:extensionElements>
117 <camunda:in source="RollbackData" target="RollbackData" />
118 <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled" />
119 <camunda:in source="isVidRequest" target="isVidRequest" />
120 <camunda:out source="MSOWorkflowException" target="RollbackWorkflowException" />
121 </bpmn2:extensionElements>
122 <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>
123 <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>
124 </bpmn2:callActivity>
125 <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="ScriptTask_1" targetRef="ValidateRollbackResponse" />
126 <bpmn2:startEvent id="StartEvent_2" name="Catch All Errors">
127 <bpmn2:outgoing>SequenceFlow_13</bpmn2:outgoing>
128 <bpmn2:errorEventDefinition id="ErrorEventDefinition_1" />
129 </bpmn2:startEvent>
130 <bpmn2:sequenceFlow id="SequenceFlow_13" name="" sourceRef="StartEvent_2" targetRef="ExclusiveGateway_1" />
131 <bpmn2:callActivity id="FalloutHandler" name="Fallout Handler" calledElement="FalloutHandler">
132 <bpmn2:extensionElements>
133 <camunda:in source="CVFMI_FalloutHandlerRequest" target="FalloutHandlerRequest" />
134 <camunda:in source="mso-request-id" target="mso-request-id" />
135 <camunda:in source="mso-service-instance-id" target="mso-service-instance-id" />
136 <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled" />
137 </bpmn2:extensionElements>
138 <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>
139 <bpmn2:outgoing>SequenceFlow_11</bpmn2:outgoing>
140 </bpmn2:callActivity>
141 <bpmn2:sequenceFlow id="SequenceFlow_11" name="" sourceRef="FalloutHandler" targetRef="EndEvent_3" />
142 <bpmn2:endEvent id="EndEvent_3">
143 <bpmn2:incoming>SequenceFlow_11</bpmn2:incoming>
144 <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_11" />
145 </bpmn2:endEvent>
146 <bpmn2:scriptTask id="PrepareFalloutHandler" name="Prepare Fallout Handler" scriptFormat="groovy">
147 <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>
148 <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>
149 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
ChrisC025301d2017-01-31 11:40:03 +0100150def cvfm = new CreateVfModuleInfra()
xg353yb6b7bef2017-04-11 13:30:42 +0200151cvfm.falloutHandlerPrep(execution, 'CVFMI_FalloutHandlerRequest')]]></bpmn2:script>
152 </bpmn2:scriptTask>
153 <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="PrepareFalloutHandler" targetRef="FalloutHandler" />
154 <bpmn2:inclusiveGateway id="InclusiveGateway_1">
155 <bpmn2:incoming>SequenceFlow_21</bpmn2:incoming>
156 <bpmn2:incoming>isRollbackOnNoSequenceFlow</bpmn2:incoming>
157 <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>
158 </bpmn2:inclusiveGateway>
159 <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="InclusiveGateway_1" targetRef="PrepareFalloutHandler" />
160 <bpmn2:exclusiveGateway id="ExclusiveGateway_1" name="Is Rollback On? " default="isRollbackOnNoSequenceFlow">
161 <bpmn2:incoming>SequenceFlow_13</bpmn2:incoming>
162 <bpmn2:outgoing>isRollbackOnNoSequenceFlow</bpmn2:outgoing>
163 <bpmn2:outgoing>IsRollbackOnYesSequenceFlow</bpmn2:outgoing>
164 </bpmn2:exclusiveGateway>
165 <bpmn2:sequenceFlow id="isRollbackOnNoSequenceFlow" name="no" sourceRef="ExclusiveGateway_1" targetRef="InclusiveGateway_1" />
166 <bpmn2:scriptTask id="LogAndSaveOriginalException" name="Log and Save Original Exception" scriptFormat="groovy">
167 <bpmn2:incoming>IsRollbackOnYesSequenceFlow</bpmn2:incoming>
168 <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>
169 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
ChrisC025301d2017-01-31 11:40:03 +0100170def cvfm = new CreateVfModuleInfra()
xg353yb6b7bef2017-04-11 13:30:42 +0200171cvfm.logAndSaveOriginalException(execution)]]></bpmn2:script>
172 </bpmn2:scriptTask>
173 <bpmn2:sequenceFlow id="IsRollbackOnYesSequenceFlow" name="yes" sourceRef="ExclusiveGateway_1" targetRef="LogAndSaveOriginalException">
174 <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("CVFMI_rollbackEnabled") == true}]]></bpmn2:conditionExpression>
175 </bpmn2:sequenceFlow>
176 <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="LogAndSaveOriginalException" targetRef="ScriptTask_1" />
177 </bpmn2:subProcess>
178 <bpmn2:scriptTask id="SetSuccessIndicator" name="Set Success Indicator" scriptFormat="groovy">
179 <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>
180 <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>
181 <bpmn2:script><![CDATA[execution.setVariable("CreateVfModuleSuccessIndicator", true)]]></bpmn2:script>
182 </bpmn2:scriptTask>
183 <bpmn2:endEvent id="EndEvent_1">
184 <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>
185 <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_10" />
186 </bpmn2:endEvent>
187 <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="MSOCompletionHandler" targetRef="SetSuccessIndicator" />
188 <bpmn2:sequenceFlow id="SequenceFlow_16" name="" sourceRef="SetSuccessIndicator" targetRef="EndEvent_1" />
189 <bpmn2:boundaryEvent id="BoundaryEvent_1" name="" attachedToRef="ErrorHandler">
190 <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>
191 <bpmn2:errorEventDefinition id="_ErrorEventDefinition_3" />
192 </bpmn2:boundaryEvent>
193 <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="BoundaryEvent_1" targetRef="EndEvent_4" />
194 <bpmn2:endEvent id="EndEvent_4">
195 <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>
196 <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_12" />
197 </bpmn2:endEvent>
198 <bpmn2:scriptTask id="PreProcessRequest" name="Pre-Process Request" scriptFormat="groovy">
199 <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>
200 <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>
201 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
ChrisC025301d2017-01-31 11:40:03 +0100202def createVfModule = new CreateVfModuleInfra()
xg353yb6b7bef2017-04-11 13:30:42 +0200203createVfModule.preProcessRequest(execution)]]></bpmn2:script>
204 </bpmn2:scriptTask>
205 <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="PreProcessRequest" targetRef="SendResponse" />
206 </bpmn2:process>
207 <bpmn2:error id="Error_1" name="MSOWorkflowException" errorCode="MSOWorkflowException" />
208 <bpmn2:error id="Error_2" name="REST Fault" errorCode="RESTFault" />
209 <bpmndi:BPMNDiagram id="BPMNDiagram_1">
210 <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateVfModuleInfra">
211 <bpmndi:BPMNShape id="_BPMNShape_StartEvent_50" bpmnElement="StartEvent_1">
212 <dc:Bounds x="41" y="231" width="36" height="36" />
213 </bpmndi:BPMNShape>
214 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_50" targetElement="_BPMNShape_ScriptTask_124">
215 <di:waypoint xsi:type="dc:Point" x="77" y="249" />
216 <di:waypoint xsi:type="dc:Point" x="226" y="249" />
217 <bpmndi:BPMNLabel>
218 <dc:Bounds x="99" y="249" width="6" height="6" />
219 </bpmndi:BPMNLabel>
220 </bpmndi:BPMNEdge>
221 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_124" bpmnElement="PreProcessRequest">
222 <dc:Bounds x="226" y="209" width="100" height="80" />
223 </bpmndi:BPMNShape>
224 <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_86" bpmnElement="SendResponse">
225 <dc:Bounds x="432" y="209" width="100" height="80" />
226 </bpmndi:BPMNShape>
227 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_124" targetElement="_BPMNShape_ServiceTask_86">
228 <di:waypoint xsi:type="dc:Point" x="326" y="249" />
229 <di:waypoint xsi:type="dc:Point" x="432" y="249" />
230 <bpmndi:BPMNLabel>
231 <dc:Bounds x="348" y="249" width="6" height="6" />
232 </bpmndi:BPMNLabel>
233 </bpmndi:BPMNEdge>
234 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_178" bpmnElement="DoCreateVfModuleSubprocess">
235 <dc:Bounds x="612" y="209" width="145" height="80" />
236 </bpmndi:BPMNShape>
237 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ServiceTask_86" targetElement="_BPMNShape_ScriptTask_178">
238 <di:waypoint xsi:type="dc:Point" x="532" y="249" />
239 <di:waypoint xsi:type="dc:Point" x="612" y="249" />
240 </bpmndi:BPMNEdge>
241 <bpmndi:BPMNShape id="_BPMNShape_IntermediateThrowEvent_47" bpmnElement="IntermediateThrowEvent_1">
242 <dc:Bounds x="823" y="231" width="36" height="36" />
243 <bpmndi:BPMNLabel>
244 <dc:Bounds x="841" y="272" width="0" height="0" />
245 </bpmndi:BPMNLabel>
246 </bpmndi:BPMNShape>
247 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_ScriptTask_178" targetElement="_BPMNShape_IntermediateThrowEvent_47">
248 <di:waypoint xsi:type="dc:Point" x="756" y="249" />
249 <di:waypoint xsi:type="dc:Point" x="823" y="249" />
250 </bpmndi:BPMNEdge>
251 <bpmndi:BPMNShape id="_BPMNShape_IntermediateCatchEvent_32" bpmnElement="IntermediateCatchEvent_1">
252 <dc:Bounds x="39" y="349" width="36" height="36" />
253 <bpmndi:BPMNLabel>
254 <dc:Bounds x="25" y="390" width="65" height="22" />
255 </bpmndi:BPMNLabel>
256 </bpmndi:BPMNShape>
257 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_219" bpmnElement="PrepareUpdateInfraRequest">
258 <dc:Bounds x="127" y="327" width="100" height="80" />
259 </bpmndi:BPMNShape>
260 <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_103" bpmnElement="ServiceTask_1">
261 <dc:Bounds x="277" y="327" width="100" height="80" />
262 </bpmndi:BPMNShape>
263 <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_179" bpmnElement="UpdateInfraRequestResponseCheck" isMarkerVisible="true">
264 <dc:Bounds x="443" y="341" width="50" height="50" />
265 <bpmndi:BPMNLabel>
266 <dc:Bounds x="435" y="308" width="68" height="22" />
267 </bpmndi:BPMNLabel>
268 </bpmndi:BPMNShape>
269 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_220" bpmnElement="PrepareMSOCompletionHandler">
270 <dc:Bounds x="552" y="327" width="100" height="80" />
271 </bpmndi:BPMNShape>
272 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_221" bpmnElement="MSOCompletionHandler">
273 <dc:Bounds x="708" y="327" width="100" height="80" />
274 </bpmndi:BPMNShape>
275 <bpmndi:BPMNShape id="_BPMNShape_EndEvent_177" bpmnElement="EndEvent_1">
276 <dc:Bounds x="1020" y="349" width="36" height="36" />
277 <bpmndi:BPMNLabel>
278 <dc:Bounds x="1038" y="390" width="0" height="0" />
279 </bpmndi:BPMNLabel>
280 </bpmndi:BPMNShape>
281 <bpmndi:BPMNShape id="_BPMNShape_EndEvent_178" bpmnElement="EndEvent_2">
282 <dc:Bounds x="452" y="469" width="36" height="36" />
283 <bpmndi:BPMNLabel>
284 <dc:Bounds x="470" y="510" width="0" height="0" />
285 </bpmndi:BPMNLabel>
286 </bpmndi:BPMNShape>
287 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_IntermediateCatchEvent_32" targetElement="_BPMNShape_ScriptTask_219">
288 <di:waypoint xsi:type="dc:Point" x="75" y="367" />
289 <di:waypoint xsi:type="dc:Point" x="127" y="367" />
290 <bpmndi:BPMNLabel>
291 <dc:Bounds x="105" y="367" width="6" height="6" />
292 </bpmndi:BPMNLabel>
293 </bpmndi:BPMNEdge>
294 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_219" targetElement="_BPMNShape_ServiceTask_103">
295 <di:waypoint xsi:type="dc:Point" x="227" y="367" />
296 <di:waypoint xsi:type="dc:Point" x="277" y="367" />
297 </bpmndi:BPMNEdge>
298 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ServiceTask_103" targetElement="_BPMNShape_ExclusiveGateway_179">
299 <di:waypoint xsi:type="dc:Point" x="377" y="367" />
300 <di:waypoint xsi:type="dc:Point" x="410" y="367" />
301 <di:waypoint xsi:type="dc:Point" x="410" y="366" />
302 <di:waypoint xsi:type="dc:Point" x="443" y="366" />
303 <bpmndi:BPMNLabel>
304 <dc:Bounds x="407" y="366" width="6" height="6" />
305 </bpmndi:BPMNLabel>
306 </bpmndi:BPMNEdge>
307 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="updateInfraRequestResponseBad" sourceElement="_BPMNShape_ExclusiveGateway_179" targetElement="_BPMNShape_EndEvent_178">
308 <di:waypoint xsi:type="dc:Point" x="468" y="391" />
309 <di:waypoint xsi:type="dc:Point" x="469" y="421" />
310 <di:waypoint xsi:type="dc:Point" x="470" y="421" />
311 <di:waypoint xsi:type="dc:Point" x="470" y="469" />
312 <bpmndi:BPMNLabel>
313 <dc:Bounds x="459" y="419" width="20" height="22" />
314 </bpmndi:BPMNLabel>
315 </bpmndi:BPMNEdge>
316 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="updateInfraRequestResponseGood" sourceElement="_BPMNShape_ExclusiveGateway_179" targetElement="_BPMNShape_ScriptTask_220">
317 <di:waypoint xsi:type="dc:Point" x="493" y="366" />
318 <di:waypoint xsi:type="dc:Point" x="523" y="366" />
319 <di:waypoint xsi:type="dc:Point" x="523" y="367" />
320 <di:waypoint xsi:type="dc:Point" x="552" y="367" />
321 <bpmndi:BPMNLabel>
322 <dc:Bounds x="510" y="367" width="27" height="22" />
323 </bpmndi:BPMNLabel>
324 </bpmndi:BPMNEdge>
325 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ScriptTask_220" targetElement="_BPMNShape_ScriptTask_221">
326 <di:waypoint xsi:type="dc:Point" x="652" y="367" />
327 <di:waypoint xsi:type="dc:Point" x="708" y="367" />
328 <bpmndi:BPMNLabel>
329 <dc:Bounds x="678" y="367" width="6" height="6" />
330 </bpmndi:BPMNLabel>
331 </bpmndi:BPMNEdge>
332 <bpmndi:BPMNShape id="_BPMNShape_SubProcess_20" bpmnElement="ErrorHandler" isExpanded="true">
333 <dc:Bounds x="48" y="540" width="925" height="385" />
334 </bpmndi:BPMNShape>
335 <bpmndi:BPMNShape id="_BPMNShape_StartEvent_54" bpmnElement="StartEvent_2">
336 <dc:Bounds x="72" y="844" width="36" height="36" />
337 <bpmndi:BPMNLabel>
338 <dc:Bounds x="60" y="886" width="98" height="22" />
339 </bpmndi:BPMNLabel>
340 </bpmndi:BPMNShape>
341 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_222" bpmnElement="PrepareFalloutHandler">
342 <dc:Bounds x="564" y="672" width="100" height="80" />
343 </bpmndi:BPMNShape>
344 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_223" bpmnElement="FalloutHandler">
345 <dc:Bounds x="708" y="672" width="100" height="80" />
346 </bpmndi:BPMNShape>
347 <bpmndi:BPMNShape id="_BPMNShape_EndEvent_179" bpmnElement="EndEvent_3">
348 <dc:Bounds x="864" y="694" width="36" height="36" />
349 <bpmndi:BPMNLabel>
350 <dc:Bounds x="882" y="735" width="0" height="0" />
351 </bpmndi:BPMNLabel>
352 </bpmndi:BPMNShape>
353 <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_44" bpmnElement="BoundaryEvent_1">
354 <dc:Bounds x="955" y="690" width="36" height="36" />
355 <bpmndi:BPMNLabel>
356 <dc:Bounds x="970" y="731" width="6" height="6" />
357 </bpmndi:BPMNLabel>
358 </bpmndi:BPMNShape>
359 <bpmndi:BPMNShape id="_BPMNShape_EndEvent_180" bpmnElement="EndEvent_4">
360 <dc:Bounds x="1049" y="690" width="36" height="36" />
361 <bpmndi:BPMNLabel>
362 <dc:Bounds x="1067" y="731" width="0" height="0" />
363 </bpmndi:BPMNLabel>
364 </bpmndi:BPMNShape>
365 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_ScriptTask_222" targetElement="_BPMNShape_ScriptTask_223">
366 <di:waypoint xsi:type="dc:Point" x="664" y="712" />
367 <di:waypoint xsi:type="dc:Point" x="708" y="712" />
368 <bpmndi:BPMNLabel>
369 <dc:Bounds x="689" y="712" width="6" height="6" />
370 </bpmndi:BPMNLabel>
371 </bpmndi:BPMNEdge>
372 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_11" sourceElement="_BPMNShape_ScriptTask_223" targetElement="_BPMNShape_EndEvent_179">
373 <di:waypoint xsi:type="dc:Point" x="808" y="712" />
374 <di:waypoint xsi:type="dc:Point" x="864" y="712" />
375 <bpmndi:BPMNLabel>
376 <dc:Bounds x="836" y="712" width="6" height="6" />
377 </bpmndi:BPMNLabel>
378 </bpmndi:BPMNEdge>
379 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_BoundaryEvent_44" targetElement="_BPMNShape_EndEvent_180">
380 <di:waypoint xsi:type="dc:Point" x="991" y="708" />
381 <di:waypoint xsi:type="dc:Point" x="1049" y="708" />
382 <bpmndi:BPMNLabel>
383 <dc:Bounds x="1015" y="708" width="6" height="6" />
384 </bpmndi:BPMNLabel>
385 </bpmndi:BPMNEdge>
386 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_241" bpmnElement="SetSuccessIndicator">
387 <dc:Bounds x="858" y="328" width="103" height="79" />
388 </bpmndi:BPMNShape>
389 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ScriptTask_221" targetElement="_BPMNShape_ScriptTask_241">
390 <di:waypoint xsi:type="dc:Point" x="808" y="367" />
391 <di:waypoint xsi:type="dc:Point" x="858" y="367" />
392 </bpmndi:BPMNEdge>
393 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_ScriptTask_241" targetElement="_BPMNShape_EndEvent_177">
394 <di:waypoint xsi:type="dc:Point" x="960" y="367" />
395 <di:waypoint xsi:type="dc:Point" x="1020" y="367" />
396 </bpmndi:BPMNEdge>
397 <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_223" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">
398 <dc:Bounds x="205" y="836" width="50" height="50" />
399 <bpmndi:BPMNLabel>
400 <dc:Bounds x="193" y="901" width="102" height="22" />
401 </bpmndi:BPMNLabel>
402 </bpmndi:BPMNShape>
403 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_266" bpmnElement="ValidateRollbackResponse">
404 <dc:Bounds x="312" y="554" width="103" height="79" />
405 </bpmndi:BPMNShape>
406 <bpmndi:BPMNShape id="_BPMNShape_InclusiveGateway_25" bpmnElement="InclusiveGateway_1">
407 <dc:Bounds x="459" y="686" width="50" height="50" />
408 <bpmndi:BPMNLabel>
409 <dc:Bounds x="484" y="741" width="0" height="0" />
410 </bpmndi:BPMNLabel>
411 </bpmndi:BPMNShape>
412 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_13" bpmnElement="SequenceFlow_13" sourceElement="_BPMNShape_StartEvent_54" targetElement="_BPMNShape_ExclusiveGateway_223">
413 <di:waypoint xsi:type="dc:Point" x="108" y="862" />
414 <di:waypoint xsi:type="dc:Point" x="156" y="862" />
415 <di:waypoint xsi:type="dc:Point" x="156" y="861" />
416 <di:waypoint xsi:type="dc:Point" x="205" y="861" />
417 <bpmndi:BPMNLabel>
418 <dc:Bounds x="153" y="862" width="6" height="6" />
419 </bpmndi:BPMNLabel>
420 </bpmndi:BPMNEdge>
421 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_20" bpmnElement="isRollbackOnNoSequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_223" targetElement="_BPMNShape_InclusiveGateway_25">
422 <di:waypoint xsi:type="dc:Point" x="255" y="861" />
423 <di:waypoint xsi:type="dc:Point" x="354" y="861" />
424 <di:waypoint xsi:type="dc:Point" x="354" y="711" />
425 <di:waypoint xsi:type="dc:Point" x="459" y="711" />
426 <bpmndi:BPMNLabel>
427 <dc:Bounds x="324" y="866" width="20" height="22" />
428 </bpmndi:BPMNLabel>
429 </bpmndi:BPMNEdge>
430 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_21" sourceElement="_BPMNShape_ScriptTask_266" targetElement="_BPMNShape_InclusiveGateway_25">
431 <di:waypoint xsi:type="dc:Point" x="414" y="593" />
432 <di:waypoint xsi:type="dc:Point" x="484" y="593" />
433 <di:waypoint xsi:type="dc:Point" x="484" y="686" />
434 <bpmndi:BPMNLabel>
435 <dc:Bounds x="462" y="593" width="6" height="6" />
436 </bpmndi:BPMNLabel>
437 </bpmndi:BPMNEdge>
438 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_InclusiveGateway_25" targetElement="_BPMNShape_ScriptTask_222">
439 <di:waypoint xsi:type="dc:Point" x="509" y="711" />
440 <di:waypoint xsi:type="dc:Point" x="527" y="711" />
441 <di:waypoint xsi:type="dc:Point" x="527" y="712" />
442 <di:waypoint xsi:type="dc:Point" x="564" y="712" />
443 <bpmndi:BPMNLabel>
444 <dc:Bounds x="533" y="712" width="6" height="6" />
445 </bpmndi:BPMNLabel>
446 </bpmndi:BPMNEdge>
447 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_267" bpmnElement="ScriptTask_1">
448 <dc:Bounds x="179" y="554" width="103" height="79" />
449 </bpmndi:BPMNShape>
450 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_22" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ScriptTask_267" targetElement="_BPMNShape_ScriptTask_266">
451 <di:waypoint xsi:type="dc:Point" x="281" y="593" />
452 <di:waypoint xsi:type="dc:Point" x="312" y="593" />
453 <bpmndi:BPMNLabel>
454 <dc:Bounds x="294" y="593" width="6" height="6" />
455 </bpmndi:BPMNLabel>
456 </bpmndi:BPMNEdge>
457 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_283" bpmnElement="LogAndSaveOriginalException">
458 <dc:Bounds x="179" y="693" width="103" height="79" />
459 </bpmndi:BPMNShape>
460 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_21" bpmnElement="IsRollbackOnYesSequenceFlow" sourceElement="_BPMNShape_ExclusiveGateway_223" targetElement="_BPMNShape_ScriptTask_283">
461 <di:waypoint xsi:type="dc:Point" x="230" y="836" />
462 <di:waypoint xsi:type="dc:Point" x="230" y="771" />
463 <bpmndi:BPMNLabel>
464 <dc:Bounds x="240" y="804" width="27" height="22" />
465 </bpmndi:BPMNLabel>
466 </bpmndi:BPMNEdge>
467 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_ScriptTask_283" targetElement="_BPMNShape_ScriptTask_267">
468 <di:waypoint xsi:type="dc:Point" x="230" y="693" />
469 <di:waypoint xsi:type="dc:Point" x="230" y="632" />
470 </bpmndi:BPMNEdge>
471 </bpmndi:BPMNPlane>
472 </bpmndi:BPMNDiagram>
473</bpmn2:definitions>