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:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" id="_vwRmIBsREeeIQtzUKIjH4g" 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="Homing" name="Homing" isExecutable="true">
4 <bpmn2:startEvent id="StartEvent_1">
5 <bpmn2:outgoing>SequenceFlow_1x9usa6</bpmn2:outgoing>
7 <bpmn2:scriptTask id="callSniro" name="Call Sniro" scriptFormat="groovy">
8 <bpmn2:incoming>SequenceFlow_1x9usa6</bpmn2:incoming>
9 <bpmn2:outgoing>SequenceFlow_10x3ocp</bpmn2:outgoing>
10 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
11 Homing sniro = new Homing()
12 sniro.callSniro(execution)]]></bpmn2:script>
14 <bpmn2:sequenceFlow id="SequenceFlow_1x9usa6" sourceRef="StartEvent_1" targetRef="callSniro" />
15 <bpmn2:subProcess id="bpmnErrorSubprocess" name="Error Handling Subprocess" triggeredByEvent="true">
16 <bpmn2:endEvent id="EndEvent_07tjq3v">
17 <bpmn2:incoming>SequenceFlow_1rf4vs8</bpmn2:incoming>
18 <bpmn2:terminateEventDefinition />
20 <bpmn2:startEvent id="StartEvent_1qiitb2">
21 <bpmn2:outgoing>SequenceFlow_00nlh7l</bpmn2:outgoing>
22 <bpmn2:errorEventDefinition />
24 <bpmn2:scriptTask id="processMsoWorkflowException" name="Process Error" scriptFormat="groovy">
25 <bpmn2:incoming>SequenceFlow_00nlh7l</bpmn2:incoming>
26 <bpmn2:outgoing>SequenceFlow_1rf4vs8</bpmn2:outgoing>
27 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
\r
28 ExceptionUtil ex = new ExceptionUtil()
\r
29 ex.processSubflowsBPMNException(execution)]]></bpmn2:script>
31 <bpmn2:sequenceFlow id="SequenceFlow_1rf4vs8" sourceRef="processMsoWorkflowException" targetRef="EndEvent_07tjq3v" />
32 <bpmn2:sequenceFlow id="SequenceFlow_00nlh7l" sourceRef="StartEvent_1qiitb2" targetRef="processMsoWorkflowException" />
34 <bpmn2:subProcess id="javaExceptionSubProcess" name="Java Exception Sub Process" triggeredByEvent="true">
35 <bpmn2:scriptTask id="processJavaException" name="Process Error" scriptFormat="groovy">
36 <bpmn2:incoming>SequenceFlow_0kamg53</bpmn2:incoming>
37 <bpmn2:outgoing>SequenceFlow_1o7154s</bpmn2:outgoing>
38 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
\r
39 ExceptionUtil ex = new ExceptionUtil()
\r
40 ex.processJavaException(execution)]]></bpmn2:script>
42 <bpmn2:startEvent id="StartEvent_1fbpeuw">
43 <bpmn2:outgoing>SequenceFlow_0kamg53</bpmn2:outgoing>
44 <bpmn2:errorEventDefinition errorRef="Error_1lwpypa" />
46 <bpmn2:endEvent id="EndEvent_0jbvnr0">
47 <bpmn2:incoming>SequenceFlow_1o7154s</bpmn2:incoming>
48 <bpmn2:terminateEventDefinition />
50 <bpmn2:sequenceFlow id="SequenceFlow_0kamg53" name="" sourceRef="StartEvent_1fbpeuw" targetRef="processJavaException" />
51 <bpmn2:sequenceFlow id="SequenceFlow_1o7154s" name="" sourceRef="processJavaException" targetRef="EndEvent_0jbvnr0" />
53 <bpmn2:scriptTask id="processHomingSolution" name="Process Homing Solutio " scriptFormat="groovy">
54 <bpmn2:incoming>SequenceFlow_043r3j8</bpmn2:incoming>
55 <bpmn2:outgoing>SequenceFlow_1h9opg9</bpmn2:outgoing>
56 <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
57 Homing homing = new Homing()
58 homing.processHomingSolution(execution)]]></bpmn2:script>
60 <bpmn2:exclusiveGateway id="responseCheck" name="Response Ok?" default="badResponse">
61 <bpmn2:incoming>SequenceFlow_10x3ocp</bpmn2:incoming>
62 <bpmn2:outgoing>badResponse</bpmn2:outgoing>
63 <bpmn2:outgoing>goodResponse</bpmn2:outgoing>
64 </bpmn2:exclusiveGateway>
65 <bpmn2:sequenceFlow id="SequenceFlow_10x3ocp" sourceRef="callSniro" targetRef="responseCheck" />
66 <bpmn2:scriptTask id="assignError" name="Assign Error" scriptFormat="groovy">
67 <bpmn2:incoming>badResponse</bpmn2:incoming>
68 <bpmn2:outgoing>SequenceFlow_0clfkld</bpmn2:outgoing>
69 <bpmn2:script><![CDATA[int responseCode = execution.getVariable("syncResponseCode")
\r
71 import org.openecomp.mso.bpmn.common.scripts.*
\r
72 ExceptionUtil ex = new ExceptionUtil()
\r
73 ex.buildAndThrowWorkflowException(execution, responseCode, "Received a Bad Sync Response from Sniro.")]]></bpmn2:script>
75 <bpmn2:sequenceFlow id="badResponse" name="No" sourceRef="responseCheck" targetRef="assignError" />
76 <bpmn2:sequenceFlow id="SequenceFlow_0clfkld" sourceRef="assignError" targetRef="throwMSOWorkflowException" />
77 <bpmn2:endEvent id="throwMSOWorkflowException">
78 <bpmn2:incoming>SequenceFlow_0clfkld</bpmn2:incoming>
79 <bpmn2:errorEventDefinition errorRef="Error_10hit0u" />
81 <bpmn2:sequenceFlow id="goodResponse" name="Yes" sourceRef="responseCheck" targetRef="receiveAsyncCallback">
82 <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("syncResponseCode") == 202}]]></bpmn2:conditionExpression>
84 <bpmn2:sequenceFlow id="SequenceFlow_043r3j8" sourceRef="receiveAsyncCallback" targetRef="processHomingSolution" />
85 <bpmn2:callActivity id="receiveAsyncCallback" name="Receive Async Callback" calledElement="ReceiveWorkflowMessage" camunda:modelerTemplate="receiveWorkflowMessage">
86 <bpmn2:extensionElements>
87 <camunda:in source="true" target="isDebugLogEnabled" />
88 <camunda:out source="WorkflowException" target="WorkflowException" />
89 <camunda:in source="messageType" target="RCVWFMSG_messageType" />
90 <camunda:in source="correlator" target="RCVWFMSG_correlator" />
91 <camunda:in source="timeout" target="RCVWFMSG_timeout" />
92 <camunda:out source="WorkflowResponse" target="asyncCallbackResponse" />
93 </bpmn2:extensionElements>
94 <bpmn2:incoming>goodResponse</bpmn2:incoming>
95 <bpmn2:outgoing>SequenceFlow_043r3j8</bpmn2:outgoing>
97 <bpmn2:sequenceFlow id="SequenceFlow_1h9opg9" sourceRef="processHomingSolution" targetRef="EndEvent_0n56tas" />
98 <bpmn2:endEvent id="EndEvent_0n56tas">
99 <bpmn2:incoming>SequenceFlow_1h9opg9</bpmn2:incoming>
100 <bpmn2:terminateEventDefinition />
103 <bpmn2:error id="Error_10hit0u" name="MSO Workflow Exception" errorCode="MSOWorkflowException" />
104 <bpmn2:error id="Error_1lwpypa" name="Java Lang Exception" errorCode="java.lang.Exception" />
105 <bpmndi:BPMNDiagram id="BPMNDiagram_1">
106 <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Homing">
107 <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">
108 <dc:Bounds x="147" y="275" width="36" height="36" />
110 <bpmndi:BPMNShape id="ScriptTask_0qmfpdr_di" bpmnElement="callSniro">
111 <dc:Bounds x="286" y="253" width="100" height="80" />
113 <bpmndi:BPMNEdge id="SequenceFlow_1x9usa6_di" bpmnElement="SequenceFlow_1x9usa6">
114 <di:waypoint xsi:type="dc:Point" x="183" y="293" />
115 <di:waypoint xsi:type="dc:Point" x="286" y="293" />
117 <dc:Bounds x="235" y="278" width="0" height="0" />
120 <bpmndi:BPMNShape id="SubProcess_16p12qo_di" bpmnElement="bpmnErrorSubprocess" isExpanded="true">
121 <dc:Bounds x="254" y="496" width="409" height="168" />
123 <bpmndi:BPMNShape id="SubProcess_12gjiy8_di" bpmnElement="javaExceptionSubProcess" isExpanded="true">
124 <dc:Bounds x="284" y="679" width="350" height="159" />
126 <bpmndi:BPMNShape id="EndEvent_07tjq3v_di" bpmnElement="EndEvent_07tjq3v">
127 <dc:Bounds x="579" y="570" width="36" height="36" />
129 <dc:Bounds x="597" y="611" width="0" height="0" />
132 <bpmndi:BPMNShape id="StartEvent_1qiitb2_di" bpmnElement="StartEvent_1qiitb2">
133 <dc:Bounds x="299" y="570" width="36" height="36" />
135 <dc:Bounds x="317" y="611" width="0" height="0" />
138 <bpmndi:BPMNShape id="ScriptTask_03hs6s9_di" bpmnElement="processMsoWorkflowException">
139 <dc:Bounds x="406" y="548" width="100" height="80" />
141 <bpmndi:BPMNShape id="ScriptTask_19gqykh_di" bpmnElement="processJavaException">
142 <dc:Bounds x="410" y="727" width="100" height="80" />
144 <bpmndi:BPMNShape id="StartEvent_1fbpeuw_di" bpmnElement="StartEvent_1fbpeuw">
145 <dc:Bounds x="318" y="749" width="36" height="36" />
147 <dc:Bounds x="336" y="790" width="0" height="0" />
150 <bpmndi:BPMNShape id="EndEvent_0jbvnr0_di" bpmnElement="EndEvent_0jbvnr0">
151 <dc:Bounds x="567" y="749" width="36" height="36" />
153 <dc:Bounds x="585" y="790" width="0" height="0" />
156 <bpmndi:BPMNEdge id="SequenceFlow_1rf4vs8_di" bpmnElement="SequenceFlow_1rf4vs8">
157 <di:waypoint xsi:type="dc:Point" x="506" y="588" />
158 <di:waypoint xsi:type="dc:Point" x="579" y="588" />
160 <dc:Bounds x="543" y="573" width="0" height="0" />
163 <bpmndi:BPMNEdge id="SequenceFlow_00nlh7l_di" bpmnElement="SequenceFlow_00nlh7l">
164 <di:waypoint xsi:type="dc:Point" x="335" y="588" />
165 <di:waypoint xsi:type="dc:Point" x="363" y="588" />
166 <di:waypoint xsi:type="dc:Point" x="363" y="588" />
167 <di:waypoint xsi:type="dc:Point" x="406" y="588" />
169 <dc:Bounds x="378" y="588" width="0" height="0" />
172 <bpmndi:BPMNEdge id="SequenceFlow_0kamg53_di" bpmnElement="SequenceFlow_0kamg53">
173 <di:waypoint xsi:type="dc:Point" x="354" y="767" />
174 <di:waypoint xsi:type="dc:Point" x="410" y="767" />
176 <dc:Bounds x="382" y="752" width="0" height="0" />
179 <bpmndi:BPMNEdge id="SequenceFlow_1o7154s_di" bpmnElement="SequenceFlow_1o7154s">
180 <di:waypoint xsi:type="dc:Point" x="510" y="767" />
181 <di:waypoint xsi:type="dc:Point" x="567" y="767" />
183 <dc:Bounds x="539" y="752" width="0" height="0" />
186 <bpmndi:BPMNShape id="ScriptTask_1aapkvq_di" bpmnElement="processHomingSolution">
187 <dc:Bounds x="630" y="325" width="100" height="80" />
189 <bpmndi:BPMNShape id="ExclusiveGateway_03gt5b8_di" bpmnElement="responseCheck" isMarkerVisible="true">
190 <dc:Bounds x="419" y="268" width="50" height="50" />
192 <dc:Bounds x="474" y="287" width="74" height="12" />
195 <bpmndi:BPMNEdge id="SequenceFlow_10x3ocp_di" bpmnElement="SequenceFlow_10x3ocp">
196 <di:waypoint xsi:type="dc:Point" x="386" y="293" />
197 <di:waypoint xsi:type="dc:Point" x="419" y="293" />
199 <dc:Bounds x="403" y="278" width="0" height="0" />
202 <bpmndi:BPMNShape id="ScriptTask_0ikcqeo_di" bpmnElement="assignError">
203 <dc:Bounds x="490" y="176" width="100" height="80" />
205 <bpmndi:BPMNEdge id="SequenceFlow_1m1c9nu_di" bpmnElement="badResponse">
206 <di:waypoint xsi:type="dc:Point" x="444" y="268" />
207 <di:waypoint xsi:type="dc:Point" x="444" y="216" />
208 <di:waypoint xsi:type="dc:Point" x="490" y="216" />
210 <dc:Bounds x="451" y="226" width="14" height="12" />
213 <bpmndi:BPMNEdge id="SequenceFlow_0clfkld_di" bpmnElement="SequenceFlow_0clfkld">
214 <di:waypoint xsi:type="dc:Point" x="590" y="216" />
215 <di:waypoint xsi:type="dc:Point" x="662" y="216" />
217 <dc:Bounds x="626" y="201" width="0" height="0" />
220 <bpmndi:BPMNShape id="EndEvent_13ejfwp_di" bpmnElement="throwMSOWorkflowException">
221 <dc:Bounds x="662" y="198" width="36" height="36" />
223 <dc:Bounds x="680" y="234" width="0" height="0" />
226 <bpmndi:BPMNEdge id="SequenceFlow_1o3br3u_di" bpmnElement="goodResponse">
227 <di:waypoint xsi:type="dc:Point" x="444" y="318" />
228 <di:waypoint xsi:type="dc:Point" x="444" y="365" />
229 <di:waypoint xsi:type="dc:Point" x="490" y="365" />
231 <dc:Bounds x="447" y="339.5" width="18" height="12" />
234 <bpmndi:BPMNEdge id="SequenceFlow_043r3j8_di" bpmnElement="SequenceFlow_043r3j8">
235 <di:waypoint xsi:type="dc:Point" x="590" y="365" />
236 <di:waypoint xsi:type="dc:Point" x="630" y="365" />
238 <dc:Bounds x="610" y="350" width="0" height="0" />
241 <bpmndi:BPMNShape id="CallActivity_031b5m3_di" bpmnElement="receiveAsyncCallback">
242 <dc:Bounds x="490" y="325" width="100" height="80" />
244 <bpmndi:BPMNEdge id="SequenceFlow_1h9opg9_di" bpmnElement="SequenceFlow_1h9opg9">
245 <di:waypoint xsi:type="dc:Point" x="730" y="365" />
246 <di:waypoint xsi:type="dc:Point" x="825" y="365" />
248 <dc:Bounds x="778" y="350" width="0" height="0" />
251 <bpmndi:BPMNShape id="EndEvent_0ougemc_di" bpmnElement="EndEvent_0n56tas">
252 <dc:Bounds x="825" y="347" width="36" height="36" />
254 <dc:Bounds x="843" y="383" width="0" height="0" />
258 </bpmndi:BPMNDiagram>