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="_GraPIIyxEeWmdMDkx6Uftw" targetNamespace="http://camunda.org/schema/1.0/bpmn" exporter="Camunda Modeler" exporterVersion="1.10.0" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
3 <bpmn2:process id="vnfAdapterTask" name="vnfAdapterTask" isExecutable="true">
4 <bpmn2:endEvent id="EndEvent_6">
5 <bpmn2:incoming>SequenceFlow_13uy51h</bpmn2:incoming>
7 <bpmn2:startEvent id="StartEvent_1">
8 <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>
10 <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="StartEvent_1" targetRef="executeOpenstackAction" />
11 <bpmn2:serviceTask id="executeOpenstackAction" name=" Openstack Action (resource) " camunda:asyncAfter="true" camunda:type="external" camunda:topic="OpenstackAdapterInvoke">
12 <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>
13 <bpmn2:outgoing>SequenceFlow_1ff2y8j</bpmn2:outgoing>
15 <bpmn2:sequenceFlow id="SequenceFlow_1ff2y8j" sourceRef="executeOpenstackAction" targetRef="ExclusiveGateway_08a6you" />
16 <bpmn2:serviceTask id="ServiceTask_11iuzx9" name=" Openstack Query (resource) " camunda:asyncAfter="true" camunda:type="external" camunda:topic="OpenstackAdapterPolling">
17 <bpmn2:incoming>SequenceFlow_1p39f4r</bpmn2:incoming>
18 <bpmn2:outgoing>SequenceFlow_0ecut35</bpmn2:outgoing>
20 <bpmn2:sequenceFlow id="SequenceFlow_0ecut35" sourceRef="ServiceTask_11iuzx9" targetRef="ExclusiveGateway_1fn953y" />
21 <bpmn2:exclusiveGateway id="ExclusiveGateway_1fn953y" name="Success?">
22 <bpmn2:incoming>SequenceFlow_0ecut35</bpmn2:incoming>
23 <bpmn2:outgoing>SequenceFlow_13uy51h</bpmn2:outgoing>
24 <bpmn2:outgoing>SequenceFlow_0o8wnkx</bpmn2:outgoing>
25 </bpmn2:exclusiveGateway>
26 <bpmn2:sequenceFlow id="SequenceFlow_13uy51h" name="Yes" sourceRef="ExclusiveGateway_1fn953y" targetRef="EndEvent_6">
27 <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("OpenstackPollSuccess") == true }]]></bpmn2:conditionExpression>
29 <bpmn2:sequenceFlow id="SequenceFlow_0o8wnkx" name="No" sourceRef="ExclusiveGateway_1fn953y" targetRef="EndEvent_1dt01ez">
30 <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("OpenstackPollSuccess") == false }]]></bpmn2:conditionExpression>
32 <bpmn2:exclusiveGateway id="ExclusiveGateway_08a6you" name="Success?">
33 <bpmn2:incoming>SequenceFlow_1ff2y8j</bpmn2:incoming>
34 <bpmn2:outgoing>SequenceFlow_1p39f4r</bpmn2:outgoing>
35 <bpmn2:outgoing>SequenceFlow_007m32h</bpmn2:outgoing>
36 </bpmn2:exclusiveGateway>
37 <bpmn2:sequenceFlow id="SequenceFlow_1p39f4r" name="Yes" sourceRef="ExclusiveGateway_08a6you" targetRef="ServiceTask_11iuzx9">
38 <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("OpenstackInvokeSuccess") == true }]]></bpmn2:conditionExpression>
40 <bpmn2:sequenceFlow id="SequenceFlow_007m32h" name="No" sourceRef="ExclusiveGateway_08a6you" targetRef="EndEvent_0rxprkw">
41 <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("OpenstackInvokeSuccess") == false }]]></bpmn2:conditionExpression>
43 <bpmn2:subProcess id="SubProcess_0y17e8j" name="Error Handling" triggeredByEvent="true">
44 <bpmn2:startEvent id="StartEvent_17oglfe">
45 <bpmn2:outgoing>SequenceFlow_02rhau9</bpmn2:outgoing>
46 <bpmn2:errorEventDefinition />
48 <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_040yoan">
49 <bpmn2:incoming>SequenceFlow_0y1by9x</bpmn2:incoming>
50 <bpmn2:outgoing>SequenceFlow_006myq9</bpmn2:outgoing>
51 <bpmn2:compensateEventDefinition waitForCompletion="true" activityRef="executeOpenstackAction" />
52 </bpmn2:intermediateThrowEvent>
53 <bpmn2:exclusiveGateway id="ExclusiveGateway_0qlnby0" name="Poll Rollback Status?" default="SequenceFlow_1piwh1c">
54 <bpmn2:incoming>SequenceFlow_006myq9</bpmn2:incoming>
55 <bpmn2:outgoing>SequenceFlow_1ubla93</bpmn2:outgoing>
56 <bpmn2:outgoing>SequenceFlow_1piwh1c</bpmn2:outgoing>
57 </bpmn2:exclusiveGateway>
58 <bpmn2:sequenceFlow id="SequenceFlow_02rhau9" sourceRef="StartEvent_17oglfe" targetRef="ExclusiveGateway_18ndby1" />
59 <bpmn2:sequenceFlow id="SequenceFlow_006myq9" sourceRef="IntermediateThrowEvent_040yoan" targetRef="ExclusiveGateway_0qlnby0" />
60 <bpmn2:serviceTask id="ServiceTask_120p27h" name=" Openstack Query (resource) " camunda:asyncAfter="true" camunda:type="external" camunda:topic="OpenstackAdapterPolling">
61 <bpmn2:incoming>SequenceFlow_1ubla93</bpmn2:incoming>
62 <bpmn2:outgoing>SequenceFlow_1nku4uk</bpmn2:outgoing>
64 <bpmn2:exclusiveGateway id="ExclusiveGateway_0tuxj9l">
65 <bpmn2:incoming>SequenceFlow_1piwh1c</bpmn2:incoming>
66 <bpmn2:incoming>SequenceFlow_1nku4uk</bpmn2:incoming>
67 <bpmn2:outgoing>SequenceFlow_1yx80cq</bpmn2:outgoing>
68 </bpmn2:exclusiveGateway>
69 <bpmn2:serviceTask id="buildError" name=" Process Exception " camunda:expression="${ExceptionBuilder.processVnfAdapterException(execution)}">
70 <bpmn2:incoming>SequenceFlow_1yx80cq</bpmn2:incoming>
71 <bpmn2:incoming>SequenceFlow_1az3a2q</bpmn2:incoming>
72 <bpmn2:outgoing>SequenceFlow_0bnzfqb</bpmn2:outgoing>
74 <bpmn2:sequenceFlow id="SequenceFlow_1ubla93" name="Yes" sourceRef="ExclusiveGateway_0qlnby0" targetRef="ServiceTask_120p27h">
75 <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("PollRollbackStatus") == true}]]></bpmn2:conditionExpression>
77 <bpmn2:sequenceFlow id="SequenceFlow_1piwh1c" name="No" sourceRef="ExclusiveGateway_0qlnby0" targetRef="ExclusiveGateway_0tuxj9l" />
78 <bpmn2:sequenceFlow id="SequenceFlow_1nku4uk" sourceRef="ServiceTask_120p27h" targetRef="ExclusiveGateway_0tuxj9l" />
79 <bpmn2:sequenceFlow id="SequenceFlow_1yx80cq" sourceRef="ExclusiveGateway_0tuxj9l" targetRef="buildError" />
80 <bpmn2:sequenceFlow id="SequenceFlow_0bnzfqb" sourceRef="buildError" targetRef="EndEvent_1yiy2fi" />
81 <bpmn2:endEvent id="EndEvent_1yiy2fi">
82 <bpmn2:incoming>SequenceFlow_0bnzfqb</bpmn2:incoming>
83 <bpmn2:terminateEventDefinition />
85 <bpmn2:exclusiveGateway id="ExclusiveGateway_18ndby1" name="Rollback Resource?" default="SequenceFlow_1az3a2q">
86 <bpmn2:incoming>SequenceFlow_02rhau9</bpmn2:incoming>
87 <bpmn2:outgoing>SequenceFlow_0y1by9x</bpmn2:outgoing>
88 <bpmn2:outgoing>SequenceFlow_1az3a2q</bpmn2:outgoing>
89 </bpmn2:exclusiveGateway>
90 <bpmn2:sequenceFlow id="SequenceFlow_0y1by9x" name="Yes" sourceRef="ExclusiveGateway_18ndby1" targetRef="IntermediateThrowEvent_040yoan">
91 <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[#{execution.getVariable("backout") == true }]]></bpmn2:conditionExpression>
93 <bpmn2:sequenceFlow id="SequenceFlow_1az3a2q" name="No" sourceRef="ExclusiveGateway_18ndby1" targetRef="buildError" />
95 <bpmn2:boundaryEvent id="BoundaryEvent_1ysr7mk" attachedToRef="executeOpenstackAction">
96 <bpmn2:compensateEventDefinition />
97 </bpmn2:boundaryEvent>
98 <bpmn2:serviceTask id="Task_0zbd85n" name=" Openstack Rollback (resource) " isForCompensation="true" camunda:asyncAfter="true" camunda:type="external" camunda:topic="OpenstackAdapterRollback" />
99 <bpmn2:endEvent id="EndEvent_0rxprkw">
100 <bpmn2:incoming>SequenceFlow_007m32h</bpmn2:incoming>
101 <bpmn2:errorEventDefinition errorRef="Error_1" />
103 <bpmn2:endEvent id="EndEvent_1dt01ez">
104 <bpmn2:incoming>SequenceFlow_0o8wnkx</bpmn2:incoming>
105 <bpmn2:errorEventDefinition errorRef="Error_1" />
107 <bpmn2:association id="Association_1cnlu6p" associationDirection="One" sourceRef="BoundaryEvent_1ysr7mk" targetRef="Task_0zbd85n" />
109 <bpmn2:error id="Error_1" name="MSO Workflow Exception" errorCode="MSOWorkflowException" />
110 <bpmn2:message id="Message_1" name="WorkflowMessage" />
111 <bpmndi:BPMNDiagram id="BPMNDiagram_1">
112 <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="vnfAdapterTask">
113 <bpmndi:BPMNShape id="_BPMNShape_StartEvent_54" bpmnElement="StartEvent_1">
114 <dc:Bounds x="110" y="146" width="36" height="36" />
116 <dc:Bounds x="116" y="187" width="24" height="12" />
119 <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_StartEvent_54" targetElement="ServiceTask_0rcy900_di">
120 <di:waypoint xsi:type="dc:Point" x="146" y="164" />
121 <di:waypoint xsi:type="dc:Point" x="253" y="163" />
123 <dc:Bounds x="154.5" y="145.5" width="90" height="6" />
126 <bpmndi:BPMNShape id="_BPMNShape_EndEvent_158" bpmnElement="EndEvent_6">
127 <dc:Bounds x="929" y="146" width="36" height="36" />
129 <dc:Bounds x="924" y="187" width="46" height="12" />
132 <bpmndi:BPMNShape id="ServiceTask_0rcy900_di" bpmnElement="executeOpenstackAction">
133 <dc:Bounds x="253" y="124" width="100" height="80" />
135 <bpmndi:BPMNEdge id="SequenceFlow_1ff2y8j_di" bpmnElement="SequenceFlow_1ff2y8j">
136 <di:waypoint xsi:type="dc:Point" x="353" y="164" />
137 <di:waypoint xsi:type="dc:Point" x="404" y="164" />
139 <dc:Bounds x="333.5" y="139" width="90" height="20" />
142 <bpmndi:BPMNShape id="ServiceTask_11iuzx9_di" bpmnElement="ServiceTask_11iuzx9">
143 <dc:Bounds x="541" y="124" width="100" height="80" />
145 <bpmndi:BPMNEdge id="SequenceFlow_0ecut35_di" bpmnElement="SequenceFlow_0ecut35">
146 <di:waypoint xsi:type="dc:Point" x="641" y="164" />
147 <di:waypoint xsi:type="dc:Point" x="676" y="164" />
149 <dc:Bounds x="613.5" y="139" width="90" height="20" />
152 <bpmndi:BPMNShape id="ExclusiveGateway_1fn953y_di" bpmnElement="ExclusiveGateway_1fn953y" isMarkerVisible="true">
153 <dc:Bounds x="676" y="139" width="50" height="50" />
155 <dc:Bounds x="676" y="119" width="49" height="12" />
158 <bpmndi:BPMNEdge id="SequenceFlow_13uy51h_di" bpmnElement="SequenceFlow_13uy51h">
159 <di:waypoint xsi:type="dc:Point" x="726" y="164" />
160 <di:waypoint xsi:type="dc:Point" x="929" y="164" />
162 <dc:Bounds x="746.6875" y="166" width="19" height="12" />
165 <bpmndi:BPMNEdge id="SequenceFlow_0o8wnkx_di" bpmnElement="SequenceFlow_0o8wnkx">
166 <di:waypoint xsi:type="dc:Point" x="701" y="189" />
167 <di:waypoint xsi:type="dc:Point" x="701" y="249" />
169 <dc:Bounds x="706" y="198" width="14" height="12" />
172 <bpmndi:BPMNShape id="ServiceTask_120p27h_di" bpmnElement="ServiceTask_120p27h">
173 <dc:Bounds x="496" y="443" width="100" height="80" />
175 <bpmndi:BPMNShape id="ExclusiveGateway_08a6you_di" bpmnElement="ExclusiveGateway_08a6you" isMarkerVisible="true">
176 <dc:Bounds x="404" y="139" width="50" height="50" />
178 <dc:Bounds x="409" y="117" width="49" height="12" />
181 <bpmndi:BPMNEdge id="SequenceFlow_1p39f4r_di" bpmnElement="SequenceFlow_1p39f4r">
182 <di:waypoint xsi:type="dc:Point" x="454" y="164" />
183 <di:waypoint xsi:type="dc:Point" x="541" y="164" />
185 <dc:Bounds x="472" y="168" width="19" height="12" />
188 <bpmndi:BPMNEdge id="SequenceFlow_007m32h_di" bpmnElement="SequenceFlow_007m32h">
189 <di:waypoint xsi:type="dc:Point" x="429" y="189" />
190 <di:waypoint xsi:type="dc:Point" x="429" y="249" />
192 <dc:Bounds x="435" y="198" width="14" height="12" />
195 <bpmndi:BPMNShape id="SubProcess_09bkjg0_di" bpmnElement="SubProcess_0y17e8j" isExpanded="true">
196 <dc:Bounds x="151" y="404" width="787" height="344" />
198 <bpmndi:BPMNShape id="BoundaryEvent_04c5efr_di" bpmnElement="BoundaryEvent_1ysr7mk">
199 <dc:Bounds x="335" y="186" width="36" height="36" />
201 <dc:Bounds x="353" y="226" width="0" height="12" />
204 <bpmndi:BPMNEdge id="Association_1cnlu6p_di" bpmnElement="Association_1cnlu6p">
205 <di:waypoint xsi:type="dc:Point" x="353" y="222" />
206 <di:waypoint xsi:type="dc:Point" x="353" y="267" />
207 <di:waypoint xsi:type="dc:Point" x="321" y="267" />
209 <bpmndi:BPMNShape id="ServiceTask_0vacscp_di" bpmnElement="Task_0zbd85n">
210 <dc:Bounds x="221" y="227" width="100" height="80" />
212 <bpmndi:BPMNShape id="EndEvent_0lzcn0v_di" bpmnElement="EndEvent_0rxprkw">
213 <dc:Bounds x="411" y="249" width="36" height="36" />
215 <dc:Bounds x="429" y="288.658" width="0" height="12" />
218 <bpmndi:BPMNShape id="EndEvent_14424k5_di" bpmnElement="EndEvent_1dt01ez">
219 <dc:Bounds x="683" y="249" width="36" height="36" />
221 <dc:Bounds x="701" y="288.658" width="0" height="12" />
224 <bpmndi:BPMNShape id="StartEvent_1wrpebh_di" bpmnElement="StartEvent_17oglfe">
225 <dc:Bounds x="181" y="599" width="36" height="36" />
227 <dc:Bounds x="198.35199999999998" y="638.658" width="0" height="12" />
230 <bpmndi:BPMNShape id="IntermediateThrowEvent_0gltuh4_di" bpmnElement="IntermediateThrowEvent_040yoan">
231 <dc:Bounds x="365" y="529" width="36" height="36" />
233 <dc:Bounds x="382.352" y="569" width="0" height="12" />
236 <bpmndi:BPMNShape id="ExclusiveGateway_0qlnby0_di" bpmnElement="ExclusiveGateway_0qlnby0" isMarkerVisible="true">
237 <dc:Bounds x="429.352" y="522" width="50" height="50" />
239 <dc:Bounds x="484" y="535" width="62" height="24" />
242 <bpmndi:BPMNEdge id="SequenceFlow_02rhau9_di" bpmnElement="SequenceFlow_02rhau9">
243 <di:waypoint xsi:type="dc:Point" x="217" y="617" />
244 <di:waypoint xsi:type="dc:Point" x="284" y="617" />
246 <dc:Bounds x="250.5" y="596" width="0" height="12" />
249 <bpmndi:BPMNEdge id="SequenceFlow_006myq9_di" bpmnElement="SequenceFlow_006myq9">
250 <di:waypoint xsi:type="dc:Point" x="401" y="547" />
251 <di:waypoint xsi:type="dc:Point" x="429" y="547" />
253 <dc:Bounds x="415" y="526" width="0" height="12" />
256 <bpmndi:BPMNShape id="ExclusiveGateway_0tuxj9l_di" bpmnElement="ExclusiveGateway_0tuxj9l" isMarkerVisible="true">
257 <dc:Bounds x="608.352" y="522" width="50" height="50" />
259 <dc:Bounds x="633.352" y="576" width="0" height="12" />
262 <bpmndi:BPMNShape id="ServiceTask_108cgfw_di" bpmnElement="buildError">
263 <dc:Bounds x="695" y="577" width="100" height="80" />
265 <bpmndi:BPMNEdge id="SequenceFlow_1ubla93_di" bpmnElement="SequenceFlow_1ubla93">
266 <di:waypoint xsi:type="dc:Point" x="454" y="522" />
267 <di:waypoint xsi:type="dc:Point" x="454" y="483" />
268 <di:waypoint xsi:type="dc:Point" x="496" y="483" />
270 <dc:Bounds x="461" y="489" width="19" height="12" />
273 <bpmndi:BPMNEdge id="SequenceFlow_1piwh1c_di" bpmnElement="SequenceFlow_1piwh1c">
274 <di:waypoint xsi:type="dc:Point" x="454" y="572" />
275 <di:waypoint xsi:type="dc:Point" x="454" y="603" />
276 <di:waypoint xsi:type="dc:Point" x="633" y="603" />
277 <di:waypoint xsi:type="dc:Point" x="633" y="572" />
279 <dc:Bounds x="460" y="576.85" width="14" height="12" />
282 <bpmndi:BPMNEdge id="SequenceFlow_1nku4uk_di" bpmnElement="SequenceFlow_1nku4uk">
283 <di:waypoint xsi:type="dc:Point" x="596" y="483" />
284 <di:waypoint xsi:type="dc:Point" x="633" y="483" />
285 <di:waypoint xsi:type="dc:Point" x="633" y="522" />
287 <dc:Bounds x="614.5" y="462" width="0" height="12" />
290 <bpmndi:BPMNEdge id="SequenceFlow_1yx80cq_di" bpmnElement="SequenceFlow_1yx80cq">
291 <di:waypoint xsi:type="dc:Point" x="658" y="547" />
292 <di:waypoint xsi:type="dc:Point" x="745" y="547" />
293 <di:waypoint xsi:type="dc:Point" x="745" y="577" />
295 <dc:Bounds x="656.5" y="526" width="90" height="12" />
298 <bpmndi:BPMNEdge id="SequenceFlow_0bnzfqb_di" bpmnElement="SequenceFlow_0bnzfqb">
299 <di:waypoint xsi:type="dc:Point" x="795" y="617" />
300 <di:waypoint xsi:type="dc:Point" x="870" y="617" />
302 <dc:Bounds x="787.5" y="596" width="90" height="12" />
305 <bpmndi:BPMNShape id="EndEvent_1l1f6zj_di" bpmnElement="EndEvent_1yiy2fi">
306 <dc:Bounds x="870" y="599" width="36" height="36" />
308 <dc:Bounds x="887.352" y="639" width="0" height="12" />
311 <bpmndi:BPMNShape id="ExclusiveGateway_18ndby1_di" bpmnElement="ExclusiveGateway_18ndby1" isMarkerVisible="true">
312 <dc:Bounds x="284.352" y="592" width="50" height="50" />
314 <dc:Bounds x="338" y="605" width="54" height="24" />
317 <bpmndi:BPMNEdge id="SequenceFlow_0y1by9x_di" bpmnElement="SequenceFlow_0y1by9x">
318 <di:waypoint xsi:type="dc:Point" x="309" y="592" />
319 <di:waypoint xsi:type="dc:Point" x="309" y="547" />
320 <di:waypoint xsi:type="dc:Point" x="365" y="547" />
322 <dc:Bounds x="315" y="558" width="19" height="12" />
325 <bpmndi:BPMNEdge id="SequenceFlow_1az3a2q_di" bpmnElement="SequenceFlow_1az3a2q">
326 <di:waypoint xsi:type="dc:Point" x="309" y="642" />
327 <di:waypoint xsi:type="dc:Point" x="309" y="686" />
328 <di:waypoint xsi:type="dc:Point" x="745" y="686" />
329 <di:waypoint xsi:type="dc:Point" x="745" y="657" />
331 <dc:Bounds x="318" y="657" width="14" height="12" />
335 </bpmndi:BPMNDiagram>