a432417c2153ec70e5d51df369d732985269bb8a
[so.git] / bpmn / MSOCommonBPMN / src / main / resources / subprocess / BuildingBlock / Homing.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: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>
6     </bpmn2:startEvent>
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>
13     </bpmn2:scriptTask>
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 />
19       </bpmn2:endEvent>
20       <bpmn2:startEvent id="StartEvent_1qiitb2">
21         <bpmn2:outgoing>SequenceFlow_00nlh7l</bpmn2:outgoing>
22         <bpmn2:errorEventDefinition />
23       </bpmn2:startEvent>
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>
30       </bpmn2:scriptTask>
31       <bpmn2:sequenceFlow id="SequenceFlow_1rf4vs8" sourceRef="processMsoWorkflowException" targetRef="EndEvent_07tjq3v" />
32       <bpmn2:sequenceFlow id="SequenceFlow_00nlh7l" sourceRef="StartEvent_1qiitb2" targetRef="processMsoWorkflowException" />
33     </bpmn2:subProcess>
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>
41       </bpmn2:scriptTask>
42       <bpmn2:startEvent id="StartEvent_1fbpeuw">
43         <bpmn2:outgoing>SequenceFlow_0kamg53</bpmn2:outgoing>
44         <bpmn2:errorEventDefinition errorRef="Error_1lwpypa" />
45       </bpmn2:startEvent>
46       <bpmn2:endEvent id="EndEvent_0jbvnr0">
47         <bpmn2:incoming>SequenceFlow_1o7154s</bpmn2:incoming>
48         <bpmn2:terminateEventDefinition />
49       </bpmn2:endEvent>
50       <bpmn2:sequenceFlow id="SequenceFlow_0kamg53" name="" sourceRef="StartEvent_1fbpeuw" targetRef="processJavaException" />
51       <bpmn2:sequenceFlow id="SequenceFlow_1o7154s" name="" sourceRef="processJavaException" targetRef="EndEvent_0jbvnr0" />
52     </bpmn2:subProcess>
53     <bpmn2:scriptTask id="processHomingSolution" name="Process &#10;Homing Solutio&#10;" 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>
59     </bpmn2:scriptTask>
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
70 \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>
74     </bpmn2:scriptTask>
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" />
80     </bpmn2:endEvent>
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>
83     </bpmn2:sequenceFlow>
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>
96     </bpmn2:callActivity>
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 />
101     </bpmn2:endEvent>
102   </bpmn2:process>
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" />
109       </bpmndi:BPMNShape>
110       <bpmndi:BPMNShape id="ScriptTask_0qmfpdr_di" bpmnElement="callSniro">
111         <dc:Bounds x="286" y="253" width="100" height="80" />
112       </bpmndi:BPMNShape>
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" />
116         <bpmndi:BPMNLabel>
117           <dc:Bounds x="235" y="278" width="0" height="0" />
118         </bpmndi:BPMNLabel>
119       </bpmndi:BPMNEdge>
120       <bpmndi:BPMNShape id="SubProcess_16p12qo_di" bpmnElement="bpmnErrorSubprocess" isExpanded="true">
121         <dc:Bounds x="254" y="496" width="409" height="168" />
122       </bpmndi:BPMNShape>
123       <bpmndi:BPMNShape id="SubProcess_12gjiy8_di" bpmnElement="javaExceptionSubProcess" isExpanded="true">
124         <dc:Bounds x="284" y="679" width="350" height="159" />
125       </bpmndi:BPMNShape>
126       <bpmndi:BPMNShape id="EndEvent_07tjq3v_di" bpmnElement="EndEvent_07tjq3v">
127         <dc:Bounds x="579" y="570" width="36" height="36" />
128         <bpmndi:BPMNLabel>
129           <dc:Bounds x="597" y="611" width="0" height="0" />
130         </bpmndi:BPMNLabel>
131       </bpmndi:BPMNShape>
132       <bpmndi:BPMNShape id="StartEvent_1qiitb2_di" bpmnElement="StartEvent_1qiitb2">
133         <dc:Bounds x="299" y="570" width="36" height="36" />
134         <bpmndi:BPMNLabel>
135           <dc:Bounds x="317" y="611" width="0" height="0" />
136         </bpmndi:BPMNLabel>
137       </bpmndi:BPMNShape>
138       <bpmndi:BPMNShape id="ScriptTask_03hs6s9_di" bpmnElement="processMsoWorkflowException">
139         <dc:Bounds x="406" y="548" width="100" height="80" />
140       </bpmndi:BPMNShape>
141       <bpmndi:BPMNShape id="ScriptTask_19gqykh_di" bpmnElement="processJavaException">
142         <dc:Bounds x="410" y="727" width="100" height="80" />
143       </bpmndi:BPMNShape>
144       <bpmndi:BPMNShape id="StartEvent_1fbpeuw_di" bpmnElement="StartEvent_1fbpeuw">
145         <dc:Bounds x="318" y="749" width="36" height="36" />
146         <bpmndi:BPMNLabel>
147           <dc:Bounds x="336" y="790" width="0" height="0" />
148         </bpmndi:BPMNLabel>
149       </bpmndi:BPMNShape>
150       <bpmndi:BPMNShape id="EndEvent_0jbvnr0_di" bpmnElement="EndEvent_0jbvnr0">
151         <dc:Bounds x="567" y="749" width="36" height="36" />
152         <bpmndi:BPMNLabel>
153           <dc:Bounds x="585" y="790" width="0" height="0" />
154         </bpmndi:BPMNLabel>
155       </bpmndi:BPMNShape>
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" />
159         <bpmndi:BPMNLabel>
160           <dc:Bounds x="543" y="573" width="0" height="0" />
161         </bpmndi:BPMNLabel>
162       </bpmndi:BPMNEdge>
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" />
168         <bpmndi:BPMNLabel>
169           <dc:Bounds x="378" y="588" width="0" height="0" />
170         </bpmndi:BPMNLabel>
171       </bpmndi:BPMNEdge>
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" />
175         <bpmndi:BPMNLabel>
176           <dc:Bounds x="382" y="752" width="0" height="0" />
177         </bpmndi:BPMNLabel>
178       </bpmndi:BPMNEdge>
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" />
182         <bpmndi:BPMNLabel>
183           <dc:Bounds x="539" y="752" width="0" height="0" />
184         </bpmndi:BPMNLabel>
185       </bpmndi:BPMNEdge>
186       <bpmndi:BPMNShape id="ScriptTask_1aapkvq_di" bpmnElement="processHomingSolution">
187         <dc:Bounds x="630" y="325" width="100" height="80" />
188       </bpmndi:BPMNShape>
189       <bpmndi:BPMNShape id="ExclusiveGateway_03gt5b8_di" bpmnElement="responseCheck" isMarkerVisible="true">
190         <dc:Bounds x="419" y="268" width="50" height="50" />
191         <bpmndi:BPMNLabel>
192           <dc:Bounds x="474" y="287" width="74" height="12" />
193         </bpmndi:BPMNLabel>
194       </bpmndi:BPMNShape>
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" />
198         <bpmndi:BPMNLabel>
199           <dc:Bounds x="403" y="278" width="0" height="0" />
200         </bpmndi:BPMNLabel>
201       </bpmndi:BPMNEdge>
202       <bpmndi:BPMNShape id="ScriptTask_0ikcqeo_di" bpmnElement="assignError">
203         <dc:Bounds x="490" y="176" width="100" height="80" />
204       </bpmndi:BPMNShape>
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" />
209         <bpmndi:BPMNLabel>
210           <dc:Bounds x="451" y="226" width="14" height="12" />
211         </bpmndi:BPMNLabel>
212       </bpmndi:BPMNEdge>
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" />
216         <bpmndi:BPMNLabel>
217           <dc:Bounds x="626" y="201" width="0" height="0" />
218         </bpmndi:BPMNLabel>
219       </bpmndi:BPMNEdge>
220       <bpmndi:BPMNShape id="EndEvent_13ejfwp_di" bpmnElement="throwMSOWorkflowException">
221         <dc:Bounds x="662" y="198" width="36" height="36" />
222         <bpmndi:BPMNLabel>
223           <dc:Bounds x="680" y="234" width="0" height="0" />
224         </bpmndi:BPMNLabel>
225       </bpmndi:BPMNShape>
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" />
230         <bpmndi:BPMNLabel>
231           <dc:Bounds x="447" y="339.5" width="18" height="12" />
232         </bpmndi:BPMNLabel>
233       </bpmndi:BPMNEdge>
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" />
237         <bpmndi:BPMNLabel>
238           <dc:Bounds x="610" y="350" width="0" height="0" />
239         </bpmndi:BPMNLabel>
240       </bpmndi:BPMNEdge>
241       <bpmndi:BPMNShape id="CallActivity_031b5m3_di" bpmnElement="receiveAsyncCallback">
242         <dc:Bounds x="490" y="325" width="100" height="80" />
243       </bpmndi:BPMNShape>
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" />
247         <bpmndi:BPMNLabel>
248           <dc:Bounds x="778" y="350" width="0" height="0" />
249         </bpmndi:BPMNLabel>
250       </bpmndi:BPMNEdge>
251       <bpmndi:BPMNShape id="EndEvent_0ougemc_di" bpmnElement="EndEvent_0n56tas">
252         <dc:Bounds x="825" y="347" width="36" height="36" />
253         <bpmndi:BPMNLabel>
254           <dc:Bounds x="843" y="383" width="0" height="0" />
255         </bpmndi:BPMNLabel>
256       </bpmndi:BPMNShape>
257     </bpmndi:BPMNPlane>
258   </bpmndi:BPMNDiagram>
259 </bpmn2:definitions>