1 <?xml version="1.0" encoding="UTF-8"?>
\r
2 <definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
\r
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:activiti="http://activiti.org/bpmn"
\r
4 xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC"
\r
5 xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema"
\r
6 expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
\r
7 <process id="nsinit" isExecutable="true">
\r
9 <dataObject id="vlCount" name="vlCount">
\r
11 <activiti:value><![CDATA[3]]></activiti:value>
\r
12 </extensionElements>
\r
14 <dataObject id="vnfCount" name="vnfCount">
\r
16 <activiti:value><![CDATA[2]]></activiti:value>
\r
17 </extensionElements>
\r
19 <dataObject id="sfcCount" name="sfcCount">
\r
21 <activiti:value><![CDATA[4]]></activiti:value>
\r
22 </extensionElements>
\r
24 <dataObject id="object_context" name="object_context">
\r
26 <activiti:value><![CDATA[object_context1]]></activiti:value>
\r
27 </extensionElements>
\r
29 <dataObject id="nsInstanceId" name="nsInstanceId">
\r
31 <activiti:value><![CDATA[nsInstanceId1]]></activiti:value>
\r
32 </extensionElements>
\r
34 <dataObject id="object_additionalParamForNs" name="object_additionalParamForNs">
\r
36 <activiti:value><![CDATA[object_additionalParamForNs1]]></activiti:value>
\r
37 </extensionElements>
\r
39 <dataObject id="object_additionalParamForVnf" name="object_additionalParamForVnf">
\r
41 <activiti:value><![CDATA[object_additionalParamForVnf1]]></activiti:value>
\r
42 </extensionElements>
\r
44 <dataObject id="jobId" name="jobId">
\r
46 <activiti:value><![CDATA[jobId1]]></activiti:value>
\r
47 </extensionElements>
\r
49 <dataObject id="sdnControllerId" name="sdnControllerId">
\r
51 <activiti:value><![CDATA[sdnControllerId1]]></activiti:value>
\r
52 </extensionElements>
\r
54 <dataObject id="templateid" name="templateid">
\r
56 <activiti:value><![CDATA[templateid1]]></activiti:value>
\r
57 </extensionElements>
\r
59 <dataObject id="instanceid" name="instanceid">
\r
61 <activiti:value><![CDATA[instanceid1]]></activiti:value>
\r
62 </extensionElements>
\r
64 <dataObject id="sdnolcmurl" name="sdnolcmurl">
\r
66 <activiti:value><![CDATA[sdnolcmurl1]]></activiti:value>
\r
67 </extensionElements>
\r
69 <dataObject id="statusurl" name="statusurl">
\r
71 <activiti:value><![CDATA[statusurl1]]></activiti:value>
\r
72 </extensionElements>
\r
76 <!-- Perform bpmn elements -->
\r
78 <startEvent id="node0" name="startEvent">
\r
80 <activiti:formProperty id="vlCount" name="vlCount" default="3" type="string"></activiti:formProperty>
\r
81 <activiti:formProperty id="vnfCount" name="vnfCount" default="2" type="string"></activiti:formProperty>
\r
82 <activiti:formProperty id="sfcCount" name="sfcCount" default="4" type="string"></activiti:formProperty>
\r
83 <activiti:formProperty id="object_context" name="object_context" default="object_context1" type="string"></activiti:formProperty>
\r
84 <activiti:formProperty id="nsInstanceId" name="nsInstanceId" default="nsInstanceId1" type="string"></activiti:formProperty>
\r
85 <activiti:formProperty id="object_additionalParamForNs" name="object_additionalParamForNs" default="object_additionalParamForNs1" type="string"></activiti:formProperty>
\r
86 <activiti:formProperty id="object_additionalParamForVnf" name="object_additionalParamForVnf" default="object_additionalParamForVnf1" type="string"></activiti:formProperty>
\r
87 <activiti:formProperty id="jobId" name="jobId" default="jobId1" type="string"></activiti:formProperty>
\r
88 <activiti:formProperty id="sdnControllerId" name="sdnControllerId" default="sdnControllerId1" type="string"></activiti:formProperty>
\r
89 <activiti:formProperty id="templateid" name="templateid" default="templateid1" type="string"></activiti:formProperty>
\r
90 <activiti:formProperty id="instanceid" name="instanceid" default="instanceid1" type="string"></activiti:formProperty>
\r
91 <activiti:formProperty id="sdnolcmurl" name="sdnolcmurl" default="sdnolcmurl1" type="string"></activiti:formProperty>
\r
92 <activiti:formProperty id="statusurl" name="statusurl" default="statusurl1" type="string"></activiti:formProperty>
\r
93 </extensionElements>
\r
96 <exclusiveGateway id="node1" name="exclusiveGateway"></exclusiveGateway> <scriptTask id="node2" name="scriptTask" scriptFormat="javascript" activiti:autoStoreVariables="false">
\r
97 <script><![CDATA[execution.setVariable("vl_index", 1);
98 execution.setVariable("vl_status", "active");]]></script>
\r
101 <serviceTask id="node3" name="createVL" activiti:class="com.zte.ums.workflow.activitiext.restservicetask.HttpUtil">
\r
102 <extensionElements>
\r
103 <activiti:field name="url">
\r
104 <activiti:string><![CDATA[/api/nslcm/v1]]></activiti:string>
\r
106 <activiti:field name="name">
\r
107 <activiti:string><![CDATA[nslcm]]></activiti:string>
\r
109 <activiti:field name="version">
\r
110 <activiti:string><![CDATA[v1]]></activiti:string>
\r
112 <activiti:field name="path">
\r
113 <activiti:string><![CDATA[/ns/vls]]></activiti:string>
\r
115 <activiti:field name="method">
\r
116 <activiti:string><![CDATA[post]]></activiti:string>
\r
118 <activiti:field name="accept">
\r
119 <activiti:string><![CDATA[[application/json]]]></activiti:string>
\r
121 <activiti:field name="contentType">
\r
122 <activiti:string><![CDATA[[application/json]]]></activiti:string>
\r
124 <activiti:field name="parameters">
\r
125 <activiti:string><![CDATA[[{"description":"","name":"body","position":"body","required":true,"type":"String","value":{"value":{"vnfInstanceData":{"value":[],"valueSource":"Definition"},"additionalParamForVnf":{"value":"${object_additionalParamForVnf}","valueSource":"Variable"},"nsInstanceId":{"value":"${nsInstanceId}","valueSource":"Variable"},"flavourId":{"value":"","valueSource":"String"},"pnfInfo":{"value":[],"valueSource":"Definition"},"extNSVirtualLink":{"value":[],"valueSource":"Definition"},"additionalParamForNs":{"value":"${object_additionalParamForNs}","valueSource":"Variable"},"context":{"value":"${object_context}","valueSource":"Variable"},"sapData":{"value":[],"valueSource":"Definition"},"nestedNsInstanceId":{"value":[],"valueSource":"Definition"},"jobId":{"value":"","valueSource":"String"},"locationConstraints":{"value":[],"valueSource":"Definition"},"vlIndex":{"value":"${vl_index}","valueSource":"Variable"}},"valueSource":"Definition"}}]]]></activiti:string>
\r
127 </extensionElements>
\r
129 <scriptTask id="node4" name="scriptTask" scriptFormat="javascript" activiti:autoStoreVariables="false">
\r
130 <script><![CDATA[execution.setVariable("vl_index", vl_index+1);
132 vl_status = node3.responseBody.result;
134 vl_status = vl_status.replace(/0/g,"");
135 vl_status += 'active';
136 execution.setVariable("vl_status", vl_status);
144 <serviceTask id="node5" name="jobstatus" activiti:class="com.zte.ums.workflow.activitiext.restservicetask.HttpUtil">
\r
145 <extensionElements>
\r
146 <activiti:field name="url">
\r
147 <activiti:string><![CDATA[/api/nslcm/v1]]></activiti:string>
\r
149 <activiti:field name="name">
\r
150 <activiti:string><![CDATA[nslcm]]></activiti:string>
\r
152 <activiti:field name="version">
\r
153 <activiti:string><![CDATA[v1]]></activiti:string>
\r
155 <activiti:field name="path">
\r
156 <activiti:string><![CDATA[/jobs/{jobId}]]></activiti:string>
\r
158 <activiti:field name="method">
\r
159 <activiti:string><![CDATA[post]]></activiti:string>
\r
161 <activiti:field name="parameters">
\r
162 <activiti:string><![CDATA[[{"description":"","name":"jobId","position":"path","required":true,"type":"String","value":"${jobId}","valueSource":"Variable"}, {"description":"","name":"body","position":"body","required":true,"type":"String","value":{"value":{"progress":{"value":"20","valueSource":"String"},"errcode":{"value":"${vl_status}","valueSource":"Variable"},"desc":{"value":"","valueSource":"String"}},"valueSource":"Definition"}}]]]></activiti:string>
\r
164 </extensionElements>
\r
166 <scriptTask id="node6" name="scriptTask" scriptFormat="javascript" activiti:autoStoreVariables="false">
\r
167 <script><![CDATA[execution.setVariable("vnf_index", 1);
168 execution.setVariable("vnf_status", "active");]]></script>
\r
171 <exclusiveGateway id="node7" name="exclusiveGateway"></exclusiveGateway>
\r
172 <serviceTask id="node8" name="createVNF" activiti:class="com.zte.ums.workflow.activitiext.restservicetask.HttpUtil">
\r
173 <extensionElements>
\r
174 <activiti:field name="url">
\r
175 <activiti:string><![CDATA[/api/nslcm/v1]]></activiti:string>
\r
177 <activiti:field name="name">
\r
178 <activiti:string><![CDATA[nslcm]]></activiti:string>
\r
180 <activiti:field name="version">
\r
181 <activiti:string><![CDATA[v1]]></activiti:string>
\r
183 <activiti:field name="path">
\r
184 <activiti:string><![CDATA[/ns/vnfs]]></activiti:string>
\r
186 <activiti:field name="method">
\r
187 <activiti:string><![CDATA[post]]></activiti:string>
\r
189 <activiti:field name="accept">
\r
190 <activiti:string><![CDATA[[application/json]]]></activiti:string>
\r
192 <activiti:field name="contentType">
\r
193 <activiti:string><![CDATA[[application/json]]]></activiti:string>
\r
195 <activiti:field name="parameters">
\r
196 <activiti:string><![CDATA[[{"description":"","name":"body","position":"body","required":true,"type":"String","value":{"value":{"vnfInstanceData":{"value":[],"valueSource":"Definition"},"vnfIndex":{"value":"${vnf_index}","valueSource":"Variable"},"additionalParamForVnf":{"value":"${object_additionalParamForVnf}","valueSource":"Variable"},"nsInstanceId":{"value":"${nsInstanceId}","valueSource":"String"},"flavourId":{"value":"","valueSource":"String"},"pnfInfo":{"value":[],"valueSource":"Definition"},"extNSVirtualLink":{"value":[],"valueSource":"Definition"},"additionalParamForNs":{"value":"${object_additionalParamForNs}","valueSource":"Variable"},"context":{"value":"${object_context}","valueSource":"String"},"sapData":{"value":[],"valueSource":"Definition"},"nestedNsInstanceId":{"value":[],"valueSource":"Definition"},"jobId":{"value":"","valueSource":"String"},"locationConstraints":{"value":[],"valueSource":"Definition"}},"valueSource":"Definition"}}]]]></activiti:string>
\r
198 </extensionElements>
\r
200 <scriptTask id="node9" name="scriptTask" scriptFormat="javascript" activiti:autoStoreVariables="false">
\r
201 <script><![CDATA[execution.setVariable("vnf_index", vnf_index+1);]]></script>
\r
204 <serviceTask id="node10" name="restTask" activiti:class="com.zte.ums.workflow.activitiext.restservicetask.HttpUtil">
\r
205 <extensionElements>
\r
206 <activiti:field name="url">
\r
207 <activiti:string><![CDATA[/api/nslcm/v1]]></activiti:string>
\r
209 <activiti:field name="name">
\r
210 <activiti:string><![CDATA[nslcm]]></activiti:string>
\r
212 <activiti:field name="version">
\r
213 <activiti:string><![CDATA[v1]]></activiti:string>
\r
215 <activiti:field name="path">
\r
216 <activiti:string><![CDATA[/ns/vnfs/{vnfInstId}]]></activiti:string>
\r
218 <activiti:field name="method">
\r
219 <activiti:string><![CDATA[get]]></activiti:string>
\r
221 <activiti:field name="accept">
\r
222 <activiti:string><![CDATA[[application/json]]]></activiti:string>
\r
224 <activiti:field name="contentType">
\r
225 <activiti:string><![CDATA[[application/json]]]></activiti:string>
\r
227 <activiti:field name="parameters">
\r
228 <activiti:string><![CDATA[[{"description":"","name":"vnfInstId","position":"path","required":true,"type":"String","value":"[node8].[responseBody].[vnfInstId]","valueSource":"Plan"}]]]></activiti:string>
\r
230 </extensionElements>
\r
233 <exclusiveGateway id="node11" name="exclusiveGateway"></exclusiveGateway>
\r
234 <serviceTask id="node13" name="jobstatus" activiti:class="com.zte.ums.workflow.activitiext.restservicetask.HttpUtil">
\r
235 <extensionElements>
\r
236 <activiti:field name="url">
\r
237 <activiti:string><![CDATA[/api/nslcm/v1]]></activiti:string>
\r
239 <activiti:field name="name">
\r
240 <activiti:string><![CDATA[nslcm]]></activiti:string>
\r
242 <activiti:field name="version">
\r
243 <activiti:string><![CDATA[v1]]></activiti:string>
\r
245 <activiti:field name="path">
\r
246 <activiti:string><![CDATA[/jobs/{jobId}]]></activiti:string>
\r
248 <activiti:field name="method">
\r
249 <activiti:string><![CDATA[post]]></activiti:string>
\r
251 <activiti:field name="parameters">
\r
252 <activiti:string><![CDATA[[{"description":"","name":"jobId","position":"path","required":true,"type":"String","value":"[jobId]","valueSource":"Plan"}, {"description":"","name":"body","position":"body","required":true,"type":"String","value":{"value":{"progress":{"value":"60","valueSource":"String"},"errcode":{"value":"${vnf_status}","valueSource":"Variable"},"desc":{"value":"","valueSource":"String"}},"valueSource":"Definition"}}]]]></activiti:string>
\r
254 </extensionElements>
\r
256 <scriptTask id="node14" name="scriptTask" scriptFormat="javascript" activiti:autoStoreVariables="false">
\r
257 <script><![CDATA[execution.setVariable("sfc_index", 1);
258 execution.setVariable("sfc_status", "active");]]></script>
\r
261 <exclusiveGateway id="node15" name="exclusiveGateway"></exclusiveGateway>
\r
262 <serviceTask id="node16" name="createSFC" activiti:class="com.zte.ums.workflow.activitiext.restservicetask.HttpUtil">
\r
263 <extensionElements>
\r
264 <activiti:field name="url">
\r
265 <activiti:string><![CDATA[/api/nslcm/v1]]></activiti:string>
\r
267 <activiti:field name="name">
\r
268 <activiti:string><![CDATA[nslcm]]></activiti:string>
\r
270 <activiti:field name="version">
\r
271 <activiti:string><![CDATA[v1]]></activiti:string>
\r
273 <activiti:field name="path">
\r
274 <activiti:string><![CDATA[/ns/sfcs]]></activiti:string>
\r
276 <activiti:field name="method">
\r
277 <activiti:string><![CDATA[post]]></activiti:string>
\r
279 <activiti:field name="accept">
\r
280 <activiti:string><![CDATA[[application/json]]]></activiti:string>
\r
282 <activiti:field name="contentType">
\r
283 <activiti:string><![CDATA[[application/json]]]></activiti:string>
\r
285 <activiti:field name="parameters">
\r
286 <activiti:string><![CDATA[[{"description":"","name":"body","position":"body","required":true,"type":"String","value":{"value":{"sdnControllerId":{"value":"[sdnControllerId]","valueSource":"Plan"},"vnfInstanceData":{"value":[],"valueSource":"Definition"},"additionalParamForVnf":{"value":"[object_additionalParamForVnf]","valueSource":"Plan"},"nsInstanceId":{"value":"[nsInstanceId]","valueSource":"Plan"},"jobId":{"value":"","valueSource":"String"},"additionalParamForNs":{"value":"[object_additionalParamForNs]","valueSource":"Plan"},"context":{"value":"${object_context}","valueSource":"String"},"sapData":{"value":[],"valueSource":"Definition"},"fpindex":{"value":"${sfc_index}","valueSource":"String"}},"valueSource":"Definition"}}]]]></activiti:string>
\r
288 </extensionElements>
\r
291 <serviceTask id="node17" name="querySFC" activiti:class="com.zte.ums.workflow.activitiext.restservicetask.HttpUtil">
\r
292 <extensionElements>
\r
293 <activiti:field name="url">
\r
294 <activiti:string><![CDATA[/api/nslcm/v1]]></activiti:string>
\r
296 <activiti:field name="name">
\r
297 <activiti:string><![CDATA[nslcm]]></activiti:string>
\r
299 <activiti:field name="version">
\r
300 <activiti:string><![CDATA[v1]]></activiti:string>
\r
302 <activiti:field name="path">
\r
303 <activiti:string><![CDATA[/ns/sfcs/{sfcInstId}]]></activiti:string>
\r
305 <activiti:field name="method">
\r
306 <activiti:string><![CDATA[get]]></activiti:string>
\r
308 <activiti:field name="accept">
\r
309 <activiti:string><![CDATA[[application/json]]]></activiti:string>
\r
311 <activiti:field name="contentType">
\r
312 <activiti:string><![CDATA[[application/json]]]></activiti:string>
\r
314 <activiti:field name="parameters">
\r
315 <activiti:string><![CDATA[[{"description":"","name":"sfcInstId","position":"path","required":true,"type":"String","value":"[node16].[responseBody].[sfcInstId]","valueSource":"Plan"}]]]></activiti:string>
\r
317 </extensionElements>
\r
320 <exclusiveGateway id="node18" name="exclusiveGateway"></exclusiveGateway>
\r
321 <intermediateCatchEvent id="node19" name="intermediateCatchEvent">
\r
322 <timerEventDefinition>
\r
323 <timeDuration><![CDATA[PT10S]]></timeDuration>
\r
324 </timerEventDefinition>
\r
325 </intermediateCatchEvent>
\r
326 <scriptTask id="node20" name="scriptTask" scriptFormat="javascript" activiti:autoStoreVariables="false">
\r
327 <script><![CDATA[execution.setVariable("sfc_index", sfc_index + 1);]]></script>
\r
330 <serviceTask id="node21" name="jobstatus" activiti:class="com.zte.ums.workflow.activitiext.restservicetask.HttpUtil">
\r
331 <extensionElements>
\r
332 <activiti:field name="url">
\r
333 <activiti:string><![CDATA[/api/nslcm/v1]]></activiti:string>
\r
335 <activiti:field name="name">
\r
336 <activiti:string><![CDATA[nslcm]]></activiti:string>
\r
338 <activiti:field name="version">
\r
339 <activiti:string><![CDATA[v1]]></activiti:string>
\r
341 <activiti:field name="path">
\r
342 <activiti:string><![CDATA[/jobs/{jobId}]]></activiti:string>
\r
344 <activiti:field name="method">
\r
345 <activiti:string><![CDATA[post]]></activiti:string>
\r
347 <activiti:field name="parameters">
\r
348 <activiti:string><![CDATA[[{"description":"","name":"jobId","position":"path","required":true,"type":"String","value":"[jobId]","valueSource":"Plan"}, {"description":"","name":"body","position":"body","required":true,"type":"String","value":{"value":{"progress":{"value":"80","valueSource":"String"},"errcode":{"value":"${sfc_status}","valueSource":"Variable"},"desc":{"value":"","valueSource":"String"}},"valueSource":"Definition"}}]]]></activiti:string>
\r
350 </extensionElements>
\r
353 <serviceTask id="node23" name="post_do" activiti:class="com.zte.ums.workflow.activitiext.restservicetask.HttpUtil">
\r
354 <extensionElements>
\r
355 <activiti:field name="url">
\r
356 <activiti:string><![CDATA[/api/nslcm/v1]]></activiti:string>
\r
358 <activiti:field name="name">
\r
359 <activiti:string><![CDATA[nslcm]]></activiti:string>
\r
361 <activiti:field name="version">
\r
362 <activiti:string><![CDATA[v1]]></activiti:string>
\r
364 <activiti:field name="path">
\r
365 <activiti:string><![CDATA[/ns/{nsInstanceId}/postdeal]]></activiti:string>
\r
367 <activiti:field name="method">
\r
368 <activiti:string><![CDATA[post]]></activiti:string>
\r
370 <activiti:field name="accept">
\r
371 <activiti:string><![CDATA[[application/json]]]></activiti:string>
\r
373 <activiti:field name="contentType">
\r
374 <activiti:string><![CDATA[[application/json]]]></activiti:string>
\r
376 <activiti:field name="parameters">
\r
377 <activiti:string><![CDATA[[{"description":"","name":"nsInstanceId","position":"path","required":true,"type":"String","value":"[nsInstanceId]","valueSource":"Plan"}, {"description":"","name":"body","position":"body","required":true,"type":"String","value":{"value":{"status":{"value":"${exec_status}","valueSource":"Variable"}},"valueSource":"Definition"}}]]]></activiti:string>
\r
379 </extensionElements>
\r
382 <serviceTask id="node24" name="jobstatus" activiti:class="com.zte.ums.workflow.activitiext.restservicetask.HttpUtil">
\r
383 <extensionElements>
\r
384 <activiti:field name="url">
\r
385 <activiti:string><![CDATA[/api/nslcm/v1]]></activiti:string>
\r
387 <activiti:field name="name">
\r
388 <activiti:string><![CDATA[nslcm]]></activiti:string>
\r
390 <activiti:field name="version">
\r
391 <activiti:string><![CDATA[v1]]></activiti:string>
\r
393 <activiti:field name="path">
\r
394 <activiti:string><![CDATA[/jobs/{jobId}]]></activiti:string>
\r
396 <activiti:field name="method">
\r
397 <activiti:string><![CDATA[post]]></activiti:string>
\r
399 <activiti:field name="parameters">
\r
400 <activiti:string><![CDATA[[{"description":"","name":"jobId","position":"path","required":true,"type":"String","value":"[jobId]","valueSource":"Plan"}, {"description":"","name":"body","position":"body","required":true,"type":"String","value":{"value":{"progress":{"value":"100","valueSource":"String"},"errcode":{"value":"${exec_status}","valueSource":"Variable"},"desc":{"value":"","valueSource":"String"}},"valueSource":"Definition"}}]]]></activiti:string>
\r
402 </extensionElements>
\r
406 <endEvent id="node25" name="endEvent">
\r
409 <intermediateCatchEvent id="node12" name="intermediateCatchEvent">
\r
410 <timerEventDefinition>
\r
411 <timeDuration><![CDATA[PT10S]]></timeDuration>
\r
412 </timerEventDefinition>
\r
413 </intermediateCatchEvent>
\r
414 <scriptTask id="node26" name="scriptTask" scriptFormat="javascript" activiti:autoStoreVariables="false">
\r
416 execution.setVariable("vnf_status", node10.responseBody.vnfStatus);]]></script>
\r
418 <scriptTask id="node27" name="scriptTask" scriptFormat="javascript" activiti:autoStoreVariables="false">
\r
419 <script><![CDATA[execution.setVariable("sfc_status", node17.responseBody.sfcStatus);]]></script>
\r
421 <scriptTask id="node28" name="scriptTask" scriptFormat="javascript" activiti:autoStoreVariables="false">
\r
422 <script><![CDATA[// starts-with($vl_status,'active') and contains($vnf_status,'active') and contains($sfc_status,'active')
424 exec_status = vl_status.indexOf('active') == 0 && vnf_status.indexOf('active') != -1 && sfc_status.indexOf('active') != -1
426 execution.setVariable("exec_status", exec_status );]]></script>
\r
429 <!-- Perform bpmn sequence flow -->
\r
430 <sequenceFlow id="node0node2" sourceRef="node0" targetRef="node2">
\r
431 </sequenceFlow> <sequenceFlow id="node1node3" sourceRef="node1" targetRef="node3">
\r
432 <conditionExpression xsi:type="tFormalExpression"><![CDATA[${(vl_index<=vlCount) and (vl_status=='active')}]]></conditionExpression>
\r
433 </sequenceFlow> <sequenceFlow id="node1node5" sourceRef="node1" targetRef="node5">
\r
434 <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!((vl_index<=vlCount) and (vl_status=='active'))}]]></conditionExpression>
\r
435 </sequenceFlow> <sequenceFlow id="node2node1" sourceRef="node2" targetRef="node1">
\r
436 </sequenceFlow> <sequenceFlow id="node3node4" sourceRef="node3" targetRef="node4">
\r
437 </sequenceFlow> <sequenceFlow id="node4node1" sourceRef="node4" targetRef="node1">
\r
438 </sequenceFlow> <sequenceFlow id="node5node6" sourceRef="node5" targetRef="node6">
\r
439 </sequenceFlow> <sequenceFlow id="node6node7" sourceRef="node6" targetRef="node7">
\r
440 </sequenceFlow> <sequenceFlow id="node7node8" sourceRef="node7" targetRef="node8">
\r
441 <conditionExpression xsi:type="tFormalExpression"><![CDATA[${vnf_index<=vnfCount and vl_status=='active' and vnf_status=='active'}]]></conditionExpression>
\r
442 </sequenceFlow> <sequenceFlow id="node7node13" sourceRef="node7" targetRef="node13">
\r
443 <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!(vnf_index<=vnfCount and vl_status=='active' and vnf_status=='active')}]]></conditionExpression>
\r
444 </sequenceFlow> <sequenceFlow id="node8node12" sourceRef="node8" targetRef="node12">
\r
445 </sequenceFlow> <sequenceFlow id="node9node7" sourceRef="node9" targetRef="node7">
\r
446 </sequenceFlow> <sequenceFlow id="node10node26" sourceRef="node10" targetRef="node26">
\r
447 </sequenceFlow> <sequenceFlow id="node11node9" sourceRef="node11" targetRef="node9">
\r
448 <conditionExpression xsi:type="tFormalExpression"><![CDATA[${vnf_status=='active' or vnf_status=='failed'}]]></conditionExpression>
\r
449 </sequenceFlow> <sequenceFlow id="node11node12" sourceRef="node11" targetRef="node12">
\r
450 <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!(vnf_status=='active' or vnf_status=='failed')}]]></conditionExpression>
\r
451 </sequenceFlow> <sequenceFlow id="node13node14" sourceRef="node13" targetRef="node14">
\r
452 </sequenceFlow> <sequenceFlow id="node14node15" sourceRef="node14" targetRef="node15">
\r
453 </sequenceFlow> <sequenceFlow id="node15node16" sourceRef="node15" targetRef="node16">
\r
454 <conditionExpression xsi:type="tFormalExpression"><![CDATA[${sfc_index<=sfcCount and vl_status=='active' and vnf_status=='active' and sfc_status=='active'}]]></conditionExpression>
\r
455 </sequenceFlow> <sequenceFlow id="node15node21" sourceRef="node15" targetRef="node21">
\r
456 <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!(sfc_index<=sfcCount and vl_status=='active' and vnf_status=='active' and sfc_status=='active')}]]></conditionExpression>
\r
457 </sequenceFlow> <sequenceFlow id="node16node19" sourceRef="node16" targetRef="node19">
\r
458 </sequenceFlow> <sequenceFlow id="node17node27" sourceRef="node17" targetRef="node27">
\r
459 </sequenceFlow> <sequenceFlow id="node18node19" sourceRef="node18" targetRef="node19">
\r
460 <conditionExpression xsi:type="tFormalExpression"><![CDATA[${!(sfc_status=='active' or sfc_status=='failed')}]]></conditionExpression>
\r
461 </sequenceFlow> <sequenceFlow id="node18node20" sourceRef="node18" targetRef="node20">
\r
462 <conditionExpression xsi:type="tFormalExpression"><![CDATA[${sfc_status=='active' or sfc_status=='failed'}]]></conditionExpression>
\r
463 </sequenceFlow> <sequenceFlow id="node19node17" sourceRef="node19" targetRef="node17">
\r
464 </sequenceFlow> <sequenceFlow id="node20node15" sourceRef="node20" targetRef="node15">
\r
465 </sequenceFlow> <sequenceFlow id="node21node28" sourceRef="node21" targetRef="node28">
\r
466 </sequenceFlow> <sequenceFlow id="node23node24" sourceRef="node23" targetRef="node24">
\r
467 </sequenceFlow> <sequenceFlow id="node24node25" sourceRef="node24" targetRef="node25">
\r
468 </sequenceFlow> <sequenceFlow id="node12node10" sourceRef="node12" targetRef="node10">
\r
469 </sequenceFlow> <sequenceFlow id="node26node11" sourceRef="node26" targetRef="node11">
\r
470 </sequenceFlow> <sequenceFlow id="node27node18" sourceRef="node27" targetRef="node18">
\r
471 </sequenceFlow> <sequenceFlow id="node28node23" sourceRef="node28" targetRef="node23">
\r