Code changes in BPMN infra for RAN Slice Use case
[so.git] / bpmn / so-bpmn-building-blocks / src / main / resources / subprocess / BuildingBlock / ExecuteBuildingBlock.bpmn
1 <?xml version="1.0" encoding="UTF-8"?>
2 <bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="5.6.0">
3   <bpmn:process id="ExecuteBuildingBlock" name="ExecuteBuildingBlock" isExecutable="true">
4     <bpmn:startEvent id="Start_ExecuteBuildingBlock" name="start">
5       <bpmn:outgoing>SequenceFlow_0rq4c5r</bpmn:outgoing>
6     </bpmn:startEvent>
7     <bpmn:callActivity id="Call_BBToExecute" name="BB to Execute" calledElement="${flowToBeCalled}">
8       <bpmn:extensionElements>
9         <camunda:in source="gBuildingBlockExecution" target="gBuildingBlockExecution" />
10         <camunda:out source="WorkflowException" target="WorkflowException" />
11         <camunda:in source="mso-request-id" target="mso-request-id" />
12         <camunda:out source="WorkflowExceptionErrorMessage" target="WorkflowExceptionErrorMessage" />
13         <camunda:out source="StatusMessage" target="StatusMessage" />
14         <camunda:in source="isRollback" target="isRollback" />
15         <camunda:in source="isHelm" target="isHelm" />
16       </bpmn:extensionElements>
17       <bpmn:incoming>SequenceFlow_19wuics</bpmn:incoming>
18       <bpmn:outgoing>SequenceFlow_01h9qmz</bpmn:outgoing>
19     </bpmn:callActivity>
20     <bpmn:sequenceFlow id="SequenceFlow_0rq4c5r" sourceRef="Start_ExecuteBuildingBlock" targetRef="Task_BBInputSetup" />
21     <bpmn:sequenceFlow id="SequenceFlow_0uzwjrq" sourceRef="Task_BBInputSetup" targetRef="Gateway_0b4yrrl" />
22     <bpmn:serviceTask id="Task_BBInputSetup" name="BB Input Setup" camunda:expression="${BBInputSetup.execute(execution)}">
23       <bpmn:incoming>SequenceFlow_0rq4c5r</bpmn:incoming>
24       <bpmn:outgoing>SequenceFlow_0uzwjrq</bpmn:outgoing>
25     </bpmn:serviceTask>
26     <bpmn:endEvent id="End_ExecuteBuildingBlock" name="end">
27       <bpmn:incoming>SequenceFlow_16lmcxp</bpmn:incoming>
28     </bpmn:endEvent>
29     <bpmn:sequenceFlow id="SequenceFlow_01h9qmz" sourceRef="Call_BBToExecute" targetRef="Task_PostValidate" />
30     <bpmn:sequenceFlow id="Continue" name="Continue" sourceRef="CheckOrchestrationStatusValidationResults" targetRef="Task_PreValidate" />
31     <bpmn:serviceTask id="StatusPolicy" name="StatusPolicy" camunda:expression="${OrchestrationStatusValidator.validateOrchestrationStatus(InjectExecution.execute(execution, execution.getVariable(&#34;gBuildingBlockExecution&#34;)))}">
32       <bpmn:incoming>Flow_17e9fnw</bpmn:incoming>
33       <bpmn:incoming>Flow_1x0zdf6</bpmn:incoming>
34       <bpmn:outgoing>SequenceFlow_0je0y25</bpmn:outgoing>
35     </bpmn:serviceTask>
36     <bpmn:exclusiveGateway id="CheckOrchestrationStatusValidationResults" name="Check OrchestrationStatus Validation Results" default="Continue">
37       <bpmn:incoming>SequenceFlow_0je0y25</bpmn:incoming>
38       <bpmn:outgoing>Continue</bpmn:outgoing>
39       <bpmn:outgoing>SequenceFlow_1j0vskt</bpmn:outgoing>
40     </bpmn:exclusiveGateway>
41     <bpmn:sequenceFlow id="SequenceFlow_0je0y25" sourceRef="StatusPolicy" targetRef="CheckOrchestrationStatusValidationResults" />
42     <bpmn:subProcess id="SubProcess_0tv8zda" name="Error Handling&#10;&#10;" triggeredByEvent="true">
43       <bpmn:serviceTask id="Task_QueryRainyDayTable" name="QueryRainyDayTable" camunda:expression="${ExecuteBuildingBlockRainyDay.queryRainyDayTable(execution,true)}">
44         <bpmn:incoming>SequenceFlow_0vdeqxv</bpmn:incoming>
45         <bpmn:outgoing>SequenceFlow_0a62t4c</bpmn:outgoing>
46       </bpmn:serviceTask>
47       <bpmn:exclusiveGateway id="ExclusiveGateway_1aonzik" name="Check HandlingCode" default="SequenceFlow_0h8v45y">
48         <bpmn:incoming>SequenceFlow_0a62t4c</bpmn:incoming>
49         <bpmn:incoming>SequenceFlow_05le7o3</bpmn:incoming>
50         <bpmn:outgoing>SequenceFlow_0fwsjva</bpmn:outgoing>
51         <bpmn:outgoing>SequenceFlow_0h8v45y</bpmn:outgoing>
52         <bpmn:outgoing>SequenceFlow_1xh5ngw</bpmn:outgoing>
53         <bpmn:outgoing>SequenceFlow_0xyd2zl</bpmn:outgoing>
54         <bpmn:outgoing>SequenceFlow_1g7oq3t</bpmn:outgoing>
55       </bpmn:exclusiveGateway>
56       <bpmn:intermediateCatchEvent id="IntermediateCatchEvent_RetryTimer" name="RetryTimer">
57         <bpmn:incoming>SequenceFlow_0ndt8ft</bpmn:incoming>
58         <bpmn:outgoing>SequenceFlow_07a1ytc</bpmn:outgoing>
59         <bpmn:timerEventDefinition>
60           <bpmn:timeDuration xsi:type="bpmn:tFormalExpression">${execution.getVariable("RetryDuration")}</bpmn:timeDuration>
61         </bpmn:timerEventDefinition>
62       </bpmn:intermediateCatchEvent>
63       <bpmn:exclusiveGateway id="ExclusiveGateway_0ey4zpt" name="Retries Left?">
64         <bpmn:incoming>SequenceFlow_0fwsjva</bpmn:incoming>
65         <bpmn:outgoing>SequenceFlow_1wbevp0</bpmn:outgoing>
66         <bpmn:outgoing>SequenceFlow_0541bid</bpmn:outgoing>
67       </bpmn:exclusiveGateway>
68       <bpmn:serviceTask id="Task_SetRetryTimer" name="Set Retry Timer" camunda:expression="${ExecuteBuildingBlockRainyDay.setRetryTimer(execution)}">
69         <bpmn:incoming>SequenceFlow_1wbevp0</bpmn:incoming>
70         <bpmn:outgoing>SequenceFlow_0ndt8ft</bpmn:outgoing>
71       </bpmn:serviceTask>
72       <bpmn:sequenceFlow id="SequenceFlow_0a62t4c" sourceRef="Task_QueryRainyDayTable" targetRef="ExclusiveGateway_1aonzik" />
73       <bpmn:sequenceFlow id="SequenceFlow_0h8v45y" name="Rollback or Abort" sourceRef="ExclusiveGateway_1aonzik" targetRef="EndEvent_0mvmk3i" />
74       <bpmn:sequenceFlow id="SequenceFlow_0fwsjva" name="Retry" sourceRef="ExclusiveGateway_1aonzik" targetRef="ExclusiveGateway_0ey4zpt">
75         <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${execution.getVariable("handlingCode")=="Retry"}</bpmn:conditionExpression>
76       </bpmn:sequenceFlow>
77       <bpmn:sequenceFlow id="SequenceFlow_0ndt8ft" sourceRef="Task_SetRetryTimer" targetRef="IntermediateCatchEvent_RetryTimer" />
78       <bpmn:sequenceFlow id="SequenceFlow_07a1ytc" sourceRef="IntermediateCatchEvent_RetryTimer" targetRef="EndEvent_1sez2lh" />
79       <bpmn:sequenceFlow id="SequenceFlow_1wbevp0" name="yes" sourceRef="ExclusiveGateway_0ey4zpt" targetRef="Task_SetRetryTimer">
80         <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${execution.getVariable("retryCount")&lt;execution.getVariable("maxRetries")}</bpmn:conditionExpression>
81       </bpmn:sequenceFlow>
82       <bpmn:endEvent id="EndEvent_0mvmk3i">
83         <bpmn:incoming>SequenceFlow_0h8v45y</bpmn:incoming>
84       </bpmn:endEvent>
85       <bpmn:endEvent id="EndEvent_1sez2lh" name="end">
86         <bpmn:incoming>SequenceFlow_07a1ytc</bpmn:incoming>
87         <bpmn:terminateEventDefinition />
88       </bpmn:endEvent>
89       <bpmn:sequenceFlow id="SequenceFlow_0541bid" name="no" sourceRef="ExclusiveGateway_0ey4zpt" targetRef="Task_QuerySecondaryPolicy" />
90       <bpmn:sequenceFlow id="SequenceFlow_12ps9at" sourceRef="Task_QuerySecondaryPolicy" targetRef="EndEvent_0ex9298" />
91       <bpmn:endEvent id="EndEvent_0ex9298" name="end">
92         <bpmn:incoming>SequenceFlow_12ps9at</bpmn:incoming>
93       </bpmn:endEvent>
94       <bpmn:serviceTask id="Task_QuerySecondaryPolicy" name="Query Secondary Policy" camunda:expression="${ExecuteBuildingBlockRainyDay.queryRainyDayTable(execution,false)}">
95         <bpmn:incoming>SequenceFlow_0541bid</bpmn:incoming>
96         <bpmn:incoming>SequenceFlow_1g7oq3t</bpmn:incoming>
97         <bpmn:outgoing>SequenceFlow_12ps9at</bpmn:outgoing>
98       </bpmn:serviceTask>
99       <bpmn:sequenceFlow id="SequenceFlow_0vdeqxv" sourceRef="Task_UpdateExtErrorSource" targetRef="Task_QueryRainyDayTable" />
100       <bpmn:sequenceFlow id="SequenceFlow_09synl9" sourceRef="StartEvent_0tmcs9g" targetRef="Task_UpdateExtErrorSource" />
101       <bpmn:startEvent id="StartEvent_0tmcs9g">
102         <bpmn:outgoing>SequenceFlow_09synl9</bpmn:outgoing>
103         <bpmn:errorEventDefinition camunda:errorCodeVariable="WorkflowExceptionCode" camunda:errorMessageVariable="WorkflowExceptionMessage" />
104       </bpmn:startEvent>
105       <bpmn:serviceTask id="Task_UpdateExtErrorSource" name="Update ExtErrorSource" camunda:expression="${ExecuteBuildingBlockRainyDay.updateExtSystemErrorSource(execution)}">
106         <bpmn:incoming>SequenceFlow_09synl9</bpmn:incoming>
107         <bpmn:outgoing>SequenceFlow_0vdeqxv</bpmn:outgoing>
108       </bpmn:serviceTask>
109       <bpmn:sequenceFlow id="SequenceFlow_05le7o3" sourceRef="PauseForManualTaskRainyDay" targetRef="ExclusiveGateway_1aonzik" />
110       <bpmn:sequenceFlow id="SequenceFlow_1xh5ngw" name="Manual" sourceRef="ExclusiveGateway_1aonzik" targetRef="PauseForManualTaskRainyDay">
111         <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${execution.getVariable("handlingCode")=="Manual"}</bpmn:conditionExpression>
112       </bpmn:sequenceFlow>
113       <bpmn:sequenceFlow id="SequenceFlow_0xyd2zl" name="Skip" sourceRef="ExclusiveGateway_1aonzik" targetRef="Task_setHandlingCodeSuccessOnSkip">
114         <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${execution.getVariable("handlingCode")=="Skip"}</bpmn:conditionExpression>
115       </bpmn:sequenceFlow>
116       <bpmn:serviceTask id="Task_setHandlingCodeSuccessOnSkip" name="Set Handling Code to Success" camunda:expression="${ExecuteBuildingBlockRainyDay.setHandlingStatusSuccess(execution)}">
117         <bpmn:incoming>SequenceFlow_0xyd2zl</bpmn:incoming>
118         <bpmn:outgoing>SequenceFlow_1ynai9j</bpmn:outgoing>
119       </bpmn:serviceTask>
120       <bpmn:callActivity id="PauseForManualTaskRainyDay" name="Pause for Manual Task Rainy Day" calledElement="PauseForManualTaskRainyDay">
121         <bpmn:extensionElements>
122           <camunda:out source="responseValueTask" target="handlingCode" />
123           <camunda:in source="gBuildingBlockExecution" target="gBuildingBlockExecution" />
124           <camunda:in source="rainyDayServiceType" target="rainyDayServiceType" />
125           <camunda:in source="rainyDayVnfType" target="rainyDayVnfType" />
126           <camunda:in source="WorkflowException" target="WorkflowException" />
127           <camunda:in source="rainyDayVnfName" target="rainyDayVnfName" />
128         </bpmn:extensionElements>
129         <bpmn:incoming>SequenceFlow_1xh5ngw</bpmn:incoming>
130         <bpmn:outgoing>SequenceFlow_05le7o3</bpmn:outgoing>
131       </bpmn:callActivity>
132       <bpmn:endEvent id="EndEvent_1py1er4" name="end">
133         <bpmn:incoming>SequenceFlow_1ynai9j</bpmn:incoming>
134       </bpmn:endEvent>
135       <bpmn:sequenceFlow id="SequenceFlow_1ynai9j" sourceRef="Task_setHandlingCodeSuccessOnSkip" targetRef="EndEvent_1py1er4" />
136       <bpmn:sequenceFlow id="SequenceFlow_1g7oq3t" name="Timeout" sourceRef="ExclusiveGateway_1aonzik" targetRef="Task_QuerySecondaryPolicy">
137         <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${execution.getVariable("handlingCode")=="Timeout"}</bpmn:conditionExpression>
138       </bpmn:sequenceFlow>
139     </bpmn:subProcess>
140     <bpmn:sequenceFlow id="SequenceFlow_16lmcxp" sourceRef="Task_setHandlingCodeSuccess" targetRef="End_ExecuteBuildingBlock" />
141     <bpmn:sequenceFlow id="SequenceFlow_1j0vskt" name="Silent Success" sourceRef="CheckOrchestrationStatusValidationResults" targetRef="Task_setHandlingCodeSuccess">
142       <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${execution.getVariable("orchestrationStatusValidationResult").name() ==  "SILENT_SUCCESS"}</bpmn:conditionExpression>
143     </bpmn:sequenceFlow>
144     <bpmn:serviceTask id="Task_setHandlingCodeSuccess" name="Set Handling Code To Success" camunda:expression="${ExecuteBuildingBlockRainyDay.setHandlingStatusSuccess(execution)}">
145       <bpmn:incoming>SequenceFlow_1j0vskt</bpmn:incoming>
146       <bpmn:incoming>SequenceFlow_12a4hhf</bpmn:incoming>
147       <bpmn:outgoing>SequenceFlow_16lmcxp</bpmn:outgoing>
148     </bpmn:serviceTask>
149     <bpmn:sequenceFlow id="SequenceFlow_19wuics" sourceRef="Task_PreValidate" targetRef="Call_BBToExecute" />
150     <bpmn:sequenceFlow id="SequenceFlow_12a4hhf" sourceRef="Task_PostValidate" targetRef="Task_setHandlingCodeSuccess" />
151     <bpmn:serviceTask id="Task_PreValidate" name="PreValidate" camunda:expression="${BuildingBlockValidatorRunner.preValidate(execution.getVariable(&#34;flowToBeCalled&#34;), InjectExecution.execute(execution, execution.getVariable(&#34;gBuildingBlockExecution&#34;)))}">
152       <bpmn:incoming>Continue</bpmn:incoming>
153       <bpmn:outgoing>SequenceFlow_19wuics</bpmn:outgoing>
154     </bpmn:serviceTask>
155     <bpmn:serviceTask id="Task_PostValidate" name="PostValidate" camunda:expression="${BuildingBlockValidatorRunner.postValidate(execution.getVariable(&#34;flowToBeCalled&#34;), InjectExecution.execute(execution, execution.getVariable(&#34;gBuildingBlockExecution&#34;)))}">
156       <bpmn:incoming>SequenceFlow_01h9qmz</bpmn:incoming>
157       <bpmn:outgoing>SequenceFlow_12a4hhf</bpmn:outgoing>
158     </bpmn:serviceTask>
159     <bpmn:exclusiveGateway id="Gateway_0b4yrrl" default="Flow_17e9fnw">
160       <bpmn:incoming>SequenceFlow_0uzwjrq</bpmn:incoming>
161       <bpmn:outgoing>Flow_17e9fnw</bpmn:outgoing>
162       <bpmn:outgoing>Flow_0o7fpuq</bpmn:outgoing>
163     </bpmn:exclusiveGateway>
164     <bpmn:sequenceFlow id="Flow_17e9fnw" sourceRef="Gateway_0b4yrrl" targetRef="StatusPolicy" />
165     <bpmn:callActivity id="Call_ExecuteBB" name="EnrichGBB" camunda:asyncBefore="true" calledElement="EnrichGBB">
166       <bpmn:extensionElements>
167         <camunda:in source="buildingBlock" target="buildingBlock" />
168         <camunda:out source="buildingBlock" target="buildingBlock" />
169         <camunda:out source="handlingCode" target="handlingCode" />
170         <camunda:in source="mso-request-id" target="mso-request-id" />
171         <camunda:in source="retryCount" target="retryCount" />
172         <camunda:out source="WorkflowExceptionErrorMessage" target="WorkflowExceptionErrorMessage" />
173         <camunda:in source="aLaCarte" target="aLaCarte" />
174         <camunda:in source="orchestrationStatusValidationResult" target="orchestrationStatusValidationResult" />
175         <camunda:out source="orchestrationStatusValidationResult" target="orchestrationStatusValidationResult" />
176         <camunda:out source="RetryDuration" target="RetryDuration" />
177         <camunda:in source="suppressRollback" target="suppressRollback" />
178         <camunda:out source="StatusMessage" target="StatusMessage" />
179         <camunda:in source="isRollback" target="isRollback" />
180         <camunda:in source="rollbackTargetState" target="rollbackTargetState" />
181         <camunda:out source="rollbackTargetState" target="rollbackTargetState" />
182         <camunda:in source="gBuildingBlockExecution" target="gBuildingBlockExecution" />
183         <camunda:out source="gBuildingBlockExecution" target="gBuildingBlockExecution" />
184         <camunda:in source="gBBInput" target="gBBInput" />
185         <camunda:out source="gBBInput" target="gBBInput" />
186       </bpmn:extensionElements>
187       <bpmn:incoming>Flow_0o7fpuq</bpmn:incoming>
188       <bpmn:outgoing>Flow_1x0zdf6</bpmn:outgoing>
189     </bpmn:callActivity>
190     <bpmn:sequenceFlow id="Flow_0o7fpuq" name="isHoming" sourceRef="Gateway_0b4yrrl" targetRef="Call_ExecuteBB">
191       <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">${execution.getVariable("homing")}</bpmn:conditionExpression>
192     </bpmn:sequenceFlow>
193     <bpmn:sequenceFlow id="Flow_1x0zdf6" sourceRef="Call_ExecuteBB" targetRef="StatusPolicy" />
194   </bpmn:process>
195   <bpmn:error id="Error_0tnktdw" name="Error" errorCode="java.lang.Exception" />
196   <bpmn:error id="Error_17zcdbk" name="Bpmn Error" />
197   <bpmn:error id="Error_123q3fr" name="Error_1h13m8l" />
198   <bpmn:error id="Error_1ivyybb" name="Error_1e4p3cf" />
199   <bpmn:error id="Error_1c60d7i" name="Error_0qrs661" />
200   <bpmn:error id="Error_1owi18u" name="Error_2eiqdl7" />
201   <bpmn:error id="Error_0snha16" />
202   <bpmndi:BPMNDiagram id="BPMNDiagram_1">
203     <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="ExecuteBuildingBlock">
204       <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="Start_ExecuteBuildingBlock">
205         <dc:Bounds x="122" y="252" width="36" height="36" />
206         <bpmndi:BPMNLabel>
207           <dc:Bounds x="131" y="288" width="22" height="14" />
208         </bpmndi:BPMNLabel>
209       </bpmndi:BPMNShape>
210       <bpmndi:BPMNShape id="CallActivity_0n67obl_di" bpmnElement="Call_BBToExecute">
211         <dc:Bounds x="860" y="230" width="100" height="80" />
212       </bpmndi:BPMNShape>
213       <bpmndi:BPMNShape id="EndEvent_0ahsxzi_di" bpmnElement="End_ExecuteBuildingBlock">
214         <dc:Bounds x="1332" y="252" width="36" height="36" />
215         <bpmndi:BPMNLabel>
216           <dc:Bounds x="1341" y="292" width="19" height="14" />
217         </bpmndi:BPMNLabel>
218       </bpmndi:BPMNShape>
219       <bpmndi:BPMNShape id="ServiceTask_0brnbqx_di" bpmnElement="StatusPolicy">
220         <dc:Bounds x="450" y="230" width="100" height="80" />
221       </bpmndi:BPMNShape>
222       <bpmndi:BPMNShape id="ExclusiveGateway_0f8ghh3_di" bpmnElement="CheckOrchestrationStatusValidationResults" isMarkerVisible="true">
223         <dc:Bounds x="575" y="245" width="50" height="50" />
224         <bpmndi:BPMNLabel>
225           <dc:Bounds x="560" y="299" width="86" height="53" />
226         </bpmndi:BPMNLabel>
227       </bpmndi:BPMNShape>
228       <bpmndi:BPMNShape id="ServiceTask_1jcuk3b_di" bpmnElement="Task_BBInputSetup">
229         <dc:Bounds x="162" y="230" width="100" height="80" />
230       </bpmndi:BPMNShape>
231       <bpmndi:BPMNShape id="SubProcess_0tv8zda_di" bpmnElement="SubProcess_0tv8zda" isExpanded="true">
232         <dc:Bounds x="240" y="470" width="1020" height="432" />
233       </bpmndi:BPMNShape>
234       <bpmndi:BPMNShape id="ServiceTask_1tifgqh_di" bpmnElement="Task_QueryRainyDayTable">
235         <dc:Bounds x="468" y="634" width="100" height="80" />
236       </bpmndi:BPMNShape>
237       <bpmndi:BPMNShape id="ExclusiveGateway_1aonzik_di" bpmnElement="ExclusiveGateway_1aonzik" isMarkerVisible="true">
238         <dc:Bounds x="611" y="649" width="50" height="50" />
239         <bpmndi:BPMNLabel>
240           <dc:Bounds x="601" y="611" width="70" height="27" />
241         </bpmndi:BPMNLabel>
242       </bpmndi:BPMNShape>
243       <bpmndi:BPMNShape id="IntermediateCatchEvent_0qjyidb_di" bpmnElement="IntermediateCatchEvent_RetryTimer">
244         <dc:Bounds x="1008" y="656" width="36" height="36" />
245         <bpmndi:BPMNLabel>
246           <dc:Bounds x="1000" y="631" width="55" height="14" />
247         </bpmndi:BPMNLabel>
248       </bpmndi:BPMNShape>
249       <bpmndi:BPMNShape id="ExclusiveGateway_0ey4zpt_di" bpmnElement="ExclusiveGateway_0ey4zpt" isMarkerVisible="true">
250         <dc:Bounds x="764" y="649" width="50" height="50" />
251         <bpmndi:BPMNLabel>
252           <dc:Bounds x="760" y="624" width="63" height="14" />
253         </bpmndi:BPMNLabel>
254       </bpmndi:BPMNShape>
255       <bpmndi:BPMNShape id="ServiceTask_1obvxht_di" bpmnElement="Task_SetRetryTimer">
256         <dc:Bounds x="879" y="634" width="100" height="80" />
257       </bpmndi:BPMNShape>
258       <bpmndi:BPMNShape id="EndEvent_0mvmk3i_di" bpmnElement="EndEvent_0mvmk3i">
259         <dc:Bounds x="618" y="755" width="36" height="36" />
260         <bpmndi:BPMNLabel>
261           <dc:Bounds x="567" y="624" width="0" height="0" />
262         </bpmndi:BPMNLabel>
263       </bpmndi:BPMNShape>
264       <bpmndi:BPMNShape id="EndEvent_1aww7yx_di" bpmnElement="EndEvent_1sez2lh">
265         <dc:Bounds x="1082" y="656" width="36" height="36" />
266         <bpmndi:BPMNLabel>
267           <dc:Bounds x="1093" y="696" width="19" height="14" />
268         </bpmndi:BPMNLabel>
269       </bpmndi:BPMNShape>
270       <bpmndi:BPMNShape id="EndEvent_05vw85n_di" bpmnElement="EndEvent_0ex9298">
271         <dc:Bounds x="911" y="745" width="36" height="36" />
272         <bpmndi:BPMNLabel>
273           <dc:Bounds x="921" y="785" width="19" height="14" />
274         </bpmndi:BPMNLabel>
275       </bpmndi:BPMNShape>
276       <bpmndi:BPMNShape id="ServiceTask_11f2c91_di" bpmnElement="Task_QuerySecondaryPolicy">
277         <dc:Bounds x="739" y="723" width="100" height="80" />
278       </bpmndi:BPMNShape>
279       <bpmndi:BPMNShape id="StartEvent_0tmcs9g_di" bpmnElement="StartEvent_0tmcs9g">
280         <dc:Bounds x="268" y="656" width="36" height="36" />
281         <bpmndi:BPMNLabel>
282           <dc:Bounds x="127" y="521" width="0" height="0" />
283         </bpmndi:BPMNLabel>
284       </bpmndi:BPMNShape>
285       <bpmndi:BPMNShape id="ServiceTask_10v49qn_di" bpmnElement="Task_UpdateExtErrorSource">
286         <dc:Bounds x="333" y="634" width="100" height="80" />
287       </bpmndi:BPMNShape>
288       <bpmndi:BPMNShape id="ServiceTask_0ohzi8e_di" bpmnElement="Task_setHandlingCodeSuccessOnSkip">
289         <dc:Bounds x="468" y="760" width="100" height="80" />
290       </bpmndi:BPMNShape>
291       <bpmndi:BPMNShape id="CallActivity_0szwp51_di" bpmnElement="PauseForManualTaskRainyDay">
292         <dc:Bounds x="586" y="508" width="100" height="80" />
293       </bpmndi:BPMNShape>
294       <bpmndi:BPMNShape id="EndEvent_1py1er4_di" bpmnElement="EndEvent_1py1er4">
295         <dc:Bounds x="373" y="782" width="36" height="36" />
296         <bpmndi:BPMNLabel>
297           <dc:Bounds x="382" y="818" width="19" height="14" />
298         </bpmndi:BPMNLabel>
299       </bpmndi:BPMNShape>
300       <bpmndi:BPMNEdge id="SequenceFlow_0a62t4c_di" bpmnElement="SequenceFlow_0a62t4c">
301         <di:waypoint x="568" y="674" />
302         <di:waypoint x="611" y="674" />
303         <bpmndi:BPMNLabel>
304           <dc:Bounds x="521" y="482" width="0" height="0" />
305         </bpmndi:BPMNLabel>
306       </bpmndi:BPMNEdge>
307       <bpmndi:BPMNEdge id="SequenceFlow_0h8v45y_di" bpmnElement="SequenceFlow_0h8v45y">
308         <di:waypoint x="636" y="699" />
309         <di:waypoint x="636" y="755" />
310         <bpmndi:BPMNLabel>
311           <dc:Bounds x="644" y="720" width="84" height="14" />
312         </bpmndi:BPMNLabel>
313       </bpmndi:BPMNEdge>
314       <bpmndi:BPMNEdge id="SequenceFlow_0fwsjva_di" bpmnElement="SequenceFlow_0fwsjva">
315         <di:waypoint x="661" y="674" />
316         <di:waypoint x="764" y="674" />
317         <bpmndi:BPMNLabel>
318           <dc:Bounds x="699" y="682" width="27" height="14" />
319         </bpmndi:BPMNLabel>
320       </bpmndi:BPMNEdge>
321       <bpmndi:BPMNEdge id="SequenceFlow_0ndt8ft_di" bpmnElement="SequenceFlow_0ndt8ft">
322         <di:waypoint x="979" y="674" />
323         <di:waypoint x="1008" y="674" />
324         <bpmndi:BPMNLabel>
325           <dc:Bounds x="925" y="482" width="0" height="0" />
326         </bpmndi:BPMNLabel>
327       </bpmndi:BPMNEdge>
328       <bpmndi:BPMNEdge id="SequenceFlow_07a1ytc_di" bpmnElement="SequenceFlow_07a1ytc">
329         <di:waypoint x="1044" y="674" />
330         <di:waypoint x="1082" y="674" />
331         <bpmndi:BPMNLabel>
332           <dc:Bounds x="994" y="482" width="0" height="0" />
333         </bpmndi:BPMNLabel>
334       </bpmndi:BPMNEdge>
335       <bpmndi:BPMNEdge id="SequenceFlow_1wbevp0_di" bpmnElement="SequenceFlow_1wbevp0">
336         <di:waypoint x="814" y="674" />
337         <di:waypoint x="879" y="674" />
338         <bpmndi:BPMNLabel>
339           <dc:Bounds x="833" y="649" width="18" height="14" />
340         </bpmndi:BPMNLabel>
341       </bpmndi:BPMNEdge>
342       <bpmndi:BPMNEdge id="SequenceFlow_0541bid_di" bpmnElement="SequenceFlow_0541bid">
343         <di:waypoint x="789" y="699" />
344         <di:waypoint x="789" y="723" />
345         <bpmndi:BPMNLabel>
346           <dc:Bounds x="801" y="700" width="13" height="14" />
347         </bpmndi:BPMNLabel>
348       </bpmndi:BPMNEdge>
349       <bpmndi:BPMNEdge id="SequenceFlow_12ps9at_di" bpmnElement="SequenceFlow_12ps9at">
350         <di:waypoint x="839" y="763" />
351         <di:waypoint x="911" y="763" />
352         <bpmndi:BPMNLabel>
353           <dc:Bounds x="806" y="571" width="0" height="0" />
354         </bpmndi:BPMNLabel>
355       </bpmndi:BPMNEdge>
356       <bpmndi:BPMNEdge id="SequenceFlow_0vdeqxv_di" bpmnElement="SequenceFlow_0vdeqxv">
357         <di:waypoint x="433" y="674" />
358         <di:waypoint x="468" y="674" />
359         <bpmndi:BPMNLabel>
360           <dc:Bounds x="382" y="482" width="0" height="0" />
361         </bpmndi:BPMNLabel>
362       </bpmndi:BPMNEdge>
363       <bpmndi:BPMNEdge id="SequenceFlow_09synl9_di" bpmnElement="SequenceFlow_09synl9">
364         <di:waypoint x="304" y="674" />
365         <di:waypoint x="333" y="674" />
366         <bpmndi:BPMNLabel>
367           <dc:Bounds x="250" y="482" width="0" height="0" />
368         </bpmndi:BPMNLabel>
369       </bpmndi:BPMNEdge>
370       <bpmndi:BPMNEdge id="SequenceFlow_05le7o3_di" bpmnElement="SequenceFlow_05le7o3">
371         <di:waypoint x="686" y="548" />
372         <di:waypoint x="728" y="548" />
373         <di:waypoint x="728" y="592" />
374         <di:waypoint x="649" y="662" />
375         <bpmndi:BPMNLabel>
376           <dc:Bounds x="674" y="399" width="0" height="0" />
377         </bpmndi:BPMNLabel>
378       </bpmndi:BPMNEdge>
379       <bpmndi:BPMNEdge id="SequenceFlow_1xh5ngw_di" bpmnElement="SequenceFlow_1xh5ngw">
380         <di:waypoint x="622" y="663" />
381         <di:waypoint x="531" y="594" />
382         <di:waypoint x="531" y="548" />
383         <di:waypoint x="586" y="548" />
384         <bpmndi:BPMNLabel>
385           <dc:Bounds x="536" y="571" width="37" height="14" />
386         </bpmndi:BPMNLabel>
387       </bpmndi:BPMNEdge>
388       <bpmndi:BPMNEdge id="SequenceFlow_0xyd2zl_di" bpmnElement="SequenceFlow_0xyd2zl">
389         <di:waypoint x="622" y="685" />
390         <di:waypoint x="518" y="760" />
391         <bpmndi:BPMNLabel>
392           <dc:Bounds x="575" y="720" width="22" height="14" />
393         </bpmndi:BPMNLabel>
394       </bpmndi:BPMNEdge>
395       <bpmndi:BPMNEdge id="SequenceFlow_1ynai9j_di" bpmnElement="SequenceFlow_1ynai9j">
396         <di:waypoint x="468" y="800" />
397         <di:waypoint x="409" y="800" />
398         <bpmndi:BPMNLabel>
399           <dc:Bounds x="370" y="604" width="0" height="0" />
400         </bpmndi:BPMNLabel>
401       </bpmndi:BPMNEdge>
402       <bpmndi:BPMNEdge id="SequenceFlow_1g7oq3t_di" bpmnElement="SequenceFlow_1g7oq3t">
403         <di:waypoint x="652" y="683" />
404         <di:waypoint x="739" y="733" />
405         <bpmndi:BPMNLabel>
406           <dc:Bounds x="718" y="704" width="40" height="14" />
407         </bpmndi:BPMNLabel>
408       </bpmndi:BPMNEdge>
409       <bpmndi:BPMNShape id="ServiceTask_0z9izx5_di" bpmnElement="Task_setHandlingCodeSuccess">
410         <dc:Bounds x="1180" y="230" width="100" height="80" />
411       </bpmndi:BPMNShape>
412       <bpmndi:BPMNShape id="ServiceTask_1pf5f6w_di" bpmnElement="Task_PreValidate">
413         <dc:Bounds x="720" y="230" width="100" height="80" />
414       </bpmndi:BPMNShape>
415       <bpmndi:BPMNShape id="ServiceTask_02w4792_di" bpmnElement="Task_PostValidate">
416         <dc:Bounds x="1010" y="230" width="100" height="80" />
417       </bpmndi:BPMNShape>
418       <bpmndi:BPMNShape id="Gateway_0b4yrrl_di" bpmnElement="Gateway_0b4yrrl" isMarkerVisible="true">
419         <dc:Bounds x="325" y="245" width="50" height="50" />
420       </bpmndi:BPMNShape>
421       <bpmndi:BPMNShape id="CallActivity_03m7z4y_di" bpmnElement="Call_ExecuteBB">
422         <dc:Bounds x="450" y="80" width="100" height="80" />
423         <bpmndi:BPMNLabel />
424       </bpmndi:BPMNShape>
425       <bpmndi:BPMNEdge id="SequenceFlow_0rq4c5r_di" bpmnElement="SequenceFlow_0rq4c5r">
426         <di:waypoint x="140" y="252" />
427         <di:waypoint x="140" y="210" />
428         <di:waypoint x="212" y="210" />
429         <di:waypoint x="212" y="230" />
430         <bpmndi:BPMNLabel>
431           <dc:Bounds x="120.5" y="165" width="90" height="0" />
432         </bpmndi:BPMNLabel>
433       </bpmndi:BPMNEdge>
434       <bpmndi:BPMNEdge id="SequenceFlow_0uzwjrq_di" bpmnElement="SequenceFlow_0uzwjrq">
435         <di:waypoint x="262" y="270" />
436         <di:waypoint x="325" y="270" />
437         <bpmndi:BPMNLabel>
438           <dc:Bounds x="257.5" y="165" width="90" height="0" />
439         </bpmndi:BPMNLabel>
440       </bpmndi:BPMNEdge>
441       <bpmndi:BPMNEdge id="SequenceFlow_01h9qmz_di" bpmnElement="SequenceFlow_01h9qmz">
442         <di:waypoint x="960" y="270" />
443         <di:waypoint x="1010" y="270" />
444         <bpmndi:BPMNLabel>
445           <dc:Bounds x="832.5" y="159" width="90" height="12" />
446         </bpmndi:BPMNLabel>
447       </bpmndi:BPMNEdge>
448       <bpmndi:BPMNEdge id="SequenceFlow_0kdjsnx_di" bpmnElement="Continue">
449         <di:waypoint x="625" y="270" />
450         <di:waypoint x="720" y="270" />
451         <bpmndi:BPMNLabel>
452           <dc:Bounds x="652" y="249" width="45" height="14" />
453         </bpmndi:BPMNLabel>
454       </bpmndi:BPMNEdge>
455       <bpmndi:BPMNEdge id="SequenceFlow_0je0y25_di" bpmnElement="SequenceFlow_0je0y25">
456         <di:waypoint x="550" y="270" />
457         <di:waypoint x="575" y="270" />
458         <bpmndi:BPMNLabel>
459           <dc:Bounds x="394.5" y="159" width="90" height="12" />
460         </bpmndi:BPMNLabel>
461       </bpmndi:BPMNEdge>
462       <bpmndi:BPMNEdge id="SequenceFlow_16lmcxp_di" bpmnElement="SequenceFlow_16lmcxp">
463         <di:waypoint x="1280" y="270" />
464         <di:waypoint x="1332" y="270" />
465         <bpmndi:BPMNLabel>
466           <dc:Bounds x="1147" y="159" width="90" height="12" />
467         </bpmndi:BPMNLabel>
468       </bpmndi:BPMNEdge>
469       <bpmndi:BPMNEdge id="SequenceFlow_1j0vskt_di" bpmnElement="SequenceFlow_1j0vskt">
470         <di:waypoint x="600" y="245" />
471         <di:waypoint x="600" y="174" />
472         <di:waypoint x="1230" y="174" />
473         <di:waypoint x="1230" y="230" />
474         <bpmndi:BPMNLabel>
475           <dc:Bounds x="881" y="153" width="73" height="14" />
476         </bpmndi:BPMNLabel>
477       </bpmndi:BPMNEdge>
478       <bpmndi:BPMNEdge id="SequenceFlow_19wuics_di" bpmnElement="SequenceFlow_19wuics">
479         <di:waypoint x="820" y="270" />
480         <di:waypoint x="860" y="270" />
481         <bpmndi:BPMNLabel>
482           <dc:Bounds x="670.5" y="159" width="90" height="12" />
483         </bpmndi:BPMNLabel>
484       </bpmndi:BPMNEdge>
485       <bpmndi:BPMNEdge id="SequenceFlow_12a4hhf_di" bpmnElement="SequenceFlow_12a4hhf">
486         <di:waypoint x="1110" y="270" />
487         <di:waypoint x="1180" y="270" />
488         <bpmndi:BPMNLabel>
489           <dc:Bounds x="989.5" y="159" width="90" height="12" />
490         </bpmndi:BPMNLabel>
491       </bpmndi:BPMNEdge>
492       <bpmndi:BPMNEdge id="Flow_17e9fnw_di" bpmnElement="Flow_17e9fnw">
493         <di:waypoint x="375" y="270" />
494         <di:waypoint x="450" y="270" />
495       </bpmndi:BPMNEdge>
496       <bpmndi:BPMNEdge id="Flow_0o7fpuq_di" bpmnElement="Flow_0o7fpuq">
497         <di:waypoint x="350" y="245" />
498         <di:waypoint x="350" y="120" />
499         <di:waypoint x="450" y="120" />
500         <bpmndi:BPMNLabel>
501           <dc:Bounds x="292" y="167" width="47" height="14" />
502         </bpmndi:BPMNLabel>
503       </bpmndi:BPMNEdge>
504       <bpmndi:BPMNEdge id="Flow_1x0zdf6_di" bpmnElement="Flow_1x0zdf6">
505         <di:waypoint x="500" y="160" />
506         <di:waypoint x="500" y="230" />
507       </bpmndi:BPMNEdge>
508     </bpmndi:BPMNPlane>
509   </bpmndi:BPMNDiagram>
510 </bpmn:definitions>