Update Logging
[so.git] / bpmn / MSOCommonBPMN / src / main / resources / subprocess / FalloutHandler.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="_3SPHsLr9EeWak-hhutJWuQ" targetNamespace="http://camunda.org/schema/1.0/bpmn" exporter="Camunda Modeler" exporterVersion="1.7.1" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
3   <bpmn2:process id="FalloutHandler" name="Fallout Handler" isExecutable="true">
4     <bpmn2:parallelGateway id="ParallelGateway_1">
5       <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>
6       <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>
7       <bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>
8     </bpmn2:parallelGateway>
9     <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="ParallelGateway_1" targetRef="ExclusiveGateway_1" />
10     <bpmn2:sequenceFlow id="SequenceFlow_24" name="" sourceRef="ParallelGateway_1" targetRef="ExclusiveGateway_6" />
11     <bpmn2:exclusiveGateway id="ExclusiveGateway_1" name="Notification URL exists?" default="SequenceFlow_23">
12       <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>
13       <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>
14       <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>
15     </bpmn2:exclusiveGateway>
16     <bpmn2:sequenceFlow id="SequenceFlow_3" name="yes" sourceRef="ExclusiveGateway_1" targetRef="Task_0ixuwt5">
17       <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("FH_notification-url-Ok") ==true}]]></bpmn2:conditionExpression>
18     </bpmn2:sequenceFlow>
19     <bpmn2:sequenceFlow id="SequenceFlow_23" name="no" sourceRef="ExclusiveGateway_1" targetRef="ParallelGateway_4" />
20     <bpmn2:scriptTask id="ScriptTask_8" name="Pre-Process Request" scriptFormat="groovy">
21       <bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>
22       <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>
23       <bpmn2:script><![CDATA[import org.onap.so.bpmn.common.scripts.*
24 def preProcessRequestData = new FalloutHandler()
25 preProcessRequestData.preProcessRequest(execution)
26
27 ]]></bpmn2:script>
28     </bpmn2:scriptTask>
29     <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="ScriptTask_8" targetRef="ParallelGateway_1" />
30     <bpmn2:startEvent id="StartEvent_1" name="Start">
31       <bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>
32     </bpmn2:startEvent>
33     <bpmn2:sequenceFlow id="SequenceFlow_10" name="" sourceRef="StartEvent_1" targetRef="ScriptTask_8" />
34     <bpmn2:parallelGateway id="ParallelGateway_6">
35       <bpmn2:incoming>SequenceFlow_37</bpmn2:incoming>
36       <bpmn2:incoming>SequenceFlow_38</bpmn2:incoming>
37       <bpmn2:outgoing>SequenceFlow_8</bpmn2:outgoing>
38     </bpmn2:parallelGateway>
39     <bpmn2:sequenceFlow id="SequenceFlow_8" name="" sourceRef="ParallelGateway_6" targetRef="ScriptTask_2" />
40     <bpmn2:scriptTask id="ScriptTask_2" name="Post Process Response" scriptFormat="groovy">
41       <bpmn2:incoming>SequenceFlow_8</bpmn2:incoming>
42       <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>
43       <bpmn2:script><![CDATA[import org.onap.so.bpmn.common.scripts.*
44 def falloutHandler = new FalloutHandler()
45 falloutHandler.postProcessResponse(execution)]]></bpmn2:script>
46     </bpmn2:scriptTask>
47     <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="ScriptTask_2" targetRef="EndEvent_6" />
48     <bpmn2:exclusiveGateway id="ParallelGateway_4">
49       <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>
50       <bpmn2:incoming>SequenceFlow_0m7gwor</bpmn2:incoming>
51       <bpmn2:outgoing>SequenceFlow_38</bpmn2:outgoing>
52     </bpmn2:exclusiveGateway>
53     <bpmn2:sequenceFlow id="SequenceFlow_38" name="" sourceRef="ParallelGateway_4" targetRef="ParallelGateway_6" />
54     <bpmn2:exclusiveGateway id="ExclusiveGateway_6" default="SequenceFlow_26">
55       <bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>
56       <bpmn2:outgoing>SequenceFlow_25</bpmn2:outgoing>
57       <bpmn2:outgoing>SequenceFlow_26</bpmn2:outgoing>
58     </bpmn2:exclusiveGateway>
59     <bpmn2:sequenceFlow id="SequenceFlow_25" name="" sourceRef="ExclusiveGateway_6" targetRef="ServiceTask_3">
60       <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("FH_request_id-Ok") ==true}]]></bpmn2:conditionExpression>
61     </bpmn2:sequenceFlow>
62     <bpmn2:sequenceFlow id="SequenceFlow_26" name="" sourceRef="ExclusiveGateway_6" targetRef="ServiceTask_2" />
63     <bpmn2:serviceTask id="ServiceTask_3" name="Update Request Gamma">
64       <bpmn2:extensionElements>
65         <camunda:connector>
66           <camunda:inputOutput>
67             <camunda:inputParameter name="url"><![CDATA[${UrnPropertiesReader.getVariable("mso.adapters.db.att-endpoint", execution)}]]></camunda:inputParameter>
68             <camunda:inputParameter name="method">POST</camunda:inputParameter>
69             <camunda:inputParameter name="headers">
70               <camunda:map>
71                 <camunda:entry key="content-type">application/soap+xml</camunda:entry>
72                 <camunda:entry key="Authorization">#{BasicAuthHeaderValueDB}</camunda:entry>
73               </camunda:map>
74             </camunda:inputParameter>
75             <camunda:inputParameter name="payload">
76               <camunda:script scriptFormat="groovy"><![CDATA[//println"INSIDE --> update Request Gamma"
77 import org.onap.so.bpmn.common.scripts.*
78 def updateRequestGamma= new FalloutHandler()
79 return updateRequestGamma.updateRequestGammaPayload(execution)]]></camunda:script>
80             </camunda:inputParameter>
81             <camunda:outputParameter name="FH_updateRequestGammaResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>
82             <camunda:outputParameter name="FH_updateRequestGammaResponseCode">${statusCode}</camunda:outputParameter>
83           </camunda:inputOutput>
84           <camunda:connectorId>soap-http-connector</camunda:connectorId>
85         </camunda:connector>
86       </bpmn2:extensionElements>
87       <bpmn2:incoming>SequenceFlow_25</bpmn2:incoming>
88       <bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>
89     </bpmn2:serviceTask>
90     <bpmn2:sequenceFlow id="SequenceFlow_29" name="" sourceRef="ServiceTask_3" targetRef="ExclusiveGateway_7" />
91     <bpmn2:boundaryEvent id="BoundaryEvent_2" name="Connect Fault" attachedToRef="ServiceTask_3">
92       <bpmn2:outgoing>SequenceFlow_72</bpmn2:outgoing>
93       <bpmn2:errorEventDefinition id="_ErrorEventDefinition_89" errorRef="Error_2" />
94     </bpmn2:boundaryEvent>
95     <bpmn2:exclusiveGateway id="ParallelGateway_5">
96       <bpmn2:incoming>SequenceFlow_35</bpmn2:incoming>
97       <bpmn2:incoming>SequenceFlow_36</bpmn2:incoming>
98       <bpmn2:outgoing>SequenceFlow_37</bpmn2:outgoing>
99     </bpmn2:exclusiveGateway>
100     <bpmn2:sequenceFlow id="SequenceFlow_37" name="" sourceRef="ParallelGateway_5" targetRef="ParallelGateway_6" />
101     <bpmn2:endEvent id="EndEvent_6" name="Normal End">
102       <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>
103     </bpmn2:endEvent>
104     <bpmn2:sequenceFlow id="SequenceFlow_72" name="" sourceRef="BoundaryEvent_2" targetRef="ScriptTask_6" />
105     <bpmn2:scriptTask id="ScriptTask_6" name="Build Workflow Exception" scriptFormat="groovy">
106       <bpmn2:incoming>SequenceFlow_72</bpmn2:incoming>
107       <bpmn2:incoming>SequenceFlow_31</bpmn2:incoming>
108       <bpmn2:outgoing>SequenceFlow_79</bpmn2:outgoing>
109       <bpmn2:script><![CDATA[import org.onap.so.bpmn.common.scripts.*
110 def falloutHandler = new FalloutHandler()
111 falloutHandler.buildDBWorkflowException(execution, "FH_updateRequestGammaResponseCode")]]></bpmn2:script>
112     </bpmn2:scriptTask>
113     <bpmn2:sequenceFlow id="SequenceFlow_79" name="" sourceRef="ScriptTask_6" targetRef="EndEvent_13" />
114     <bpmn2:exclusiveGateway id="ExclusiveGateway_7" name="Update Success?" default="SequenceFlow_31">
115       <bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>
116       <bpmn2:outgoing>SequenceFlow_31</bpmn2:outgoing>
117       <bpmn2:outgoing>SequenceFlow_35</bpmn2:outgoing>
118     </bpmn2:exclusiveGateway>
119     <bpmn2:sequenceFlow id="SequenceFlow_31" name="" sourceRef="ExclusiveGateway_7" targetRef="ScriptTask_6" />
120     <bpmn2:sequenceFlow id="SequenceFlow_35" name="" sourceRef="ExclusiveGateway_7" targetRef="ParallelGateway_5">
121       <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("FH_updateRequestGammaResponseCode")==200}]]></bpmn2:conditionExpression>
122     </bpmn2:sequenceFlow>
123     <bpmn2:scriptTask id="ScriptTask_7" name="Build Workflow Exception" scriptFormat="groovy">
124       <bpmn2:incoming>SequenceFlow_32</bpmn2:incoming>
125       <bpmn2:incoming>SequenceFlow_80</bpmn2:incoming>
126       <bpmn2:outgoing>SequenceFlow_73</bpmn2:outgoing>
127       <bpmn2:script><![CDATA[import org.onap.so.bpmn.common.scripts.*
128 def falloutHandler = new FalloutHandler()
129 falloutHandler.buildDBWorkflowException(execution, "FH_updateRequestInfraResponseCode")]]></bpmn2:script>
130     </bpmn2:scriptTask>
131     <bpmn2:sequenceFlow id="SequenceFlow_73" name="" sourceRef="ScriptTask_7" targetRef="EndEvent_14" />
132     <bpmn2:serviceTask id="ServiceTask_2" name="Update Request Infra">
133       <bpmn2:extensionElements>
134         <camunda:connector>
135           <camunda:inputOutput>
136             <camunda:inputParameter name="url"><![CDATA[${UrnPropertiesReader.getVariable("mso.adapters.openecomp.db.endpoint", execution)}]]></camunda:inputParameter>
137             <camunda:inputParameter name="method">POST</camunda:inputParameter>
138             <camunda:inputParameter name="headers">
139               <camunda:map>
140                 <camunda:entry key="content-type">application/soap+xml</camunda:entry>
141                 <camunda:entry key="Authorization">#{BasicAuthHeaderValueDB}</camunda:entry>
142                 <camunda:entry key="X-ONAP-RequestID">#{FH_request_id}</camunda:entry>
143               </camunda:map>
144             </camunda:inputParameter>
145             <camunda:inputParameter name="payload">
146               <camunda:script scriptFormat="groovy"><![CDATA[//println"INSIDE --> update Request Infra"
147 import org.onap.so.bpmn.common.scripts.*
148 def updateRequestInfra= new FalloutHandler()
149 return updateRequestInfra.updateRequestInfraPayload(execution)]]></camunda:script>
150             </camunda:inputParameter>
151             <camunda:outputParameter name="FH_updateRequestInfraResponse"><![CDATA[${statusCode == null || statusCode == 204 ? "" : response}]]></camunda:outputParameter>
152             <camunda:outputParameter name="FH_updateRequestInfraResponseCode">${statusCode}</camunda:outputParameter>
153           </camunda:inputOutput>
154           <camunda:connectorId>soap-http-connector</camunda:connectorId>
155         </camunda:connector>
156       </bpmn2:extensionElements>
157       <bpmn2:incoming>SequenceFlow_26</bpmn2:incoming>
158       <bpmn2:outgoing>SequenceFlow_30</bpmn2:outgoing>
159     </bpmn2:serviceTask>
160     <bpmn2:sequenceFlow id="SequenceFlow_30" name="" sourceRef="ServiceTask_2" targetRef="ExclusiveGateway_8" />
161     <bpmn2:exclusiveGateway id="ExclusiveGateway_8" name="Update Success?" default="SequenceFlow_32">
162       <bpmn2:incoming>SequenceFlow_30</bpmn2:incoming>
163       <bpmn2:outgoing>SequenceFlow_32</bpmn2:outgoing>
164       <bpmn2:outgoing>SequenceFlow_36</bpmn2:outgoing>
165     </bpmn2:exclusiveGateway>
166     <bpmn2:sequenceFlow id="SequenceFlow_32" name="" sourceRef="ExclusiveGateway_8" targetRef="ScriptTask_7" />
167     <bpmn2:sequenceFlow id="SequenceFlow_36" name="" sourceRef="ExclusiveGateway_8" targetRef="ParallelGateway_5">
168       <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("FH_updateRequestInfraResponseCode")==200}]]></bpmn2:conditionExpression>
169     </bpmn2:sequenceFlow>
170     <bpmn2:boundaryEvent id="BoundaryEvent_3" name="Connect Fault" attachedToRef="ServiceTask_2">
171       <bpmn2:outgoing>SequenceFlow_80</bpmn2:outgoing>
172       <bpmn2:errorEventDefinition id="_ErrorEventDefinition_90" errorRef="Error_2" camunda:errorCodeVariable="gJavaErrorCode" camunda:errorMessageVariable="gJavaErrorMessage" />
173     </bpmn2:boundaryEvent>
174     <bpmn2:sequenceFlow id="SequenceFlow_80" name="" sourceRef="BoundaryEvent_3" targetRef="ScriptTask_7" />
175     <bpmn2:subProcess id="SubProcess_1" name="Event Handler" triggeredByEvent="true">
176       <bpmn2:scriptTask id="ScriptTask_4" name="Handle Event" scriptFormat="groovy">
177         <bpmn2:incoming>SequenceFlow_1ko8ggw</bpmn2:incoming>
178         <bpmn2:outgoing>SequenceFlow_1pm9r7h</bpmn2:outgoing>
179         <bpmn2:script><![CDATA[import org.onap.so.bpmn.common.scripts.*
180 execution.setVariable("FH_success", false)
181 def falloutHandler = new FalloutHandler()
182
183 // This does not (and cannot) throw exceptions
184 falloutHandler.postProcessResponse(execution)
185
186 // Clear any WorkflowException object that might be in the execution, but keep a copy in FH_WorkflowException
187 def wfe = execution.getVariable("WorkflowException")
188 execution.setVariable("WorkflowException", null)
189 execution.setVariable("FH_WorkflowException", wfe)]]></bpmn2:script>
190       </bpmn2:scriptTask>
191       <bpmn2:startEvent id="StartEvent_2">
192         <bpmn2:outgoing>SequenceFlow_1ko8ggw</bpmn2:outgoing>
193         <bpmn2:errorEventDefinition id="ErrorEventDefinition_8" />
194       </bpmn2:startEvent>
195       <bpmn2:endEvent id="EndEvent_2" name="Error End">
196         <bpmn2:incoming>SequenceFlow_1pm9r7h</bpmn2:incoming>
197         <bpmn2:terminateEventDefinition />
198       </bpmn2:endEvent>
199       <bpmn2:sequenceFlow id="SequenceFlow_1ko8ggw" sourceRef="StartEvent_2" targetRef="ScriptTask_4" />
200       <bpmn2:sequenceFlow id="SequenceFlow_1pm9r7h" sourceRef="ScriptTask_4" targetRef="EndEvent_2" />
201     </bpmn2:subProcess>
202     <bpmn2:endEvent id="EndEvent_14">
203       <bpmn2:incoming>SequenceFlow_73</bpmn2:incoming>
204       <bpmn2:terminateEventDefinition />
205     </bpmn2:endEvent>
206     <bpmn2:endEvent id="EndEvent_13">
207       <bpmn2:incoming>SequenceFlow_79</bpmn2:incoming>
208       <bpmn2:terminateEventDefinition />
209     </bpmn2:endEvent>
210     <bpmn2:sequenceFlow id="SequenceFlow_0m7gwor" sourceRef="Task_0ixuwt5" targetRef="ParallelGateway_4" />
211     <bpmn2:callActivity id="Task_0ixuwt5" name="Call Notification Service" calledElement="${UrnPropertiesReader.getVariable(&#34;mso.workflow.notification.name&#34;, execution)}">
212       <bpmn2:extensionElements>
213         <camunda:in source="mso-request-id" target="mso-request-id" />
214         <camunda:in source="mso-service-instance-id" target="mso-service-instance-id" />
215         <camunda:in variables="all" />
216         <camunda:out variables="all" />
217       </bpmn2:extensionElements>
218       <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>
219       <bpmn2:outgoing>SequenceFlow_0m7gwor</bpmn2:outgoing>
220     </bpmn2:callActivity>
221   </bpmn2:process>
222   <bpmn2:error id="Error_1" name="MSOWorkflowException" errorCode="MSOWorkflowException" />
223   <bpmn2:error id="Error_2" name="Java Lang Exception" errorCode="java.lang.Exception" />
224   <bpmndi:BPMNDiagram id="BPMNDiagram_1">
225     <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="FalloutHandler">
226       <bpmndi:BPMNShape id="_BPMNShape_StartEvent_52" bpmnElement="StartEvent_1">
227         <dc:Bounds x="139" y="263" width="36" height="36" />
228         <bpmndi:BPMNLabel>
229           <dc:Bounds x="145" y="300" width="23" height="12" />
230         </bpmndi:BPMNLabel>
231       </bpmndi:BPMNShape>
232       <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_12" bpmnElement="ParallelGateway_1">
233         <dc:Bounds x="342" y="255" width="50" height="50" />
234         <bpmndi:BPMNLabel>
235           <dc:Bounds x="367" y="310" width="0" height="0" />
236         </bpmndi:BPMNLabel>
237       </bpmndi:BPMNShape>
238       <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_74" bpmnElement="ExclusiveGateway_1" isMarkerVisible="true">
239         <dc:Bounds x="415" y="107" width="50" height="50" />
240         <bpmndi:BPMNLabel>
241           <dc:Bounds x="315" y="89" width="81" height="24" />
242         </bpmndi:BPMNLabel>
243       </bpmndi:BPMNShape>
244       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ParallelGateway_12" targetElement="_BPMNShape_ExclusiveGateway_74">
245         <di:waypoint xsi:type="dc:Point" x="367" y="255" />
246         <di:waypoint xsi:type="dc:Point" x="367" y="132" />
247         <di:waypoint xsi:type="dc:Point" x="415" y="132" />
248         <bpmndi:BPMNLabel>
249           <dc:Bounds x="438" y="212" width="0" height="0" />
250         </bpmndi:BPMNLabel>
251       </bpmndi:BPMNEdge>
252       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ExclusiveGateway_74" targetElement="CallActivity_0jz0w0k_di">
253         <di:waypoint xsi:type="dc:Point" x="440" y="107" />
254         <di:waypoint xsi:type="dc:Point" x="440" y="65" />
255         <di:waypoint xsi:type="dc:Point" x="553" y="65" />
256         <bpmndi:BPMNLabel>
257           <dc:Bounds x="475" y="70" width="18" height="12" />
258         </bpmndi:BPMNLabel>
259       </bpmndi:BPMNEdge>
260       <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_15" bpmnElement="ParallelGateway_4" isMarkerVisible="true">
261         <dc:Bounds x="742" y="107" width="50" height="50" />
262         <bpmndi:BPMNLabel>
263           <dc:Bounds x="767" y="162" width="0" height="0" />
264         </bpmndi:BPMNLabel>
265       </bpmndi:BPMNShape>
266       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ExclusiveGateway_74" targetElement="_BPMNShape_ParallelGateway_15">
267         <di:waypoint xsi:type="dc:Point" x="440" y="157" />
268         <di:waypoint xsi:type="dc:Point" x="441" y="198" />
269         <di:waypoint xsi:type="dc:Point" x="767" y="198" />
270         <di:waypoint xsi:type="dc:Point" x="767" y="157" />
271         <bpmndi:BPMNLabel>
272           <dc:Bounds x="452" y="173" width="12" height="12" />
273         </bpmndi:BPMNLabel>
274       </bpmndi:BPMNEdge>
275       <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_79" bpmnElement="ExclusiveGateway_6" isMarkerVisible="true">
276         <dc:Bounds x="412" y="468" width="50" height="50" />
277         <bpmndi:BPMNLabel>
278           <dc:Bounds x="437" y="523" width="0" height="0" />
279         </bpmndi:BPMNLabel>
280       </bpmndi:BPMNShape>
281       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_24" sourceElement="_BPMNShape_ParallelGateway_12" targetElement="_BPMNShape_ExclusiveGateway_79">
282         <di:waypoint xsi:type="dc:Point" x="367" y="305" />
283         <di:waypoint xsi:type="dc:Point" x="367" y="493" />
284         <di:waypoint xsi:type="dc:Point" x="412" y="493" />
285         <bpmndi:BPMNLabel>
286           <dc:Bounds x="415" y="445" width="0" height="0" />
287         </bpmndi:BPMNLabel>
288       </bpmndi:BPMNEdge>
289       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_25" sourceElement="_BPMNShape_ExclusiveGateway_79" targetElement="_BPMNShape_ServiceTask_90">
290         <di:waypoint xsi:type="dc:Point" x="437" y="468" />
291         <di:waypoint xsi:type="dc:Point" x="437" y="402" />
292         <di:waypoint xsi:type="dc:Point" x="492" y="402" />
293         <bpmndi:BPMNLabel>
294           <dc:Bounds x="437" y="444" width="0" height="0" />
295         </bpmndi:BPMNLabel>
296       </bpmndi:BPMNEdge>
297       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_26" bpmnElement="SequenceFlow_26" sourceElement="_BPMNShape_ExclusiveGateway_79" targetElement="_BPMNShape_ServiceTask_91">
298         <di:waypoint xsi:type="dc:Point" x="437" y="518" />
299         <di:waypoint xsi:type="dc:Point" x="437" y="650" />
300         <di:waypoint xsi:type="dc:Point" x="488" y="650" />
301         <bpmndi:BPMNLabel>
302           <dc:Bounds x="437" y="596" width="0" height="0" />
303         </bpmndi:BPMNLabel>
304       </bpmndi:BPMNEdge>
305       <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_90" bpmnElement="ServiceTask_3">
306         <dc:Bounds x="492" y="362" width="100" height="80" />
307       </bpmndi:BPMNShape>
308       <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_91" bpmnElement="ServiceTask_2">
309         <dc:Bounds x="488" y="610" width="100" height="80" />
310       </bpmndi:BPMNShape>
311       <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_80" bpmnElement="ExclusiveGateway_7" isMarkerVisible="true">
312         <dc:Bounds x="675" y="376" width="50" height="50" />
313         <bpmndi:BPMNLabel>
314           <dc:Bounds x="657" y="431" width="87" height="12" />
315         </bpmndi:BPMNLabel>
316       </bpmndi:BPMNShape>
317       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_29" bpmnElement="SequenceFlow_29" sourceElement="_BPMNShape_ServiceTask_90" targetElement="_BPMNShape_ExclusiveGateway_80">
318         <di:waypoint xsi:type="dc:Point" x="592" y="402" />
319         <di:waypoint xsi:type="dc:Point" x="675" y="401" />
320         <bpmndi:BPMNLabel>
321           <dc:Bounds x="632" y="404" width="0" height="0" />
322         </bpmndi:BPMNLabel>
323       </bpmndi:BPMNEdge>
324       <bpmndi:BPMNShape id="_BPMNShape_ExclusiveGateway_81" bpmnElement="ExclusiveGateway_8" isMarkerVisible="true">
325         <dc:Bounds x="674" y="625" width="50" height="50" />
326         <bpmndi:BPMNLabel>
327           <dc:Bounds x="656" y="680" width="87" height="12" />
328         </bpmndi:BPMNLabel>
329       </bpmndi:BPMNShape>
330       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_30" bpmnElement="SequenceFlow_30" sourceElement="_BPMNShape_ServiceTask_91" targetElement="_BPMNShape_ExclusiveGateway_81">
331         <di:waypoint xsi:type="dc:Point" x="588" y="650" />
332         <di:waypoint xsi:type="dc:Point" x="626" y="650" />
333         <di:waypoint xsi:type="dc:Point" x="626" y="649" />
334         <di:waypoint xsi:type="dc:Point" x="674" y="650" />
335         <bpmndi:BPMNLabel>
336           <dc:Bounds x="636" y="651" width="0" height="0" />
337         </bpmndi:BPMNLabel>
338       </bpmndi:BPMNEdge>
339       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_31" bpmnElement="SequenceFlow_31" sourceElement="_BPMNShape_ExclusiveGateway_80" targetElement="_BPMNShape_ScriptTask_252">
340         <di:waypoint xsi:type="dc:Point" x="700" y="376" />
341         <di:waypoint xsi:type="dc:Point" x="701" y="324" />
342         <bpmndi:BPMNLabel>
343           <dc:Bounds x="707" y="351" width="0" height="0" />
344         </bpmndi:BPMNLabel>
345       </bpmndi:BPMNEdge>
346       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_32" bpmnElement="SequenceFlow_32" sourceElement="_BPMNShape_ExclusiveGateway_81" targetElement="_BPMNShape_ScriptTask_253">
347         <di:waypoint xsi:type="dc:Point" x="699" y="625" />
348         <di:waypoint xsi:type="dc:Point" x="699" y="608" />
349         <di:waypoint xsi:type="dc:Point" x="699" y="577" />
350         <bpmndi:BPMNLabel>
351           <dc:Bounds x="709" y="657" width="0" height="0" />
352         </bpmndi:BPMNLabel>
353       </bpmndi:BPMNEdge>
354       <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_16" bpmnElement="ParallelGateway_5" isMarkerVisible="true">
355         <dc:Bounds x="853" y="468" width="50" height="50" />
356         <bpmndi:BPMNLabel>
357           <dc:Bounds x="878" y="523" width="0" height="0" />
358         </bpmndi:BPMNLabel>
359       </bpmndi:BPMNShape>
360       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_35" bpmnElement="SequenceFlow_35" sourceElement="_BPMNShape_ExclusiveGateway_80" targetElement="_BPMNShape_ParallelGateway_16">
361         <di:waypoint xsi:type="dc:Point" x="725" y="401" />
362         <di:waypoint xsi:type="dc:Point" x="878" y="401" />
363         <di:waypoint xsi:type="dc:Point" x="878" y="468" />
364         <bpmndi:BPMNLabel>
365           <dc:Bounds x="762" y="392" width="0" height="0" />
366         </bpmndi:BPMNLabel>
367       </bpmndi:BPMNEdge>
368       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_36" bpmnElement="SequenceFlow_36" sourceElement="_BPMNShape_ExclusiveGateway_81" targetElement="_BPMNShape_ParallelGateway_16">
369         <di:waypoint xsi:type="dc:Point" x="724" y="650" />
370         <di:waypoint xsi:type="dc:Point" x="878" y="650" />
371         <di:waypoint xsi:type="dc:Point" x="878" y="518" />
372         <bpmndi:BPMNLabel>
373           <dc:Bounds x="878" y="574" width="0" height="0" />
374         </bpmndi:BPMNLabel>
375       </bpmndi:BPMNEdge>
376       <bpmndi:BPMNShape id="_BPMNShape_ParallelGateway_17" bpmnElement="ParallelGateway_6">
377         <dc:Bounds x="957" y="254" width="50" height="50" />
378         <bpmndi:BPMNLabel>
379           <dc:Bounds x="982" y="309" width="0" height="0" />
380         </bpmndi:BPMNLabel>
381       </bpmndi:BPMNShape>
382       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_37" bpmnElement="SequenceFlow_37" sourceElement="_BPMNShape_ParallelGateway_16" targetElement="_BPMNShape_ParallelGateway_17">
383         <di:waypoint xsi:type="dc:Point" x="903" y="493" />
384         <di:waypoint xsi:type="dc:Point" x="982" y="493" />
385         <di:waypoint xsi:type="dc:Point" x="982" y="304" />
386         <bpmndi:BPMNLabel>
387           <dc:Bounds x="943" y="478" width="0" height="0" />
388         </bpmndi:BPMNLabel>
389       </bpmndi:BPMNEdge>
390       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_38" bpmnElement="SequenceFlow_38" sourceElement="_BPMNShape_ParallelGateway_15" targetElement="_BPMNShape_ParallelGateway_17">
391         <di:waypoint xsi:type="dc:Point" x="792" y="132" />
392         <di:waypoint xsi:type="dc:Point" x="982" y="132" />
393         <di:waypoint xsi:type="dc:Point" x="982" y="254" />
394         <bpmndi:BPMNLabel>
395           <dc:Bounds x="887" y="117" width="0" height="0" />
396         </bpmndi:BPMNLabel>
397       </bpmndi:BPMNEdge>
398       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_10" bpmnElement="SequenceFlow_10" sourceElement="_BPMNShape_StartEvent_52" targetElement="_BPMNShape_ScriptTask_99">
399         <di:waypoint xsi:type="dc:Point" x="175" y="281" />
400         <di:waypoint xsi:type="dc:Point" x="211" y="281" />
401         <bpmndi:BPMNLabel>
402           <dc:Bounds x="193" y="281" width="0" height="0" />
403         </bpmndi:BPMNLabel>
404       </bpmndi:BPMNEdge>
405       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_99" bpmnElement="ScriptTask_8">
406         <dc:Bounds x="211" y="241" width="100" height="80" />
407       </bpmndi:BPMNShape>
408       <bpmndi:BPMNShape id="_BPMNShape_SubProcess_14" bpmnElement="SubProcess_1" isExpanded="true">
409         <dc:Bounds x="146" y="759" width="329" height="167" />
410       </bpmndi:BPMNShape>
411       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_100" bpmnElement="ScriptTask_4">
412         <dc:Bounds x="259" y="803" width="100" height="80" />
413       </bpmndi:BPMNShape>
414       <bpmndi:BPMNShape id="_BPMNShape_StartEvent_54" bpmnElement="StartEvent_2">
415         <dc:Bounds x="175" y="825" width="36" height="36" />
416         <bpmndi:BPMNLabel>
417           <dc:Bounds x="193" y="869" width="0" height="0" />
418         </bpmndi:BPMNLabel>
419       </bpmndi:BPMNShape>
420       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_101" bpmnElement="ScriptTask_2">
421         <dc:Bounds x="1054" y="240" width="100" height="80" />
422       </bpmndi:BPMNShape>
423       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_8" bpmnElement="SequenceFlow_8" sourceElement="_BPMNShape_ParallelGateway_17" targetElement="_BPMNShape_ScriptTask_101">
424         <di:waypoint xsi:type="dc:Point" x="1007" y="279" />
425         <di:waypoint xsi:type="dc:Point" x="1054" y="280" />
426         <bpmndi:BPMNLabel>
427           <dc:Bounds x="1177" y="280" width="0" height="0" />
428         </bpmndi:BPMNLabel>
429       </bpmndi:BPMNEdge>
430       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_ScriptTask_99" targetElement="_BPMNShape_ParallelGateway_12">
431         <di:waypoint xsi:type="dc:Point" x="311" y="281" />
432         <di:waypoint xsi:type="dc:Point" x="342" y="280" />
433         <bpmndi:BPMNLabel>
434           <dc:Bounds x="327" y="281" width="0" height="0" />
435         </bpmndi:BPMNLabel>
436       </bpmndi:BPMNEdge>
437       <bpmndi:BPMNShape id="_BPMNShape_EndEvent_129" bpmnElement="EndEvent_6">
438         <dc:Bounds x="1188" y="262" width="36" height="36" />
439         <bpmndi:BPMNLabel>
440           <dc:Bounds x="1177" y="303" width="57" height="12" />
441         </bpmndi:BPMNLabel>
442       </bpmndi:BPMNShape>
443       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_101" targetElement="_BPMNShape_EndEvent_129">
444         <di:waypoint xsi:type="dc:Point" x="1154" y="280" />
445         <di:waypoint xsi:type="dc:Point" x="1188" y="280" />
446         <bpmndi:BPMNLabel>
447           <dc:Bounds x="1171" y="280" width="0" height="0" />
448         </bpmndi:BPMNLabel>
449       </bpmndi:BPMNEdge>
450       <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_31" bpmnElement="BoundaryEvent_2">
451         <dc:Bounds x="525" y="344" width="36" height="36" />
452         <bpmndi:BPMNLabel>
453           <dc:Bounds x="563" y="300" width="68" height="12" />
454         </bpmndi:BPMNLabel>
455       </bpmndi:BPMNShape>
456       <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_32" bpmnElement="BoundaryEvent_3">
457         <dc:Bounds x="521" y="592" width="36" height="36" />
458         <bpmndi:BPMNLabel>
459           <dc:Bounds x="563" y="554" width="68" height="12" />
460         </bpmndi:BPMNLabel>
461       </bpmndi:BPMNShape>
462       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_72" bpmnElement="SequenceFlow_72" sourceElement="_BPMNShape_BoundaryEvent_31" targetElement="_BPMNShape_ScriptTask_252">
463         <di:waypoint xsi:type="dc:Point" x="543" y="344" />
464         <di:waypoint xsi:type="dc:Point" x="543" y="284" />
465         <di:waypoint xsi:type="dc:Point" x="651" y="284" />
466         <bpmndi:BPMNLabel>
467           <dc:Bounds x="543" y="326" width="0" height="0" />
468         </bpmndi:BPMNLabel>
469       </bpmndi:BPMNEdge>
470       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_73" bpmnElement="SequenceFlow_73" sourceElement="_BPMNShape_ScriptTask_253">
471         <di:waypoint xsi:type="dc:Point" x="750" y="537" />
472         <di:waypoint xsi:type="dc:Point" x="790" y="537" />
473         <bpmndi:BPMNLabel>
474           <dc:Bounds x="770" y="522" width="0" height="0" />
475         </bpmndi:BPMNLabel>
476       </bpmndi:BPMNEdge>
477       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_252" bpmnElement="ScriptTask_6">
478         <dc:Bounds x="651" y="244" width="100" height="80" />
479       </bpmndi:BPMNShape>
480       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_253" bpmnElement="ScriptTask_7">
481         <dc:Bounds x="650" y="497" width="100" height="80" />
482       </bpmndi:BPMNShape>
483       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_79" bpmnElement="SequenceFlow_79" sourceElement="_BPMNShape_ScriptTask_252">
484         <di:waypoint xsi:type="dc:Point" x="751" y="284" />
485         <di:waypoint xsi:type="dc:Point" x="793" y="284" />
486         <bpmndi:BPMNLabel>
487           <dc:Bounds x="772" y="269" width="0" height="0" />
488         </bpmndi:BPMNLabel>
489       </bpmndi:BPMNEdge>
490       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_80" bpmnElement="SequenceFlow_80" sourceElement="_BPMNShape_BoundaryEvent_32" targetElement="_BPMNShape_ScriptTask_253">
491         <di:waypoint xsi:type="dc:Point" x="539" y="592" />
492         <di:waypoint xsi:type="dc:Point" x="539" y="537" />
493         <di:waypoint xsi:type="dc:Point" x="650" y="537" />
494         <bpmndi:BPMNLabel>
495           <dc:Bounds x="567" y="537" width="0" height="0" />
496         </bpmndi:BPMNLabel>
497       </bpmndi:BPMNEdge>
498       <bpmndi:BPMNShape id="EndEvent_0b9vn2u_di" bpmnElement="EndEvent_2">
499         <dc:Bounds x="403" y="825" width="36" height="36" />
500         <bpmndi:BPMNLabel>
501           <dc:Bounds x="399" y="869" width="47" height="12" />
502         </bpmndi:BPMNLabel>
503       </bpmndi:BPMNShape>
504       <bpmndi:BPMNShape id="EndEvent_1fmpj5u_di" bpmnElement="EndEvent_14">
505         <dc:Bounds x="790" y="519" width="36" height="36" />
506         <bpmndi:BPMNLabel>
507           <dc:Bounds x="808" y="560" width="0" height="0" />
508         </bpmndi:BPMNLabel>
509       </bpmndi:BPMNShape>
510       <bpmndi:BPMNShape id="EndEvent_0w1puhf_di" bpmnElement="EndEvent_13">
511         <dc:Bounds x="793" y="266" width="36" height="36" />
512         <bpmndi:BPMNLabel>
513           <dc:Bounds x="811" y="307" width="0" height="0" />
514         </bpmndi:BPMNLabel>
515       </bpmndi:BPMNShape>
516       <bpmndi:BPMNEdge id="SequenceFlow_0m7gwor_di" bpmnElement="SequenceFlow_0m7gwor">
517         <di:waypoint xsi:type="dc:Point" x="654" y="65" />
518         <di:waypoint xsi:type="dc:Point" x="767" y="65" />
519         <di:waypoint xsi:type="dc:Point" x="767" y="107" />
520         <bpmndi:BPMNLabel>
521           <dc:Bounds x="711" y="50" width="0" height="0" />
522         </bpmndi:BPMNLabel>
523       </bpmndi:BPMNEdge>
524       <bpmndi:BPMNEdge id="SequenceFlow_1ko8ggw_di" bpmnElement="SequenceFlow_1ko8ggw">
525         <di:waypoint xsi:type="dc:Point" x="211" y="843" />
526         <di:waypoint xsi:type="dc:Point" x="259" y="843" />
527         <bpmndi:BPMNLabel>
528           <dc:Bounds x="235" y="818" width="0" height="0" />
529         </bpmndi:BPMNLabel>
530       </bpmndi:BPMNEdge>
531       <bpmndi:BPMNEdge id="SequenceFlow_1pm9r7h_di" bpmnElement="SequenceFlow_1pm9r7h">
532         <di:waypoint xsi:type="dc:Point" x="359" y="843" />
533         <di:waypoint xsi:type="dc:Point" x="403" y="843" />
534         <bpmndi:BPMNLabel>
535           <dc:Bounds x="381" y="818" width="0" height="0" />
536         </bpmndi:BPMNLabel>
537       </bpmndi:BPMNEdge>
538       <bpmndi:BPMNShape id="CallActivity_0jz0w0k_di" bpmnElement="Task_0ixuwt5">
539         <dc:Bounds x="554" y="25" width="100" height="80" />
540       </bpmndi:BPMNShape>
541     </bpmndi:BPMNPlane>
542   </bpmndi:BPMNDiagram>
543 </bpmn2:definitions>