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="_l2hJ8CccEeW3d--PaFJMbg" 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="sdncAdapter" name="SDNC Adapter" isExecutable="true">
4 <bpmn2:exclusiveGateway id="isResponseOK" name="is Response Ok?" default="badSynchronousResponse">
5 <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>
6 <bpmn2:outgoing>badSynchronousResponse</bpmn2:outgoing>
7 <bpmn2:outgoing>goodSynchronousResponse</bpmn2:outgoing>
8 </bpmn2:exclusiveGateway>
9 <bpmn2:sequenceFlow id="badSynchronousResponse" name="Bad synchronous response" sourceRef="isResponseOK" targetRef="setBadResponse" />
10 <bpmn2:sequenceFlow id="goodSynchronousResponse" name="Good synchronous response" sourceRef="isResponseOK" targetRef="resetCallbackRequest">
11 <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("SDNCA_ResponseCode")=='200'}]]></bpmn2:conditionExpression>
13 <bpmn2:scriptTask id="setBadResponse" name="Set Bad Response
\r Exception" scriptFormat="groovy">
14 <bpmn2:incoming>badSynchronousResponse</bpmn2:incoming>
15 <bpmn2:outgoing>Exception</bpmn2:outgoing>
16 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
18 int responseCode = execution.getVariable("SDNCA_ResponseCode")
19 ExceptionUtil exceptionUtil = new ExceptionUtil()
20 exceptionUtil.buildWorkflowException(execution, 7000, "Could not communicate with the SDNC Adapter" )]]></bpmn2:script>
22 <bpmn2:sequenceFlow id="Exception" name="Exception" sourceRef="setBadResponse" targetRef="badResponseEndFlow" />
23 <bpmn2:serviceTask id="invokeSDNCAdapter" name="Invoke SDNC Adapter" camunda:class="">
24 <bpmn2:extensionElements>
27 <camunda:inputParameter name="url">${URN_mso_adapters_sdnc_endpoint}</camunda:inputParameter>
28 <camunda:inputParameter name="method">POST</camunda:inputParameter>
29 <camunda:inputParameter name="headers">
31 <camunda:entry key="content-type">application/soap+xml</camunda:entry>
32 <camunda:entry key="Authorization">#{BasicAuthHeaderValue}</camunda:entry>
34 </camunda:inputParameter>
35 <camunda:inputParameter name="payload">${sdncAdapterRequest}</camunda:inputParameter>
36 <camunda:outputParameter name="sdncAdapterWorkflowResponse">${response}</camunda:outputParameter>
37 <camunda:outputParameter name="SDNCA_ResponseCode">${statusCode}</camunda:outputParameter>
38 </camunda:inputOutput>
39 <camunda:connectorId>soap-http-connector</camunda:connectorId>
41 </bpmn2:extensionElements>
42 <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>
43 <bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>
45 <bpmn2:sequenceFlow id="SequenceFlow_15" sourceRef="invokeSDNCAdapter" targetRef="isResponseOK" />
46 <bpmn2:endEvent id="badResponseEndFlow" name="Bad Response End Flow">
47 <bpmn2:incoming>Exception</bpmn2:incoming>
48 <bpmn2:errorEventDefinition id="_ErrorEventDefinition_77" errorRef="Error_3" />
50 <bpmn2:startEvent id="SDNCAdapter_Start" name="Incoming Message">
51 <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>
52 <bpmn2:messageEventDefinition id="_MessageEventDefinition_3" messageRef="Message_1" />
54 <bpmn2:sequenceFlow id="SequenceFlow_1" sourceRef="SDNCAdapter_Start" targetRef="processMessage" />
55 <bpmn2:scriptTask id="processMessage" name="Process message" scriptFormat="groovy">
56 <bpmn2:extensionElements>
58 <camunda:inputParameter name="ScriptObject">
60 <camunda:entry key="MethodName">massageSDNCRequestScript</camunda:entry>
61 <camunda:entry key="Params" />
63 </camunda:inputParameter>
64 </camunda:inputOutput>
65 </bpmn2:extensionElements>
66 <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>
67 <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>
68 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
69 def sdnc= new SDNCAdapter()
70 sdnc.preProcessRequest(execution)
73 <bpmn2:sequenceFlow id="SequenceFlow_8" sourceRef="processMessage" targetRef="invokeSDNCAdapter" />
74 <bpmn2:exclusiveGateway id="timeOutCheck">
75 <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>
76 <bpmn2:incoming>timeOut</bpmn2:incoming>
77 <bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>
78 </bpmn2:exclusiveGateway>
79 <bpmn2:scriptTask id="returnWorkflowResult" name="Return workflow result" scriptFormat="groovy">
80 <bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>
81 <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>
82 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
83 def sdnc= new SDNCAdapter()
84 sdnc.postProcessResponse(execution)
87 <bpmn2:sequenceFlow id="SequenceFlow_14" sourceRef="returnWorkflowResult" targetRef="timeoutError" />
88 <bpmn2:exclusiveGateway id="timeoutError" name="Did Timeout occur?" default="noTimeoutError">
89 <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>
90 <bpmn2:outgoing>noTimeoutError</bpmn2:outgoing>
91 <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>
92 </bpmn2:exclusiveGateway>
93 <bpmn2:sequenceFlow id="noTimeoutError" name="No Timeout" sourceRef="timeoutError" targetRef="ExclusiveGateway_1" />
94 <bpmn2:sequenceFlow id="SequenceFlow_19" name="Timeout" sourceRef="timeoutError" targetRef="setTimeoutEx">
95 <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("asynchronousResponseTimeout")==true}]]></bpmn2:conditionExpression>
97 <bpmn2:subProcess id="SubProcess" name="Wait for asynchronous message">
98 <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>
99 <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>
100 <bpmn2:endEvent id="eEndEventSubprocess" name="End Event Subprocess">
101 <bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>
102 <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_2" />
104 <bpmn2:startEvent id="StartEvent" name="Start Event">
105 <bpmn2:outgoing>SequenceFlow_18</bpmn2:outgoing>
107 <bpmn2:sequenceFlow id="SequenceFlow_18" sourceRef="StartEvent" targetRef="IntermediateCatchEvent" />
108 <bpmn2:intermediateCatchEvent id="IntermediateCatchEvent" name="Catch Event">
109 <bpmn2:incoming>SequenceFlow_18</bpmn2:incoming>
110 <bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>
111 <bpmn2:messageEventDefinition id="MessageEventDefinition_2" messageRef="Message_2" />
112 </bpmn2:intermediateCatchEvent>
113 <bpmn2:sequenceFlow id="SequenceFlow_16" sourceRef="IntermediateCatchEvent" targetRef="eEndEventSubprocess" />
115 <bpmn2:sequenceFlow id="SequenceFlow_9" sourceRef="SubProcess" targetRef="timeOutCheck" />
116 <bpmn2:boundaryEvent id="BoundaryEvent_1" name="Boundary Event" attachedToRef="SubProcess">
117 <bpmn2:outgoing>timeOut</bpmn2:outgoing>
118 <bpmn2:timerEventDefinition id="TimerEventDefinition_1">
119 <bpmn2:timeDuration xsi:type="bpmn2:tFormalExpression">${sdncTimeoutValue}</bpmn2:timeDuration>
120 </bpmn2:timerEventDefinition>
121 </bpmn2:boundaryEvent>
122 <bpmn2:sequenceFlow id="timeOut" name="Timed out" sourceRef="BoundaryEvent_1" targetRef="timeOutCheck" />
123 <bpmn2:scriptTask id="setTimeoutEx" name="Set Timeout
\r Exception" scriptFormat="groovy">
124 <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>
125 <bpmn2:outgoing>Error</bpmn2:outgoing>
126 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
127 ExceptionUtil exceptionUtil = new ExceptionUtil()
128 exceptionUtil.buildWorkflowException(execution, 500, "SDNC Callback Timeout Error" )
132 <bpmn2:sequenceFlow id="Error" name="Error" sourceRef="setTimeoutEx" targetRef="endEventException" />
133 <bpmn2:endEvent id="endEventException" name="Timeout Exception">
134 <bpmn2:incoming>Error</bpmn2:incoming>
136 <bpmn2:sequenceFlow id="SequenceFlow_29" name="" sourceRef="timeOutCheck" targetRef="returnWorkflowResult" />
137 <bpmn2:scriptTask id="resetCallbackRequest" name="Reset callback request and set timer value" scriptFormat="groovy">
138 <bpmn2:incoming>goodSynchronousResponse</bpmn2:incoming>
139 <bpmn2:incoming>SequenceFlow_26</bpmn2:incoming>
140 <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>
141 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
142 def sdnc= new SDNCAdapter()
143 sdnc.resetCallbackRequest(execution)]]></bpmn2:script>
145 <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="resetCallbackRequest" targetRef="SubProcess" />
146 <bpmn2:exclusiveGateway id="ExclusiveGateway_1" name="Check final indicator" default="Done">
147 <bpmn2:incoming>noTimeoutError</bpmn2:incoming>
148 <bpmn2:outgoing>Done</bpmn2:outgoing>
149 <bpmn2:outgoing>SequenceFlow_30</bpmn2:outgoing>
150 </bpmn2:exclusiveGateway>
151 <bpmn2:sequenceFlow id="Done" name="Done" sourceRef="ExclusiveGateway_1" targetRef="toggleSuccessIndicator" />
152 <bpmn2:sequenceFlow id="SequenceFlow_30" name="Not Done" sourceRef="ExclusiveGateway_1" targetRef="ParallelGateway_3">
153 <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("continueListening")==true}]]></bpmn2:conditionExpression>
154 </bpmn2:sequenceFlow>
155 <bpmn2:scriptTask id="toggleSuccessIndicator" name="Toggle Success Indicator" scriptFormat="groovy">
156 <bpmn2:incoming>Done</bpmn2:incoming>
157 <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>
158 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
159 def sdnc= new SDNCAdapter()
160 sdnc.toggleSuccessIndicator(execution)]]></bpmn2:script>
162 <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="toggleSuccessIndicator" targetRef="endEventFlow" />
163 <bpmn2:endEvent id="endEventFlow" name="End Event Flow">
164 <bpmn2:extensionElements>
166 <camunda:inputOutput>
167 <camunda:outputParameter name="sdncAdapterResponse">${sdncAdapterWorkflowResponse}</camunda:outputParameter>
168 </camunda:inputOutput>
170 </bpmn2:extensionElements>
171 <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>
172 <bpmn2:messageEventDefinition id="_MessageEventDefinition_6" />
174 <bpmn2:parallelGateway id="ParallelGateway_3">
175 <bpmn2:incoming>SequenceFlow_30</bpmn2:incoming>
176 <bpmn2:outgoing>SequenceFlow_21</bpmn2:outgoing>
177 <bpmn2:outgoing>SequenceFlow_26</bpmn2:outgoing>
178 </bpmn2:parallelGateway>
179 <bpmn2:sequenceFlow id="SequenceFlow_21" name="" sourceRef="ParallelGateway_3" targetRef="toggleSuccess" />
180 <bpmn2:sequenceFlow id="SequenceFlow_26" name="Continue listening for asynchronous message" sourceRef="ParallelGateway_3" targetRef="resetCallbackRequest" />
181 <bpmn2:subProcess id="errorHandlingSubProcess" name="Error Handling Sub Process" triggeredByEvent="true">
182 <bpmn2:startEvent id="catchErrors" name="Catch">
183 <bpmn2:outgoing>SequenceFlow_22</bpmn2:outgoing>
184 <bpmn2:errorEventDefinition id="_ErrorEventDefinition_78" errorRef="Error_3" />
186 <bpmn2:sequenceFlow id="SequenceFlow_22" name="" sourceRef="catchErrors" targetRef="assignError" />
187 <bpmn2:scriptTask id="assignError" name="Assign Error" scriptFormat="groovy">
188 <bpmn2:incoming>SequenceFlow_22</bpmn2:incoming>
189 <bpmn2:outgoing>SequenceFlow_27</bpmn2:outgoing>
190 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
191 def sdnc= new SDNCAdapter()
192 sdnc.assignError(execution)]]></bpmn2:script>
194 <bpmn2:sequenceFlow id="SequenceFlow_27" name="" sourceRef="assignError" targetRef="EndEvent_5" />
195 <bpmn2:endEvent id="EndEvent_5">
196 <bpmn2:incoming>SequenceFlow_27</bpmn2:incoming>
199 <bpmn2:scriptTask id="toggleSuccess" name="Toggle Success Indicator" scriptFormat="groovy">
200 <bpmn2:incoming>SequenceFlow_21</bpmn2:incoming>
201 <bpmn2:outgoing>SequenceFlow_15c4h5f</bpmn2:outgoing>
202 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
203 def sdnc= new SDNCAdapter()
204 sdnc.toggleSuccessIndicator(execution)]]></bpmn2:script>
206 <bpmn2:endEvent id="EndEvent_1">
207 <bpmn2:incoming>SequenceFlow_15c4h5f</bpmn2:incoming>
209 <bpmn2:sequenceFlow id="SequenceFlow_15c4h5f" sourceRef="toggleSuccess" targetRef="EndEvent_1" />
211 <bpmn2:message id="Message_1" name="sdncAdapterWorkflowRequest" />
212 <bpmn2:message id="Message_2" name="sdncAdapterCallbackRequest" />
213 <bpmn2:error id="Error_3" name="MSO Workflow Exception" errorCode="MSOWorkflowException" />
214 <bpmn2:signal id="Signal_1" name="InterimStatus" />
215 <bpmn2:error id="Error_2" name="Java Lang Exception" errorCode="java.lang.Exception" />
216 <bpmndi:BPMNDiagram id="BPMNDiagram_1">
217 <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="sdncAdapter">
218 <bpmndi:BPMNShape id="_BPMNShape_StartEvent_33" bpmnElement="SDNCAdapter_Start">
219 <dc:Bounds x="111" y="161" width="36" height="36" />
221 <dc:Bounds x="72" y="202" width="115" height="22" />
224 <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_62" bpmnElement="invokeSDNCAdapter">
225 <dc:Bounds x="342" y="139" width="100" height="80" />
227 <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_29" bpmnElement="isResponseOK" isMarkerVisible="true">
228 <dc:Bounds x="519" y="153" width="50" height="50" />
230 <dc:Bounds x="569" y="182" width="106" height="22" />
233 <bpmndi:BPMNShape id="_BPMNShape_EndEvent_64" bpmnElement="endEventFlow">
234 <dc:Bounds x="1560" y="366" width="36" height="36" />
236 <dc:Bounds x="1595" y="373" width="96" height="22" />
239 <bpmndi:BPMNShape id="_BPMNShape_EndEvent_65" bpmnElement="badResponseEndFlow">
240 <dc:Bounds x="762" y="104" width="36" height="36" />
242 <dc:Bounds x="804" y="111" width="149" height="22" />
245 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="badSynchronousResponse" sourceElement="_BPMNShape_ExclusiveGateway_29" targetElement="_BPMNShape_ScriptTask_24">
246 <di:waypoint xsi:type="dc:Point" x="544" y="153" />
247 <di:waypoint xsi:type="dc:Point" x="544" y="122" />
248 <di:waypoint xsi:type="dc:Point" x="600" y="122" />
250 <dc:Bounds x="441" y="99" width="164" height="22" />
253 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_33" targetElement="_BPMNShape_ScriptTask_3">
254 <di:waypoint xsi:type="dc:Point" x="147" y="179" />
255 <di:waypoint xsi:type="dc:Point" x="194" y="179" />
257 <dc:Bounds x="171" y="179" width="0" height="0" />
260 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="goodSynchronousResponse" sourceElement="_BPMNShape_ExclusiveGateway_29" targetElement="_BPMNShape_ScriptTask_27">
261 <di:waypoint xsi:type="dc:Point" x="544" y="203" />
262 <di:waypoint xsi:type="dc:Point" x="544" y="246" />
264 <dc:Bounds x="459" y="208" width="172" height="22" />
267 <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_68" bpmnElement="returnWorkflowResult">
268 <dc:Bounds x="1104" y="237" width="100" height="80" />
270 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_3" bpmnElement="processMessage">
271 <dc:Bounds x="194" y="139" width="100" height="80" />
273 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ScriptTask_3" targetElement="_BPMNShape_ServiceTask_62">
274 <di:waypoint xsi:type="dc:Point" x="294" y="179" />
275 <di:waypoint xsi:type="dc:Point" x="342" y="179" />
277 <dc:Bounds x="300" y="153" width="30" height="22" />
280 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ServiceTask_68" targetElement="_BPMNShape_ExclusiveGateway_53">
281 <di:waypoint xsi:type="dc:Point" x="1204" y="277" />
282 <di:waypoint xsi:type="dc:Point" x="1248" y="276" />
284 <dc:Bounds x="1211" y="251" width="37" height="22" />
287 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ServiceTask_62" targetElement="_BPMNShape_ExclusiveGateway_29">
288 <di:waypoint xsi:type="dc:Point" x="442" y="179" />
289 <di:waypoint xsi:type="dc:Point" x="480" y="179" />
290 <di:waypoint xsi:type="dc:Point" x="480" y="178" />
291 <di:waypoint xsi:type="dc:Point" x="519" y="178" />
293 <dc:Bounds x="468" y="153" width="37" height="22" />
296 <bpmndi:BPMNShape id="_BPMNShape_IntermediateCatchEvent_16" bpmnElement="IntermediateCatchEvent">
297 <dc:Bounds x="764" y="259" width="36" height="36" />
299 <dc:Bounds x="714" y="294" width="76" height="22" />
302 <bpmndi:BPMNShape id="_BPMNShape_SubProcess_11" bpmnElement="SubProcess" isExpanded="true">
303 <dc:Bounds x="624" y="228" width="314" height="97" />
305 <bpmndi:BPMNShape id="_BPMNShape_StartEvent_38" bpmnElement="StartEvent">
306 <dc:Bounds x="660" y="259" width="36" height="36" />
308 <dc:Bounds x="627" y="294" width="70" height="22" />
311 <bpmndi:BPMNShape id="_BPMNShape_EndEvent_90" bpmnElement="eEndEventSubprocess">
312 <dc:Bounds x="865" y="259" width="36" height="36" />
314 <dc:Bounds x="805" y="294" width="138" height="22" />
317 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_SubProcess_11" targetElement="_BPMNShape_ExclusiveGateway_51">
318 <di:waypoint xsi:type="dc:Point" x="938" y="276" />
319 <di:waypoint xsi:type="dc:Point" x="996" y="276" />
321 <dc:Bounds x="967" y="254" width="0" height="0" />
324 <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_21" bpmnElement="BoundaryEvent_1">
325 <dc:Bounds x="781" y="307" width="36" height="36" />
327 <dc:Bounds x="704" y="340" width="97" height="22" />
330 <bpmndi:BPMNShape id="_BPMNShape_EndEvent_91" bpmnElement="endEventException">
331 <dc:Bounds x="1488" y="74" width="36" height="36" />
333 <dc:Bounds x="1523" y="81" width="114" height="22" />
336 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="timeOut" sourceElement="_BPMNShape_BoundaryEvent_21" targetElement="_BPMNShape_ExclusiveGateway_51">
337 <di:waypoint xsi:type="dc:Point" x="799" y="343" />
338 <di:waypoint xsi:type="dc:Point" x="799" y="365" />
339 <di:waypoint xsi:type="dc:Point" x="1021" y="365" />
340 <di:waypoint xsi:type="dc:Point" x="1021" y="301" />
342 <dc:Bounds x="874" y="340" width="63" height="22" />
345 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_24" bpmnElement="setBadResponse">
346 <dc:Bounds x="600" y="82" width="100" height="80" />
348 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="Exception" sourceElement="_BPMNShape_ScriptTask_24" targetElement="_BPMNShape_EndEvent_65">
349 <di:waypoint xsi:type="dc:Point" x="700" y="122" />
350 <di:waypoint xsi:type="dc:Point" x="762" y="122" />
352 <dc:Bounds x="699" y="99" width="64" height="22" />
355 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_25" bpmnElement="setTimeoutEx">
356 <dc:Bounds x="1299" y="52" width="100" height="80" />
358 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="Error" sourceElement="_BPMNShape_ScriptTask_25" targetElement="_BPMNShape_EndEvent_91">
359 <di:waypoint xsi:type="dc:Point" x="1399" y="92" />
360 <di:waypoint xsi:type="dc:Point" x="1488" y="92" />
362 <dc:Bounds x="1416" y="70" width="34" height="22" />
365 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_16" sourceElement="_BPMNShape_IntermediateCatchEvent_16" targetElement="_BPMNShape_EndEvent_90">
366 <di:waypoint xsi:type="dc:Point" x="800" y="277" />
367 <di:waypoint xsi:type="dc:Point" x="865" y="277" />
369 <dc:Bounds x="822" y="259" width="0" height="0" />
372 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_18" bpmnElement="SequenceFlow_18" sourceElement="_BPMNShape_StartEvent_38" targetElement="_BPMNShape_IntermediateCatchEvent_16">
373 <di:waypoint xsi:type="dc:Point" x="696" y="277" />
374 <di:waypoint xsi:type="dc:Point" x="764" y="277" />
376 <dc:Bounds x="718" y="259" width="0" height="0" />
379 <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_51" bpmnElement="timeOutCheck" isMarkerVisible="true">
380 <dc:Bounds x="996" y="251" width="50" height="50" />
382 <dc:Bounds x="982" y="228" width="81" height="22" />
385 <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_53" bpmnElement="timeoutError" isMarkerVisible="true">
386 <dc:Bounds x="1248" y="251" width="50" height="50" />
388 <dc:Bounds x="1300" y="266" width="118" height="22" />
391 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="noTimeoutError" sourceElement="_BPMNShape_ExclusiveGateway_53" targetElement="_BPMNShape_ExclusiveGateway_54">
392 <di:waypoint xsi:type="dc:Point" x="1273" y="301" />
393 <di:waypoint xsi:type="dc:Point" x="1273" y="359" />
395 <dc:Bounds x="1280" y="324" width="72" height="22" />
398 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_ExclusiveGateway_53" targetElement="_BPMNShape_ScriptTask_25">
399 <di:waypoint xsi:type="dc:Point" x="1273" y="251" />
400 <di:waypoint xsi:type="dc:Point" x="1273" y="92" />
401 <di:waypoint xsi:type="dc:Point" x="1299" y="92" />
403 <dc:Bounds x="1280" y="168" width="82" height="22" />
406 <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_54" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">
407 <dc:Bounds x="1248" y="359" width="50" height="50" />
409 <dc:Bounds x="1127" y="373" width="123" height="22" />
412 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="Done" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_ScriptTask_247">
413 <di:waypoint xsi:type="dc:Point" x="1298" y="384" />
414 <di:waypoint xsi:type="dc:Point" x="1383" y="384" />
416 <dc:Bounds x="1316" y="384" width="36" height="22" />
419 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_27" bpmnElement="resetCallbackRequest">
420 <dc:Bounds x="494" y="246" width="100" height="80" />
422 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_27" targetElement="_BPMNShape_SubProcess_11">
423 <di:waypoint xsi:type="dc:Point" x="594" y="286" />
424 <di:waypoint xsi:type="dc:Point" x="609" y="286" />
425 <di:waypoint xsi:type="dc:Point" x="624" y="285" />
427 <dc:Bounds x="607" y="286" width="6" height="6" />
430 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_37" bpmnElement="SequenceFlow_29" sourceElement="_BPMNShape_ExclusiveGateway_51" targetElement="_BPMNShape_ServiceTask_68">
431 <di:waypoint xsi:type="dc:Point" x="1046" y="276" />
432 <di:waypoint xsi:type="dc:Point" x="1075" y="276" />
433 <di:waypoint xsi:type="dc:Point" x="1075" y="277" />
434 <di:waypoint xsi:type="dc:Point" x="1104" y="277" />
436 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_30" sourceElement="_BPMNShape_ExclusiveGateway_54" targetElement="_BPMNShape_ParallelGateway_14">
437 <di:waypoint xsi:type="dc:Point" x="1273" y="409" />
438 <di:waypoint xsi:type="dc:Point" x="1273" y="467" />
440 <dc:Bounds x="1273" y="423" width="60" height="22" />
443 <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_14" bpmnElement="ParallelGateway_3">
444 <dc:Bounds x="1248" y="467" width="50" height="50" />
446 <dc:Bounds x="1273" y="522" width="0" height="0" />
449 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_28" bpmnElement="SequenceFlow_21" sourceElement="_BPMNShape_ParallelGateway_14" targetElement="_BPMNShape_ScriptTask_255">
450 <di:waypoint xsi:type="dc:Point" x="1273" y="517" />
451 <di:waypoint xsi:type="dc:Point" x="1274" y="552" />
453 <dc:Bounds x="1270" y="533" width="6" height="6" />
456 <bpmndi:BPMNShape id="_BPMNShape_EndEvent_96" bpmnElement="EndEvent_1">
457 <dc:Bounds x="1255" y="677" width="36" height="36" />
459 <dc:Bounds x="1273" y="718" width="0" height="0" />
462 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_33" bpmnElement="SequenceFlow_26" sourceElement="_BPMNShape_ParallelGateway_14" targetElement="_BPMNShape_ScriptTask_27">
463 <di:waypoint xsi:type="dc:Point" x="1248" y="492" />
464 <di:waypoint xsi:type="dc:Point" x="544" y="492" />
465 <di:waypoint xsi:type="dc:Point" x="544" y="326" />
467 <dc:Bounds x="684" y="467" width="269" height="22" />
470 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_247" bpmnElement="toggleSuccessIndicator">
471 <dc:Bounds x="1383" y="344" width="100" height="80" />
473 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_26" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ScriptTask_247" targetElement="_BPMNShape_EndEvent_64">
474 <di:waypoint xsi:type="dc:Point" x="1483" y="384" />
475 <di:waypoint xsi:type="dc:Point" x="1560" y="384" />
477 <dc:Bounds x="1499" y="384" width="6" height="6" />
480 <bpmndi:BPMNShape id="_BPMNShape_SubProcess_19" bpmnElement="errorHandlingSubProcess" isExpanded="true">
481 <dc:Bounds x="248" y="866" width="353" height="193" />
483 <bpmndi:BPMNShape id="_BPMNShape_StartEvent_63" bpmnElement="catchErrors">
484 <dc:Bounds x="283" y="945" width="36" height="36" />
486 <dc:Bounds x="281" y="986" width="40" height="22" />
489 <bpmndi:BPMNShape id="_BPMNShape_EndEvent_213" bpmnElement="EndEvent_5">
490 <dc:Bounds x="523" y="945" width="36" height="36" />
492 <dc:Bounds x="541" y="986" width="0" height="0" />
495 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_249" bpmnElement="assignError">
496 <dc:Bounds x="367" y="923" width="100" height="80" />
498 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_29" bpmnElement="SequenceFlow_22" sourceElement="_BPMNShape_StartEvent_63" targetElement="_BPMNShape_ScriptTask_249">
499 <di:waypoint xsi:type="dc:Point" x="319" y="963" />
500 <di:waypoint xsi:type="dc:Point" x="367" y="963" />
502 <dc:Bounds x="346" y="963" width="6" height="6" />
505 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_34" bpmnElement="SequenceFlow_27" sourceElement="_BPMNShape_ScriptTask_249" targetElement="_BPMNShape_EndEvent_213">
506 <di:waypoint xsi:type="dc:Point" x="467" y="963" />
507 <di:waypoint xsi:type="dc:Point" x="523" y="963" />
509 <dc:Bounds x="492" y="963" width="6" height="6" />
512 <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_255" bpmnElement="toggleSuccess">
513 <dc:Bounds x="1224" y="552" width="100" height="80" />
515 <bpmndi:BPMNEdge id="SequenceFlow_15c4h5f_di" bpmnElement="SequenceFlow_15c4h5f">
516 <di:waypoint xsi:type="dc:Point" x="1274" y="632" />
517 <di:waypoint xsi:type="dc:Point" x="1273" y="677" />
519 <dc:Bounds x="1274" y="629.5" width="0" height="0" />
523 </bpmndi:BPMNDiagram>