3 "id": "2de211e6.98e23e",
\r
5 "name": "block : atomic",
\r
6 "xml": "<block atomic=\"true\">\n",
\r
11 "y": 381.0000009536743,
\r
12 "z": "f1f197ca.402af8",
\r
34 "id": "489fcd29.cfaa34",
\r
35 "type": "service-logic",
\r
36 "name": "GENERIC-RESOURCE-API ${project.version}",
\r
37 "module": "GENERIC-RESOURCE-API",
\r
38 "version": "${project.version}",
\r
40 "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
\r
42 "x": 310.00001525878906,
\r
43 "y": 164.99999237060547,
\r
44 "z": "f1f197ca.402af8",
\r
52 "id": "105708eb.457607",
\r
54 "name": "sdwan-vf-operation-vpn-create",
\r
55 "xml": "<method rpc='sdwan-vf-operation-vpn-create' mode='sync'>\n",
\r
58 "x": 309.00001525878906,
\r
59 "y": 264.99999237060547,
\r
60 "z": "f1f197ca.402af8",
\r
68 "id": "a574a3fb.d3201",
\r
72 "x": 139.50001525878906,
\r
74 "z": "f1f197ca.402af8",
\r
82 "id": "6436367.bae22c8",
\r
84 "name": "for each vnf",
\r
85 "xml": "<for index='idx' start='0' end='`$service-data.vnfs.vnf_length`' >\n",
\r
88 "x": 768.3294219970703,
\r
89 "y": 272.49612522125244,
\r
90 "z": "f1f197ca.402af8",
\r
98 "id": "a118e404.bdd118",
\r
99 "type": "switchNode",
\r
100 "name": "switch this vnf-id == input vnf-id",
\r
101 "xml": "<switch test=\"`$service-data.vnfs.vnf[$idx].vnf-id == $vf-module-topology-operation-input.vnf-information.vnf-id`\"> \n",
\r
104 "x": 1020.3295135498047,
\r
105 "y": 271.1627883911133,
\r
106 "z": "f1f197ca.402af8",
\r
114 "id": "948c1668.1af8e8",
\r
116 "name": "set vnf-index",
\r
117 "xml": "<set>\n<parameter name='vnf-index' value='`$idx`' />\n\n",
\r
119 "x": 1391.9960021972656,
\r
120 "y": 273.16279125213623,
\r
121 "z": "f1f197ca.402af8",
\r
125 "id": "40e93eeb.bac38",
\r
126 "type": "outcomeTrue",
\r
128 "xml": "<outcome value='true'>\n",
\r
131 "x": 1238.6628303527832,
\r
132 "y": 273.16277027130127,
\r
133 "z": "f1f197ca.402af8",
\r
141 "id": "e7ab9a67.b605f8",
\r
143 "name": "for loop idx - VF input parameters",
\r
144 "xml": "<for index=\"idx\" start=\"0\" end=\"`$vf-module-topology-operation-input.vf-module-request-input.vf-module-input-parameters.param_length`\">\n\n",
\r
147 "x": 842.2502059936523,
\r
148 "y": 494.66665840148926,
\r
149 "z": "f1f197ca.402af8",
\r
157 "id": "62290f8b.75c82",
\r
160 "xml": "<block>\n",
\r
164 "x": 1057.028549194336,
\r
165 "y": 492.2222423553467,
\r
166 "z": "f1f197ca.402af8",
\r
175 "id": "59b05bb9.0b68b4",
\r
177 "name": "execute split parameterName",
\r
178 "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$vf-module-topology-operation-input.vf-module-request-input.vf-module-input-parameters.param[$idx].name`'/>\n<parameter name=\"regex\" value=\"_\"/>\n<parameter name=\"ctx_memory_result_key\" value=\"param-prefix\"/>\n",
\r
181 "x": 1253.2847518920898,
\r
182 "y": 469.97038078308105,
\r
183 "z": "f1f197ca.402af8",
\r
189 "id": "72944c92.a776a4",
\r
191 "name": "set parameterName",
\r
192 "xml": "<set>\n<parameter name=\"`vf-module-topology-operation-input.vf-module-request-input.vf-module-input-parameters.param[$idx].name`\" value='`$param-prefix[$param-prefix_length -1]`'/>\n",
\r
194 "x": 1222.7291793823242,
\r
195 "y": 506.97049713134766,
\r
196 "z": "f1f197ca.402af8",
\r
200 "id": "d0552bf7.11fd78",
\r
202 "name": "Take the parameter names by removing prefix",
\r
205 "x": 1226.2504081726074,
\r
206 "y": 429.33332681655884,
\r
207 "z": "f1f197ca.402af8",
\r
211 "id": "1f79f37c.52109d",
\r
212 "type": "switchNode",
\r
213 "name": "switch vnf_length",
\r
214 "xml": "<switch test='`$service-data.vnfs.vnf_length`'>\n",
\r
217 "x": 782.7500152587891,
\r
218 "y": 227.9999942779541,
\r
219 "z": "f1f197ca.402af8",
\r
227 "id": "f848aa6e.cfe238",
\r
230 "xml": "<outcome value=''>\n",
\r
233 "x": 969.4166946411133,
\r
234 "y": 227.3332920074463,
\r
235 "z": "f1f197ca.402af8",
\r
243 "id": "63764309.2b5d2c",
\r
244 "type": "returnFailure",
\r
245 "name": "return failure",
\r
246 "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"There are no VNFs in MD-SAL\" />\n",
\r
248 "x": 1151.0833206176758,
\r
249 "y": 227.3332920074463,
\r
250 "z": "f1f197ca.402af8",
\r
254 "id": "86c4e83c.6dd4c8",
\r
255 "type": "switchNode",
\r
256 "name": "switch vf-modules.vf-module_length",
\r
257 "xml": "<switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module_length`'>\n",
\r
260 "x": 824.0000047683716,
\r
261 "y": 347.9999952316284,
\r
262 "z": "f1f197ca.402af8",
\r
271 "id": "47ea1345.69aafc",
\r
274 "xml": "<outcome value=''>\n",
\r
277 "x": 1055.000015258789,
\r
278 "y": 323.99999237060547,
\r
279 "z": "f1f197ca.402af8",
\r
287 "id": "1d47e1b9.b5ac9e",
\r
290 "xml": "<outcome value='Other'>\n",
\r
293 "x": 1055.000015258789,
\r
294 "y": 363.99999237060547,
\r
295 "z": "f1f197ca.402af8",
\r
303 "id": "4b7cf824.56d218",
\r
305 "name": "set vf-index",
\r
306 "xml": "<set>\n<parameter name='vf-index' value='0' />\n",
\r
308 "x": 1197.500015258789,
\r
309 "y": 323.99999237060547,
\r
310 "z": "f1f197ca.402af8",
\r
314 "id": "ff6c5552.af6328",
\r
317 "xml": "<block>\n",
\r
321 "x": 1199.3570594787598,
\r
322 "y": 363.9365043640137,
\r
323 "z": "f1f197ca.402af8",
\r
332 "id": "b3996c0f.5f9d2",
\r
334 "name": "set vf-index",
\r
335 "xml": "<set>\n<parameter name='vf-index' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module_length`' />\n\n\n",
\r
337 "x": 1352.055534362793,
\r
338 "y": 333.5556030566804,
\r
339 "z": "f1f197ca.402af8",
\r
343 "id": "34f94cf0.e3aea4",
\r
345 "name": "for each existing vf-index",
\r
346 "xml": "<for index='idx' start='0' end='`$vf-index`' >\n",
\r
349 "x": 1408.4840393066406,
\r
350 "y": 386.7777328491211,
\r
351 "z": "f1f197ca.402af8",
\r
359 "id": "f0d652ef.7b8d",
\r
361 "name": "make sure this network doesn't exist already",
\r
364 "x": 1632.1347694396973,
\r
365 "y": 345.03179025650024,
\r
366 "z": "f1f197ca.402af8",
\r
370 "id": "441d1901.20ad48",
\r
371 "type": "switchNode",
\r
372 "name": "switch vf-module-id found",
\r
373 "xml": "<switch test=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$idx].vf-module-id == $vf-module-topology-operation-input.vf-module-information.vf-module-id`\">\n",
\r
376 "x": 1683.769760131836,
\r
377 "y": 386.34923553466797,
\r
378 "z": "f1f197ca.402af8",
\r
386 "id": "d51340c3.db8f7",
\r
387 "type": "outcomeTrue",
\r
389 "xml": "<outcome value='true'>\n",
\r
392 "x": 1584.49995803833,
\r
393 "y": 444.9206666946411,
\r
394 "z": "f1f197ca.402af8",
\r
402 "id": "20af1164.21510e",
\r
403 "type": "returnFailure",
\r
404 "name": "return failure",
\r
405 "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$idx].vf-module-id already found in service-data\" />\n",
\r
407 "x": 1732.2500610351562,
\r
408 "y": 444.7778587634675,
\r
409 "z": "f1f197ca.402af8",
\r
413 "id": "240305a4.5a5a9a",
\r
415 "name": "copy input data to service data",
\r
416 "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-index].vf-module-id' value='`$prop.vpn-vf-index`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-index].vf-module-data.sdnc-request-header.' value='`$vf-module-topology-operation-input.sdnc-request-header.`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-index].vf-module-data.request-information.' value='`$vf-module-topology-operation-input.request-information.`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-index].vf-module-data.service-information.' value='`$vf-module-topology-operation-input.service-information.`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-index].vf-module-data.vnf-information.' value='`$vf-module-topology-operation-input.vnf-information.`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-index].vf-module-data.vf-module-information.' value='`$vf-module-topology-operation-input.vf-module-information.`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-index].vf-module-data.vf-module-request-input.' value='`$vf-module-topology-operation-input.vf-module-request-input.`' />\n\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-index].vf-module-data.vf-module-topology.' value='`$tmp.vf-module-topology.`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module_length' value='`$vf-index+1`' />\n\n\n",
\r
418 "x": 837.8531951904297,
\r
419 "y": 797.4962463378906,
\r
420 "z": "f1f197ca.402af8",
\r
424 "id": "944e3f22.30053",
\r
426 "name": "execute generate-vf-module-index",
\r
427 "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.vpn-vf-index\"/>\n",
\r
430 "x": 849.186767578125,
\r
431 "y": 750.1629486083984,
\r
432 "z": "f1f197ca.402af8",
\r
438 "id": "9465c248.bcdbd",
\r
440 "name": "set new vf-module_length",
\r
441 "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module_length' value='`$vf-index + 1`' />",
\r
443 "x": 821.1868286132812,
\r
444 "y": 701.1629486083984,
\r
445 "z": "f1f197ca.402af8",
\r
449 "id": "1d935a3c.53bb66",
\r
451 "name": "set vf-module-request-input.",
\r
452 "xml": "<set>\n<parameter name='vf-module-request-input.' value='`$vf-module-topology-operation-input.vf-module-request-input.`' />\n",
\r
454 "x": 821.1863555908203,
\r
455 "y": 647.1542367935181,
\r
456 "z": "f1f197ca.402af8",
\r
460 "id": "5d2253aa.4bfbec",
\r
462 "name": "set vf-module-level-oper-status",
\r
463 "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-index].vf-module-data.vf-module-level-oper-status.order-status' value='Created' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-index].vf-module-data.vf-module-level-oper-status.last-rpc-action' value='`$vf-module-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-index].vf-module-data.vf-module-level-oper-status.last-action' value='`$vf-module-topology-operation-input.sdnc-request-header.request-action`' />",
\r
465 "x": 831.5001831054688,
\r
466 "y": 895.0000674128532,
\r
467 "z": "f1f197ca.402af8",
\r
471 "id": "166cfcae.a53de3",
\r
473 "name": "save sdwan vpn resource in AAI",
\r
474 "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='sdwan-vpn' \n key='sdwan-vpn.sdwan-vpn-id = $prop.vpn-vf-index' >\n<parameter name='sdwan-vpn-id' value='`$prop.vpn-vf-index`' />\n<parameter name='sdwan-vpn-name' value='`$prop.name`' />\n<parameter name='topology' value='`$prop.topology`' />\n<parameter name='operational-status' value='Created' />\n<parameter name='model-customization-id' value='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$vf-module-topology-operation-input.vf-module-information.onap-model-information.model-version`' />\n<parameter name='selflink' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vf-module-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $service-data.vnfs.vnf[$vnf-index].vnf-id + '/vnf-data/vf-modules/vf-module/' + $prop.vpn-vf-index + '/vf-module-data/'` \" />\n",
\r
477 "x": 838.0000438690186,
\r
478 "y": 940.5000152587891,
\r
479 "z": "f1f197ca.402af8",
\r
485 "id": "b6ddeb01.d7f708",
\r
486 "type": "returnSuccess",
\r
487 "name": "return success",
\r
488 "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n",
\r
490 "x": 785.7225170135498,
\r
491 "y": 1033.6739058494568,
\r
492 "z": "f1f197ca.402af8",
\r
496 "id": "83d0d62b.725028",
\r
498 "name": "for loop i - Network input parameters",
\r
499 "xml": "<for index=\"idx\" start=\"0\" end=\"`$vf-module-topology-operation-input.vf-module-request-input.vf-module-input-parameters.param_length`\">\n",
\r
502 "x": 849.2539215087891,
\r
504 "z": "f1f197ca.402af8",
\r
512 "id": "4fef64f6.74978c",
\r
515 "xml": "<block>\n",
\r
519 "x": 1136.4767990112305,
\r
520 "y": 583.7262201309204,
\r
521 "z": "f1f197ca.402af8",
\r
530 "id": "70539f79.6843b",
\r
531 "type": "switchNode",
\r
532 "name": "switch name",
\r
533 "xml": "<switch test=\"`$vf-module-topology-operation-input.vf-module-request-input.vf-module-input-parameters.param[$idx].name == 'name'`\">\n\n",
\r
536 "x": 1324.698642730713,
\r
537 "y": 566.0595242977142,
\r
538 "z": "f1f197ca.402af8",
\r
546 "id": "69460cae.8c8bb4",
\r
547 "type": "switchNode",
\r
548 "name": "switch topology",
\r
549 "xml": "<switch test=\"`$vf-module-topology-operation-input.vf-module-request-input.vf-module-input-parameters.param[$idx].name == 'topology'`\">",
\r
552 "x": 1335.5383033752441,
\r
553 "y": 606.0595223903656,
\r
554 "z": "f1f197ca.402af8",
\r
562 "id": "63c5ecf6.3d2174",
\r
563 "type": "outcomeTrue",
\r
565 "xml": "<outcome value='true'>\n",
\r
568 "x": 1511.698642730713,
\r
569 "y": 562.0595242977142,
\r
570 "z": "f1f197ca.402af8",
\r
578 "id": "c6e54399.0667f",
\r
579 "type": "outcomeTrue",
\r
581 "xml": "<outcome value='true'>\n",
\r
584 "x": 1505.5383033752441,
\r
585 "y": 602.0595223903656,
\r
586 "z": "f1f197ca.402af8",
\r
594 "id": "7b7eb3bd.411e2c",
\r
596 "name": "set name",
\r
597 "xml": "<set>\n<parameter name='prop.name' value='`$vf-module-topology-operation-input.vf-module-request-input.vf-module-input-parameters.param[$idx].value`' />\n\n",
\r
599 "x": 1661.69877243042,
\r
600 "y": 560.659530878067,
\r
601 "z": "f1f197ca.402af8",
\r
605 "id": "660aadb7.bbfbd4",
\r
607 "name": "set topology",
\r
608 "xml": "<set>\n<parameter name='prop.topology' value='`$vf-module-topology-operation-input.vf-module-request-input.vf-module-input-parameters.param[$idx].value`' />\n",
\r
610 "x": 1692.8717441558838,
\r
611 "y": 600.5206792354584,
\r
612 "z": "f1f197ca.402af8",
\r
616 "id": "8a6622c.9c3e9e",
\r
618 "name": "call GENERIC-RESOURCE-API:validate-sdwan-vf-vpn-input-parameters",
\r
619 "xml": "<call module='GENERIC-RESOURCE-API' rpc='validate-sdwan-vf-vpn-input-parameters' mode='sync' >\n",
\r
622 "x": 950.5039215087891,
\r
624 "z": "f1f197ca.402af8",
\r
630 "id": "d3e9377a.b7b628",
\r
632 "name": "set vf-module-object-path",
\r
633 "xml": "<set>\n<parameter name='vf-module-id' value='`$prop.site-vf-index`' />\n<parameter name='vf-module-object-path' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $vf-module-topology-operation-input.service-information.service-instance-id\n + '/service-data/vnfs/vnf/'\n + $service-data.vnfs.vnf[$vnf-index].vnf-id\n + '/vnf-data/vf-modules/vf-module/'\n + $prop.vpn-vf-index\n + '/vf-module-data/vf-module-topology/'`\"/>\n<parameter name='vnf-object-path'\n value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $vf-module-topology-operation-input.service-information.service-instance-id\n + '/service-data/vnfs/vnf/'\n + $service-data.vnfs.vnf[$vnf-index].vnf-id\n + '/vnf-data/vnf-topology/'`\"/>\n<parameter name='service-object-path'\n value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $vf-module-topology-operation-input.service-information.service-instance-id\n + '/service-data/service-topology/'`\"/>\n",
\r
635 "x": 823.5000610351562,
\r
636 "y": 846.0312868952751,
\r
637 "z": "f1f197ca.402af8",
\r
641 "id": "4cde94b6.d8700c",
\r
643 "name": "save service relationship in AAI",
\r
644 "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='generic-vnf:relationship-list' \n key='generic-vnf.vnf-id = $service-data.vnfs.vnf[$vnf-index].vnf-id' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"sdwan-vpn\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/sdwan-vpns/sdwan-vpn/' + $prop.vpn-vf-index`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"sdwan-vpn.id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.vpn-vf-index`\" />\n\n",
\r
647 "x": 838.0001220703125,
\r
648 "y": 988.0001564025879,
\r
649 "z": "f1f197ca.402af8",
\r