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:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="Definitions_1px21lh" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="4.0.0">
3 <bpmn:process id="DoAllocateCoreSharedSlice" name="DoAllocateCoreSharedSlice" isExecutable="true">
4 <bpmn:startEvent id="StartEvent_1" name="Start">
5 <bpmn:outgoing>SequenceFlow_1ym7ydc</bpmn:outgoing>
7 <bpmn:sequenceFlow id="SequenceFlow_1ym7ydc" sourceRef="StartEvent_1" targetRef="Activity_1264hec" />
8 <bpmn:endEvent id="EndEvent_1av4kxa" name="End">
9 <bpmn:incoming>Flow_09uu75h</bpmn:incoming>
11 <bpmn:sequenceFlow id="Flow_0da7dao" sourceRef="Activity_0no0sxa" targetRef="Task_16983t3" />
12 <bpmn:scriptTask id="Task_1htaioi" name="Call AAI get network service instance associated with NSSI id" scriptFormat="groovy">
13 <bpmn:incoming>Flow_1r07vnu</bpmn:incoming>
14 <bpmn:outgoing>Flow_1973d9m</bpmn:outgoing>
15 <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
16 def allocateNssi = new DoAllocateCoreSharedSlice()
17 allocateNssi.getNetworkInstanceAssociatedWithNssiId(execution)</bpmn:script>
19 <bpmn:sequenceFlow id="Flow_1r07vnu" sourceRef="Activity_1264hec" targetRef="Task_1htaioi" />
20 <bpmn:scriptTask id="Activity_1264hec" name="Preprocess Request" scriptFormat="groovy">
21 <bpmn:incoming>SequenceFlow_1ym7ydc</bpmn:incoming>
22 <bpmn:outgoing>Flow_1r07vnu</bpmn:outgoing>
23 <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
24 def allocateNssi = new DoAllocateCoreSharedSlice()
25 allocateNssi.preProcessRequest(execution)</bpmn:script>
27 <bpmn:sequenceFlow id="Flow_1973d9m" sourceRef="Task_1htaioi" targetRef="Activity_0no0sxa" />
28 <bpmn:scriptTask id="Task_16983t3" name="Prepare request payload for SO macro service call" scriptFormat="groovy">
29 <bpmn:incoming>Flow_0da7dao</bpmn:incoming>
30 <bpmn:outgoing>SequenceFlow_1j1qqcs</bpmn:outgoing>
31 <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
32 def allocateNssi = new DoAllocateCoreSharedSlice()
33 allocateNssi.prepareSOMacroRequestPayload(execution)</bpmn:script>
35 <bpmn:scriptTask id="Activity_12jcmzc" name="PUT SO Macro" scriptFormat="groovy">
36 <bpmn:incoming>SequenceFlow_013bc74</bpmn:incoming>
37 <bpmn:outgoing>SequenceFlow_08q2fd9</bpmn:outgoing>
38 <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
39 def allocateNssi = new DoAllocateCoreSharedSlice()
40 allocateNssi.sendPutRequestToSOMacro(execution)</bpmn:script>
42 <bpmn:scriptTask id="Activity_0ge2y0l" name="Call Get SO PUT progress" scriptFormat="groovy">
43 <bpmn:incoming>Flow_0x7shtq</bpmn:incoming>
44 <bpmn:incoming>Flow_163kxug</bpmn:incoming>
45 <bpmn:outgoing>Flow_1c9nkx4</bpmn:outgoing>
46 <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
47 def allocateNssi = new DoAllocateCoreSharedSlice()
48 allocateNssi.getSOPUTProgress(execution)</bpmn:script>
50 <bpmn:sequenceFlow id="Flow_1c9nkx4" sourceRef="Activity_0ge2y0l" targetRef="Gateway_1boyqt9" />
51 <bpmn:scriptTask id="Activity_0no0sxa" name="Get VNF/VFs modelInfo from CatalogDB" scriptFormat="groovy">
52 <bpmn:incoming>Flow_1973d9m</bpmn:incoming>
53 <bpmn:outgoing>Flow_0da7dao</bpmn:outgoing>
54 <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
55 def allocateNssi = new DoAllocateCoreSharedSlice()
56 allocateNssi.getServiceVNFAndVFsFromCatalogDB(execution)</bpmn:script>
58 <bpmn:scriptTask id="Activity_1t49t6c" name="Prepare Update Operation Status" scriptFormat="groovy">
59 <bpmn:incoming>Flow_15lksyg</bpmn:incoming>
60 <bpmn:outgoing>SequenceFlow_1re5jor</bpmn:outgoing>
61 <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
62 def allocateNssi = new DoAllocateCoreSharedSlice()
63 allocateNssi.prepareUpdateResourceOperationStatus(execution)</bpmn:script>
65 <bpmn:serviceTask id="Activity_0t6viuq" name="Update Resource Operation Status">
66 <bpmn:extensionElements>
69 <camunda:inputParameter name="url">${dbAdapterEndpoint}</camunda:inputParameter>
70 <camunda:inputParameter name="headers">
72 <camunda:entry key="content-type">application/soap+xml</camunda:entry>
73 <camunda:entry key="Authorization">Basic YnBlbDpwYXNzd29yZDEk</camunda:entry>
75 </camunda:inputParameter>
76 <camunda:inputParameter name="payload">${updateResourceOperationStatus}</camunda:inputParameter>
77 <camunda:inputParameter name="method">POST</camunda:inputParameter>
78 <camunda:outputParameter name="NSSMF_dbResponseCode">${statusCode}</camunda:outputParameter>
79 <camunda:outputParameter name="NSSMF_dbResponse">${response}</camunda:outputParameter>
80 </camunda:inputOutput>
81 <camunda:connectorId>http-connector</camunda:connectorId>
83 </bpmn:extensionElements>
84 <bpmn:incoming>SequenceFlow_1re5jor</bpmn:incoming>
85 <bpmn:incoming>Flow_1nn15tq</bpmn:incoming>
86 <bpmn:outgoing>Flow_09uu75h</bpmn:outgoing>
88 <bpmn:sequenceFlow id="Flow_09uu75h" sourceRef="Activity_0t6viuq" targetRef="EndEvent_1av4kxa" />
89 <bpmn:sequenceFlow id="SequenceFlow_08q2fd9" sourceRef="Activity_12jcmzc" targetRef="Gateway_0sfmiku" />
90 <bpmn:sequenceFlow id="SequenceFlow_1re5jor" sourceRef="Activity_1t49t6c" targetRef="Activity_0t6viuq" />
91 <bpmn:sequenceFlow id="SequenceFlow_1j1qqcs" sourceRef="Task_16983t3" targetRef="IntermediateThrowEvent_09rhn4h" />
92 <bpmn:intermediateThrowEvent id="IntermediateThrowEvent_09rhn4h" name="CallSO">
93 <bpmn:incoming>SequenceFlow_1j1qqcs</bpmn:incoming>
94 <bpmn:linkEventDefinition name="CallSO" />
95 </bpmn:intermediateThrowEvent>
96 <bpmn:intermediateCatchEvent id="IntermediateThrowEvent_0qh9wy2" name="CallSO">
97 <bpmn:outgoing>SequenceFlow_013bc74</bpmn:outgoing>
98 <bpmn:linkEventDefinition name="CallSO" />
99 </bpmn:intermediateCatchEvent>
100 <bpmn:sequenceFlow id="SequenceFlow_013bc74" sourceRef="IntermediateThrowEvent_0qh9wy2" targetRef="Activity_12jcmzc" />
101 <bpmn:exclusiveGateway id="Gateway_0sfmiku" name="is SO Response OK?" default="Flow_0x7shtq">
102 <bpmn:incoming>SequenceFlow_08q2fd9</bpmn:incoming>
103 <bpmn:outgoing>Flow_0x7shtq</bpmn:outgoing>
104 <bpmn:outgoing>Flow_1nn15tq</bpmn:outgoing>
105 </bpmn:exclusiveGateway>
106 <bpmn:sequenceFlow id="Flow_0x7shtq" name="Yes" sourceRef="Gateway_0sfmiku" targetRef="Activity_0ge2y0l" />
107 <bpmn:sequenceFlow id="Flow_1nn15tq" name="No" sourceRef="Gateway_0sfmiku" targetRef="Activity_0t6viuq">
108 <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">#{(execution.getVariable("isSOResponseSucceed" ) == "no")}</bpmn:conditionExpression>
110 <bpmn:subProcess id="Activity_08h38js" name="Sub-process for FalloutHandler and Rollback" triggeredByEvent="true">
111 <bpmn:startEvent id="Event_07tr56z">
112 <bpmn:outgoing>Flow_0nauwik</bpmn:outgoing>
113 <bpmn:errorEventDefinition id="ErrorEventDefinition_154c21j" />
115 <bpmn:endEvent id="Event_02arrfq">
116 <bpmn:incoming>Flow_0y8rsb3</bpmn:incoming>
118 <bpmn:scriptTask id="Activity_1150yu6" name="Handle Unexpected Error" scriptFormat="groovy">
119 <bpmn:incoming>Flow_128o22z</bpmn:incoming>
120 <bpmn:outgoing>Flow_0y8rsb3</bpmn:outgoing>
121 <bpmn:script>import org.onap.so.bpmn.common.scripts.*
122 ExceptionUtil ex = new ExceptionUtil()
123 ex.processJavaException(execution)</bpmn:script>
125 <bpmn:scriptTask id="Activity_0sqggtb" name="Prepare Resource Operation Status Update" scriptFormat="groovy">
126 <bpmn:incoming>Flow_0nauwik</bpmn:incoming>
127 <bpmn:outgoing>Flow_0kadgoq</bpmn:outgoing>
128 <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
129 def allocateNssi = new DoAllocateCoreSharedSlice()
130 allocateNssi.prepareFailedOperationStatusUpdate(execution)</bpmn:script>
132 <bpmn:serviceTask id="Activity_1btidug" name="Update Resource Operation Status">
133 <bpmn:extensionElements>
135 <camunda:inputOutput>
136 <camunda:inputParameter name="url">${dbAdapterEndpoint}</camunda:inputParameter>
137 <camunda:inputParameter name="headers">
139 <camunda:entry key="content-type">application/soap+xml</camunda:entry>
140 <camunda:entry key="Authorization">Basic YnBlbDpwYXNzd29yZDEk</camunda:entry>
142 </camunda:inputParameter>
143 <camunda:inputParameter name="payload">${updateResourceOperationStatus}</camunda:inputParameter>
144 <camunda:inputParameter name="method">POST</camunda:inputParameter>
145 <camunda:outputParameter name="NSSMF_dbResponseCode">${statusCode}</camunda:outputParameter>
146 <camunda:outputParameter name="NSSMF_dbResponse">${response}</camunda:outputParameter>
147 </camunda:inputOutput>
148 <camunda:connectorId>http-connector</camunda:connectorId>
150 </bpmn:extensionElements>
151 <bpmn:incoming>Flow_0kadgoq</bpmn:incoming>
152 <bpmn:outgoing>Flow_128o22z</bpmn:outgoing>
154 <bpmn:sequenceFlow id="Flow_0y8rsb3" sourceRef="Activity_1150yu6" targetRef="Event_02arrfq" />
155 <bpmn:sequenceFlow id="Flow_0nauwik" sourceRef="Event_07tr56z" targetRef="Activity_0sqggtb" />
156 <bpmn:sequenceFlow id="Flow_0kadgoq" sourceRef="Activity_0sqggtb" targetRef="Activity_1btidug" />
157 <bpmn:sequenceFlow id="Flow_128o22z" sourceRef="Activity_1btidug" targetRef="Activity_1150yu6" />
159 <bpmn:exclusiveGateway id="Gateway_1boyqt9" default="Flow_15lksyg">
160 <bpmn:incoming>Flow_1c9nkx4</bpmn:incoming>
161 <bpmn:outgoing>Flow_15lksyg</bpmn:outgoing>
162 <bpmn:outgoing>Flow_1lzv4jo</bpmn:outgoing>
163 </bpmn:exclusiveGateway>
164 <bpmn:sequenceFlow id="Flow_15lksyg" sourceRef="Gateway_1boyqt9" targetRef="Activity_1t49t6c" />
165 <bpmn:sequenceFlow id="Flow_1lzv4jo" name="requestState=IN_PROGRESS" sourceRef="Gateway_1boyqt9" targetRef="Activity_1qm4des">
166 <bpmn:conditionExpression xsi:type="bpmn:tFormalExpression">#{(execution.getVariable("requestState" ) == "IN_PROGRESS")}</bpmn:conditionExpression>
168 <bpmn:scriptTask id="Activity_1qm4des" name="Time Delay 5s" scriptFormat="groovy">
169 <bpmn:incoming>Flow_1lzv4jo</bpmn:incoming>
170 <bpmn:outgoing>Flow_163kxug</bpmn:outgoing>
171 <bpmn:script>import org.onap.so.bpmn.infrastructure.scripts.*
172 def allocateNssi = new DoAllocateCoreSharedSlice()
173 allocateNssi.timeDelay(execution)</bpmn:script>
175 <bpmn:sequenceFlow id="Flow_163kxug" sourceRef="Activity_1qm4des" targetRef="Activity_0ge2y0l" />
177 <bpmndi:BPMNDiagram id="BPMNDiagram_1">
178 <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoAllocateCoreSharedSlice">
179 <bpmndi:BPMNEdge id="Flow_1nn15tq_di" bpmnElement="Flow_1nn15tq">
180 <di:waypoint x="420" y="256" />
181 <di:waypoint x="420" y="200" />
182 <di:waypoint x="967" y="200" />
183 <di:waypoint x="967" y="241" />
185 <dc:Bounds x="687" y="182" width="15" height="14" />
188 <bpmndi:BPMNEdge id="Flow_0x7shtq_di" bpmnElement="Flow_0x7shtq">
189 <di:waypoint x="445" y="281" />
190 <di:waypoint x="484" y="281" />
192 <dc:Bounds x="456" y="263" width="18" height="14" />
195 <bpmndi:BPMNEdge id="SequenceFlow_013bc74_di" bpmnElement="SequenceFlow_013bc74">
196 <di:waypoint x="218" y="281" />
197 <di:waypoint x="260" y="281" />
199 <dc:Bounds x="252" y="340" width="0" height="12" />
202 <bpmndi:BPMNEdge id="SequenceFlow_1j1qqcs_di" bpmnElement="SequenceFlow_1j1qqcs">
203 <di:waypoint x="896" y="120" />
204 <di:waypoint x="949" y="120" />
206 <dc:Bounds x="862.5" y="179" width="0" height="12" />
209 <bpmndi:BPMNEdge id="SequenceFlow_1re5jor_di" bpmnElement="SequenceFlow_1re5jor">
210 <di:waypoint x="878" y="281" />
211 <di:waypoint x="917" y="281" />
213 <dc:Bounds x="837.5" y="340" width="0" height="12" />
216 <bpmndi:BPMNEdge id="SequenceFlow_08q2fd9_di" bpmnElement="SequenceFlow_08q2fd9">
217 <di:waypoint x="360" y="281" />
218 <di:waypoint x="395" y="281" />
220 <dc:Bounds x="402" y="340" width="0" height="12" />
223 <bpmndi:BPMNEdge id="Flow_09uu75h_di" bpmnElement="Flow_09uu75h">
224 <di:waypoint x="1017" y="281" />
225 <di:waypoint x="1056" y="281" />
227 <dc:Bounds x="931.5" y="336" width="90" height="20" />
230 <bpmndi:BPMNEdge id="Flow_1c9nkx4_di" bpmnElement="Flow_1c9nkx4">
231 <di:waypoint x="584" y="281" />
232 <di:waypoint x="655" y="281" />
234 <dc:Bounds x="505" y="336" width="90" height="20" />
237 <bpmndi:BPMNEdge id="Flow_1973d9m_di" bpmnElement="Flow_1973d9m">
238 <di:waypoint x="600" y="120" />
239 <di:waypoint x="654" y="120" />
241 <dc:Bounds x="522" y="175" width="90" height="20" />
244 <bpmndi:BPMNEdge id="Flow_1r07vnu_di" bpmnElement="Flow_1r07vnu">
245 <di:waypoint x="440" y="120" />
246 <di:waypoint x="500" y="120" />
248 <bpmndi:BPMNEdge id="Flow_0da7dao_di" bpmnElement="Flow_0da7dao">
249 <di:waypoint x="754" y="120" />
250 <di:waypoint x="796" y="120" />
252 <dc:Bounds x="670" y="175" width="90" height="20" />
255 <bpmndi:BPMNEdge id="SequenceFlow_1ym7ydc_di" bpmnElement="SequenceFlow_1ym7ydc">
256 <di:waypoint x="284" y="120" />
257 <di:waypoint x="340" y="120" />
259 <dc:Bounds x="207" y="179" width="90" height="12" />
262 <bpmndi:BPMNEdge id="Flow_15lksyg_di" bpmnElement="Flow_15lksyg">
263 <di:waypoint x="705" y="281" />
264 <di:waypoint x="778" y="281" />
266 <bpmndi:BPMNEdge id="Flow_1lzv4jo_di" bpmnElement="Flow_1lzv4jo">
267 <di:waypoint x="680" y="306" />
268 <di:waypoint x="680" y="340" />
270 <dc:Bounds x="603" y="315" width="78" height="27" />
273 <bpmndi:BPMNEdge id="Flow_163kxug_di" bpmnElement="Flow_163kxug">
274 <di:waypoint x="630" y="380" />
275 <di:waypoint x="534" y="380" />
276 <di:waypoint x="534" y="321" />
278 <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">
279 <dc:Bounds x="248" y="102" width="36" height="36" />
281 <dc:Bounds x="254" y="145" width="25" height="14" />
284 <bpmndi:BPMNShape id="EndEvent_1av4kxa_di" bpmnElement="EndEvent_1av4kxa">
285 <dc:Bounds x="1056" y="263" width="36" height="36" />
287 <dc:Bounds x="1064" y="306" width="20" height="14" />
290 <bpmndi:BPMNShape id="Activity_16cbdb6_di" bpmnElement="Task_1htaioi">
291 <dc:Bounds x="500" y="80" width="100" height="80" />
293 <bpmndi:BPMNShape id="Activity_1wo5rx5_di" bpmnElement="Activity_1264hec">
294 <dc:Bounds x="340" y="80" width="100" height="80" />
296 <bpmndi:BPMNShape id="Activity_0csnjjc_di" bpmnElement="Task_16983t3">
297 <dc:Bounds x="796" y="80" width="100" height="80" />
299 <bpmndi:BPMNShape id="Activity_05dh84g_di" bpmnElement="Activity_12jcmzc">
300 <dc:Bounds x="260" y="241" width="100" height="80" />
302 <bpmndi:BPMNShape id="Activity_0ge2y0l_di" bpmnElement="Activity_0ge2y0l">
303 <dc:Bounds x="484" y="241" width="100" height="80" />
305 <bpmndi:BPMNShape id="Activity_0k70k5i_di" bpmnElement="Activity_0no0sxa">
306 <dc:Bounds x="654" y="80" width="100" height="80" />
308 <bpmndi:BPMNShape id="Activity_0mb2ssd_di" bpmnElement="Activity_1t49t6c">
309 <dc:Bounds x="778" y="241" width="100" height="80" />
311 <bpmndi:BPMNShape id="Activity_0t6viuq_di" bpmnElement="Activity_0t6viuq">
312 <dc:Bounds x="917" y="241" width="100" height="80" />
314 <bpmndi:BPMNShape id="IntermediateThrowEvent_06785ru_di" bpmnElement="IntermediateThrowEvent_09rhn4h">
315 <dc:Bounds x="949" y="102" width="36" height="36" />
317 <dc:Bounds x="950" y="142" width="36" height="14" />
320 <bpmndi:BPMNShape id="IntermediateCatchEvent_09u3rdp_di" bpmnElement="IntermediateThrowEvent_0qh9wy2">
321 <dc:Bounds x="182" y="263" width="36" height="36" />
323 <dc:Bounds x="183" y="303" width="36" height="14" />
326 <bpmndi:BPMNShape id="Gateway_0sfmiku_di" bpmnElement="Gateway_0sfmiku" isMarkerVisible="true">
327 <dc:Bounds x="395" y="256" width="50" height="50" />
329 <dc:Bounds x="380" y="315.5" width="80" height="27" />
332 <bpmndi:BPMNShape id="Gateway_1boyqt9_di" bpmnElement="Gateway_1boyqt9" isMarkerVisible="true">
333 <dc:Bounds x="655" y="256" width="50" height="50" />
335 <bpmndi:BPMNShape id="Activity_1iksno7_di" bpmnElement="Activity_1qm4des">
336 <dc:Bounds x="630" y="340" width="100" height="80" />
338 <bpmndi:BPMNShape id="Activity_08h38js_di" bpmnElement="Activity_08h38js" isExpanded="true">
339 <dc:Bounds x="250" y="440" width="781" height="196" />
341 <bpmndi:BPMNEdge id="Flow_128o22z_di" bpmnElement="Flow_128o22z">
342 <di:waypoint x="640" y="544" />
343 <di:waypoint x="710" y="544" />
345 <bpmndi:BPMNEdge id="Flow_0kadgoq_di" bpmnElement="Flow_0kadgoq">
346 <di:waypoint x="480" y="544" />
347 <di:waypoint x="540" y="544" />
349 <bpmndi:BPMNEdge id="Flow_0nauwik_di" bpmnElement="Flow_0nauwik">
350 <di:waypoint x="316" y="544" />
351 <di:waypoint x="380" y="544" />
353 <bpmndi:BPMNEdge id="Flow_0y8rsb3_di" bpmnElement="Flow_0y8rsb3">
354 <di:waypoint x="810" y="544" />
355 <di:waypoint x="918" y="544" />
357 <bpmndi:BPMNShape id="Event_07tr56z_di" bpmnElement="Event_07tr56z">
358 <dc:Bounds x="280" y="526" width="36" height="36" />
360 <bpmndi:BPMNShape id="Event_02arrfq_di" bpmnElement="Event_02arrfq">
361 <dc:Bounds x="918" y="526" width="36" height="36" />
363 <bpmndi:BPMNShape id="Activity_1150yu6_di" bpmnElement="Activity_1150yu6">
364 <dc:Bounds x="710" y="504" width="100" height="80" />
366 <bpmndi:BPMNShape id="Activity_0sqggtb_di" bpmnElement="Activity_0sqggtb">
367 <dc:Bounds x="380" y="504" width="100" height="80" />
369 <bpmndi:BPMNShape id="Activity_1btidug_di" bpmnElement="Activity_1btidug">
370 <dc:Bounds x="540" y="504" width="100" height="80" />
373 </bpmndi:BPMNDiagram>