summaryrefslogtreecommitdiffstats
path: root/platform-logic/generic-resource-api
diff options
context:
space:
mode:
authorDan Timoney <dt5972@att.com>2018-06-01 12:10:07 +0000
committerGerrit Code Review <gerrit@onap.org>2018-06-01 12:10:07 +0000
commitd18dcbff672b50f3b687cf78b407aa542d0c34c9 (patch)
tree568136550b01ad073cd1a0eb397010534737dc9c /platform-logic/generic-resource-api
parent0ca87ddba567a14c4137b23682c72a471c9a4eb7 (diff)
parent49da531d4f5cc1fa5e3aefe10acc561f28db7002 (diff)
Merge "Fix Service-object-path"
Former-commit-id: a068aee43c63c291db8fff8d0875bdeeb3d03795
Diffstat (limited to 'platform-logic/generic-resource-api')
-rw-r--r--[-rwxr-xr-x]platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_vnf-topology-operation-assign.json5188
-rwxr-xr-xplatform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_vnf-topology-operation-assign.xml931
2 files changed, 2907 insertions, 3212 deletions
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_vnf-topology-operation-assign.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_vnf-topology-operation-assign.json
index a4bef398..2f575c5d 100755..100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_vnf-topology-operation-assign.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_vnf-topology-operation-assign.json
@@ -1,2668 +1,2522 @@
[
- {
- "id":"9ccf5f2f.39236",
- "type":"dgstart",
- "name":"DGSTART",
- "outputs":1,
- "x":116,
- "y":91,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "6691cc73.e873a4"
- ]
- ]
- },
- {
- "id":"6691cc73.e873a4",
- "type":"service-logic",
- "name":"GENERIC-RESOURCE-API ${project.version}",
- "module":"GENERIC-RESOURCE-API",
- "version":"${project.version}",
- "comments":"",
- "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}'>",
- "outputs":1,
- "x":229.61902618408203,
- "y":131.2381134033203,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "cc1c0bf8.946078"
- ]
- ]
- },
- {
- "id":"cc1c0bf8.946078",
- "type":"method",
- "name":"method vnf-topology-operation-assign",
- "xml":"<method rpc='vnf-topology-operation-assign' mode='sync'>\n",
- "comments":"",
- "outputs":1,
- "x":207.42862701416016,
- "y":171,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "640dc66a.a29d78"
- ]
- ]
- },
- {
- "id":"4433df34.49523",
- "type":"comment",
- "name":"vnf-topology-operation-assign",
- "info":"",
- "comments":"",
- "x":510.34485626220703,
- "y":38.58634376525879,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"69555d22.201ae4",
- "type":"switchNode",
- "name":"switch request-action",
- "xml":"<switch test='`$vnf-topology-operation-input.request-information.request-action`'>\n",
- "comments":"",
- "outputs":1,
- "x":517.8571395874023,
- "y":368.19043922424316,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "21e7c9f9.301dc6",
- "4592f6ea.c358a8"
- ]
- ]
- },
- {
- "id":"21e7c9f9.301dc6",
- "type":"outcome",
- "name":"CreateVnfInstance",
- "xml":"<outcome value='CreateVnfInstance'>\n",
- "comments":"",
- "outputs":1,
- "x":771.5714340209961,
- "y":345.3333206176758,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "68be9a6d.905a74"
- ]
- ]
- },
- {
- "id":"4592f6ea.c358a8",
- "type":"other",
- "name":"other",
- "xml":"<outcome value='Other'>\n",
- "comments":"",
- "outputs":1,
- "x":733.5713996887207,
- "y":391.0476484298706,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "f9f1fcba.f8b9a"
- ]
- ]
- },
- {
- "id":"68be9a6d.905a74",
- "type":"block",
- "name":"block",
- "xml":"<block>\n",
- "atomic":"false",
- "comments":"",
- "outputs":1,
- "x":956.4285621643066,
- "y":345.3333501815796,
- "z":"fd246789.67c9b8",
- "wires":[
- [
-
- ]
- ]
- },
- {
- "id":"f9f1fcba.f8b9a",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"If svc-action is 'assign' then request-action must be 'CreateVnfInstance'\" />\n",
- "comments":"",
- "x":973.5714073181152,
- "y":391.0476064682007,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"640dc66a.a29d78",
- "type":"block",
- "name":"block : atomic",
- "xml":"<block atomic=\"true\">",
- "atomic":"true",
- "outputs":1,
- "x":146.11905670166016,
- "y":1702.7857055664062,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "69555d22.201ae4",
- "8493543d.d5add8",
- "44e96447.88a55c",
- "60a9b28e.fdbd6c",
- "a2f5b96a.0efe28",
- "38295564.a1749a",
- "4b89c8dc.b86128",
- "fdb92e2f.a354e",
- "2a1ab274.7c2bee",
- "992ab3fb.83b44",
- "181944c4.0d0f9b",
- "41755ac8.072364",
- "e106d4bd.0d1078",
- "1b1ec882.086847",
- "2567269e.02750a",
- "da9c0753.0051f8",
- "e38c22e2.cce52",
- "66001fe6.d89e4",
- "99ebc7f4.ea5d68",
- "c1d69c5f.488e1",
- "71b9cf5e.13115",
- "4bbcb529.9daacc",
- "12e97c5b.66ee84",
- "3d1f814c.368f2e",
- "3315c9d5.fbc886",
- "435802ab.cae41c",
- "79756539.60282c",
- "ca1ff11f.a4d9c",
- "a7335a29.c13d48",
- "ffd11c87.313e8",
- "c8f006fe.b172c8"
- ]
- ]
- },
- {
- "id":"8493543d.d5add8",
- "type":"get-resource",
- "name":"get-resource VF_MODEL",
- "xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n key='SELECT * from VF_MODEL WHERE customization_uuid = $vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid'\n pfx='db.vf-model'>\n\n",
- "comments":"",
- "outputs":1,
- "x":530.1904449462891,
- "y":459.333309173584,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "d5535827.ea8598",
- "48a8f1af.2c0e6"
- ]
- ]
- },
- {
- "id":"6f7a7f57.b3d91",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"`'No model found for VNF customization UUID ' + $vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`\" />\n",
- "comments":"",
- "x":971.6189231872559,
- "y":482.7617950439453,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"d5535827.ea8598",
- "type":"failure",
- "name":"failure",
- "xml":"<outcome value='failure'>\n",
- "comments":"",
- "outputs":1,
- "x":730.9761428833008,
- "y":439.7141466140747,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "6cb659f6.a3ccc8"
- ]
- ]
- },
- {
- "id":"48a8f1af.2c0e6",
- "type":"not-found",
- "name":"not-found",
- "xml":"<outcome value='not-found'>\n",
- "comments":"",
- "outputs":1,
- "x":739.5475730895996,
- "y":483.9998598098755,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "6f7a7f57.b3d91"
- ]
- ]
- },
- {
- "id":"6cb659f6.a3ccc8",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"Error reading VF_MODEL table\" />\n",
- "comments":"",
- "x":970.9761238098145,
- "y":437.85705375671387,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"44e96447.88a55c",
- "type":"switchNode",
- "name":"switch service-data.vnfs.vnf_length",
- "xml":"<switch test='`$service-data.vnfs.vnf_length`'>\n",
- "comments":"",
- "outputs":1,
- "x":560.2857131958008,
- "y":649.5714282989502,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "b5587c41.e56ce",
- "7e264606.a0c498"
- ]
- ]
- },
- {
- "id":"b5587c41.e56ce",
- "type":"other",
- "name":"NULL",
- "xml":"<outcome value=''>\n",
- "comments":"",
- "outputs":1,
- "x":786.0000419616699,
- "y":616.7142162322998,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "35287950.3f0336"
- ]
- ]
- },
- {
- "id":"35287950.3f0336",
- "type":"set",
- "name":"set vnf-index=0",
- "xml":"<set>\n<parameter name='vnf-index' value='0' />\n",
- "comments":"",
- "x":950.2857627868652,
- "y":615.7142944335938,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"7e264606.a0c498",
- "type":"other",
- "name":"other",
- "xml":"<outcome value='Other'>\n",
- "comments":"",
- "outputs":1,
- "x":787.4286041259766,
- "y":681.0000343322754,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "1e55cf6a.800ac1"
- ]
- ]
- },
- {
- "id":"f93c00a3.b52d2",
- "type":"set",
- "name":"set vnf-index = vnf_length",
- "xml":"<set>\n<parameter name='vnf-index' value='`$service-data.vnfs.vnf_length`' />\n",
- "comments":"",
- "x":1126.285758972168,
- "y":659.285722732544,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"c5a883a5.29173",
- "type":"for",
- "name":"for each existing VNF",
- "xml":"<for index='idx' start='0' end='`$service-data.vnfs.vnf_length`' >\n",
- "comments":"",
- "outputs":1,
- "x":1111.7142715454102,
- "y":705.2856616973877,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "a2daf07b.6ee38"
- ]
- ]
- },
- {
- "id":"1e55cf6a.800ac1",
- "type":"block",
- "name":"block",
- "xml":"<block>\n",
- "atomic":"false",
- "comments":"",
- "outputs":1,
- "x":923.1428642272949,
- "y":681,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "f93c00a3.b52d2",
- "c5a883a5.29173"
- ]
- ]
- },
- {
- "id":"a2daf07b.6ee38",
- "type":"switchNode",
- "name":"switch vnf-information.vnf-id == service-data.vnfs.vnf[].vnf-id",
- "xml":"<switch test='`$vnf-topology-operation-input.vnf-information.vnf-id == $service-data.vnfs.vnf[$idx].vnf-id`'>\n",
- "comments":"",
- "outputs":1,
- "x":1466.0000381469727,
- "y":704.857141494751,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "a768ca3d.d2e178"
- ]
- ]
- },
- {
- "id":"a768ca3d.d2e178",
- "type":"outcomeTrue",
- "name":"true",
- "xml":"<outcome value='true'>\n",
- "comments":"",
- "outputs":1,
- "x":1760.2857475280762,
- "y":704.4286136627197,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "4be53ad3.39d424"
- ]
- ]
- },
- {
- "id":"4be53ad3.39d424",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"`'VNF id ' + $service-data.vnfs.vnf[$idx].vnf-id\n + ' already exists, and has order status ' + $service-data.vnfs.vnf[$idx].vnf-data.vnf-level-oper-status.order-status`\" />\n",
- "comments":"",
- "x":1908.8571548461914,
- "y":704.4285736083984,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"5528274.a4ca8d8",
- "type":"comment",
- "name":"make sure this VNF doesn't exist already",
- "info":"",
- "comments":"",
- "x":1453.1427688598633,
- "y":662.4285717010498,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"60a9b28e.fdbd6c",
- "type":"set",
- "name":"set vnf-topology data",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-id'\n value='`$vnf-topology-operation-input.vnf-information.vnf-id`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-type'\n value='`$vnf-topology-operation-input.vnf-information.vnf-type`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-type'\n value='`$db.vf-model.nf-type`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-role'\n value='`$db.vf-model.nf-role`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-function'\n value='`$db.vf-model.nf-function`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-code'\n value='`$db.vf-model.nf-code`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.tenant'\n value='`$vnf-topology-operation-input.vnf-request-input.tenant`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.aic-cloud-region'\n value='`$vnf-topology-operation-input.vnf-request-input.aic-cloud-region`' />\n \n",
- "comments":"",
- "x":515.9999694824219,
- "y":811.238115310669,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"a2f5b96a.0efe28",
- "type":"switchNode",
- "name":"switch input vnf-name",
- "xml":"<switch test='`$vnf-topology-operation-input.vnf-request-input.vnf-name`'>\n",
- "comments":"",
- "outputs":1,
- "x":522.4285507202148,
- "y":1053.8571615219116,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "a74ff6a8.d70078",
- "5026858f.a2940c"
- ]
- ]
- },
- {
- "id":"a74ff6a8.d70078",
- "type":"outcome",
- "name":"NULL",
- "xml":"<outcome value=''>",
- "comments":"",
- "outputs":1,
- "x":790.6427726745605,
- "y":976.8333864212036,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "a1df7746.405bc8"
- ]
- ]
- },
- {
- "id":"a535733d.56088",
- "type":"switchNode",
- "name":"switch ecomp-generated-naming",
- "xml":"<switch test='`$db.vf-model.ecomp-generated-naming`'>\n",
- "comments":"",
- "outputs":1,
- "x":1207.071662902832,
- "y":883.5002059936523,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "c481f2.a0820e1",
- "fed6ce07.f1c9b",
- "3606bd75.f9d982"
- ]
- ]
- },
- {
- "id":"a1df7746.405bc8",
- "type":"block",
- "name":"block : atomic",
- "xml":"<block atomic=\"true\">",
- "atomic":"true",
- "outputs":1,
- "x":936.3572692871094,
- "y":976.833498954773,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "ba81df66.145ca",
- "a99511f6.3ff61",
- "a535733d.56088"
- ]
- ]
- },
- {
- "id":"fed6ce07.f1c9b",
- "type":"outcome",
- "name":"N",
- "xml":"<outcome value='N'>",
- "comments":"",
- "outputs":1,
- "x":1456.357322692871,
- "y":885.404914855957,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "10b3babc.98e1d5"
- ]
- ]
- },
- {
- "id":"10b3babc.98e1d5",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"No vnf-name was received but ecomp-generated-naming is not Y\" />\n",
- "comments":"",
- "x":1610.64310836792,
- "y":903.9763593673706,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"c481f2.a0820e1",
- "type":"outcome",
- "name":"Y",
- "xml":"<outcome value='Y'>",
- "comments":"",
- "outputs":1,
- "x":1456.3572883605957,
- "y":841.1192359924316,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "785bb471.695f2c"
- ]
- ]
- },
- {
- "id":"3606bd75.f9d982",
- "type":"other",
- "name":"other",
- "xml":"<outcome value='Other'>\n",
- "comments":"",
- "outputs":1,
- "x":1456.357250213623,
- "y":931.119234085083,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "10b3babc.98e1d5"
- ]
- ]
- },
- {
- "id":"785bb471.695f2c",
- "type":"block",
- "name":"block",
- "xml":"<block>\n",
- "atomic":"false",
- "comments":"",
- "outputs":1,
- "x":1593.5002326965332,
- "y":841.1192359924316,
- "z":"fd246789.67c9b8",
- "wires":[
- [
-
- ]
- ]
- },
- {
- "id":"5026858f.a2940c",
- "type":"other",
- "name":"other",
- "xml":"<outcome value='Other'>\n",
- "comments":"",
- "outputs":1,
- "x":793.2144546508789,
- "y":1123.119125366211,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "14a356a5.aabd79"
- ]
- ]
- },
- {
- "id":"3f38f6a8.e8ae7a",
- "type":"set",
- "name":"set tmp.vnf-name",
- "xml":"<set>\n<parameter name='tmp.vnf-name' value=\"`$vnf-topology-operation-input.vnf-request-input.vnf-name`\" />\n",
- "comments":"",
- "x":1752.0715306599936,
- "y":1190.5476417541504,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"ba81df66.145ca",
- "type":"call",
- "name":"call GENERIC-RESOURCE-API:generate-unique-name",
- "xml":"<call module='GENERIC-RESOURCE-API' rpc='generate-unique-name' mode='sync' >\n",
- "comments":"",
- "outputs":1,
- "x":1275.4763259887695,
- "y":1049.8333959579468,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "d2300850.ff9928",
- "88893e9e.26f3"
- ]
- ]
- },
- {
- "id":"d2300850.ff9928",
- "type":"failure",
- "name":"failure",
- "xml":"<outcome value='failure'>\n",
- "comments":"",
- "outputs":1,
- "x":1571.1906140645347,
- "y":1022.6906585693359,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "a2f8f6ce.0d9048"
- ]
- ]
- },
- {
- "id":"88893e9e.26f3",
- "type":"success",
- "name":"success",
- "xml":"<outcome value='success'>\n",
- "comments":"",
- "outputs":1,
- "x":1574.5239639282227,
- "y":1074.3573017120361,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "e379d995.8d07c8"
- ]
- ]
- },
- {
- "id":"a99511f6.3ff61",
- "type":"set",
- "name":"set variables for generating unique name",
- "xml":"<set>\n<parameter name='generate-unique-name-input.index-table-name' value='VNF_NAME_INDEX' />\n<parameter name='generate-unique-name-input.index-table-prefix-column' value='vnf_name_prefix' />\n<parameter name='generate-unique-name-input.name-table-type' value='VNF_INSTANCE' />\n<parameter name='generate-unique-name-input.prefix' value=\"`'z' + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region + $db.vf-model.nf-code`\" />\n<parameter name='generate-unique-name-input.index-length' value='2' />\n",
- "comments":"",
- "x":1232.1430130004883,
- "y":998.1668043136597,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"e379d995.8d07c8",
- "type":"set",
- "name":"set tmp.vnf-name to generated name",
- "xml":"<set>\n<parameter name='tmp.vnf-name' value='`$generate-unique-name-output.generated-name`' />\n",
- "comments":"",
- "x":1815.7143491109214,
- "y":1074.8333930969238,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"a2f8f6ce.0d9048",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"`$generate-unique-name-output.error-message`\" />\n",
- "comments":"",
- "x":1739.0477269490561,
- "y":1022.1191701889038,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"14a356a5.aabd79",
- "type":"block",
- "name":"block : atomic",
- "xml":"<block atomic=\"true\">",
- "atomic":"true",
- "outputs":1,
- "x":941.1429824829102,
- "y":1121.7858123779297,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "ddf542b0.c6011",
- "fea292da.2d62c"
- ]
- ]
- },
- {
- "id":"fea292da.2d62c",
- "type":"call",
- "name":"call GENERIC-RESOURCE-API:generate-unique-name",
- "xml":"<call module='GENERIC-RESOURCE-API' rpc='generate-unique-name' mode='sync' >\n",
- "comments":"",
- "outputs":1,
- "x":1271.1429824829102,
- "y":1169.7858123779297,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "fe79a9ce.cff238",
- "854320f4.a6951"
- ]
- ]
- },
- {
- "id":"fe79a9ce.cff238",
- "type":"failure",
- "name":"failure",
- "xml":"<outcome value='failure'>\n",
- "comments":"",
- "outputs":1,
- "x":1569.7143987019858,
- "y":1139.785837173462,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "c71b771e.d085f8"
- ]
- ]
- },
- {
- "id":"854320f4.a6951",
- "type":"success",
- "name":"success",
- "xml":"<outcome value='success'>\n",
- "comments":"",
- "outputs":1,
- "x":1573.0477485656738,
- "y":1191.452480316162,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "3f38f6a8.e8ae7a"
- ]
- ]
- },
- {
- "id":"ddf542b0.c6011",
- "type":"set",
- "name":"set variables for generating unique name",
- "xml":"<set>\n<parameter name='generate-unique-name-input.name-table-type' value='VNF_INSTANCE' />\n<parameter name='generate-unique-name-input.supplied-name' value='`$vnf-topology-operation-input.vnf-request-input.vnf-name`' />\n",
- "comments":"",
- "x":1227.8096542358398,
- "y":1118.1191844940186,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"c71b771e.d085f8",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"`$generate-unique-name-output.error-message`\" />\n",
- "comments":"",
- "x":1737.5715115865073,
- "y":1139.2143487930298,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"38295564.a1749a",
- "type":"get-resource",
- "name":"get-resource cloud region",
- "xml":"<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"cloud-region\" \n\t\tkey=\"cloud-region.cloud-owner = 'CloudOwner' AND \n\t\t cloud-region.cloud-region-id = $vnf-topology-operation-input.vnf-request-input.aic-cloud-region AND\n\t\t depth='0'\"\n pfx='aai.cloud-region' local-only='false' >\n\n",
- "comments":"",
- "outputs":1,
- "x":544.5714492797852,
- "y":1731.8569984436035,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "705615f3.8b4c9c",
- "ad2a9079.440fb"
- ]
- ]
- },
- {
- "id":"ad2a9079.440fb",
- "type":"failure",
- "name":"failure",
- "xml":"<outcome value='failure'>\n",
- "comments":"",
- "outputs":1,
- "x":769.8176422119141,
- "y":1750.00785446167,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "2721b55e.e28fda"
- ]
- ]
- },
- {
- "id":"2721b55e.e28fda",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"Error retrieving cloud region from AAI\" />\n",
- "comments":"",
- "x":944.8176155090332,
- "y":1750.007890701294,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"705615f3.8b4c9c",
- "type":"not-found",
- "name":"not-found",
- "xml":"<outcome value='not-found'>\n",
- "comments":"",
- "outputs":1,
- "x":778.7462387084961,
- "y":1708.2935876846313,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "5e971bd2.c85374"
- ]
- ]
- },
- {
- "id":"5e971bd2.c85374",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"Cloud region not found in AAI\" />\n",
- "comments":"",
- "x":945.095516204834,
- "y":1707.5991649627686,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"4b89c8dc.b86128",
- "type":"get-resource",
- "name":"get-resource VF_TO_NETWORK_ROLE_MAPPING",
- "xml":"<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n key='SELECT * from VF_TO_NETWORK_ROLE_MAPPING WHERE vf_customization_uuid = $vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid'\n pfx='db.vf-network-role-mapping[]'>\n\n",
- "comments":"",
- "outputs":1,
- "x":609.8095321655273,
- "y":2042.9045181274414,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "54fe96c4.2ade08",
- "73ebe04c.8877"
- ]
- ]
- },
- {
- "id":"fc2923af.cfa16",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"`'No entries found in VF_TO_NETWORK_ROLE_MAPPING for VNF customization UUID ' + $vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`\" />\n",
- "comments":"",
- "x":1345.5237121582031,
- "y":2060.618698120117,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"54fe96c4.2ade08",
- "type":"failure",
- "name":"failure",
- "xml":"<outcome value='failure'>\n",
- "comments":"",
- "outputs":1,
- "x":905.5952033996582,
- "y":2021.6186828613281,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "359e53d8.b8194c"
- ]
- ]
- },
- {
- "id":"73ebe04c.8877",
- "type":"not-found",
- "name":"not-found",
- "xml":"<outcome value='not-found'>\n",
- "comments":"",
- "outputs":1,
- "x":914.166633605957,
- "y":2065.904396057129,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "ce44b8cb.59b0b8"
- ]
- ]
- },
- {
- "id":"359e53d8.b8194c",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"Error reading VF_TO_NETWORK_ROLE_MAPPING table\" />\n",
- "comments":"",
- "x":1080.5951843261719,
- "y":2021.4283332824707,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"256b9444.46e22c",
- "type":"block",
- "name":"block : atomic",
- "xml":"<block atomic=\"true\">",
- "atomic":"true",
- "outputs":1,
- "x":710.5715866088867,
- "y":2491.71391582489,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "94f38af4.602b28",
- "94677688.71e6b8",
- "adf1fe7e.9a17b",
- "aae66b2d.04c758",
- "f2668cde.bd454",
- "2eaed654.44544a",
- "ebe74367.6c98d",
- "a16a767c.1d4a58"
- ]
- ]
- },
- {
- "id":"adf1fe7e.9a17b",
- "type":"get-resource",
- "name":"get-resource l3-network",
- "xml":"<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"l3-networks\" \n\t\tkey=\"l3-network.network-role = $db.vf-network-role-mapping[$role-index].network-role\"\n pfx='aai.l3-network' local-only='false'\n>\n",
- "comments":"",
- "outputs":1,
- "x":943.4286041259766,
- "y":2170.999779701233,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "e410cae.f805538",
- "d30ae5a6.b9bd78"
- ]
- ]
- },
- {
- "id":"d30ae5a6.b9bd78",
- "type":"failure",
- "name":"failure",
- "xml":"<outcome value='failure'>\n",
- "comments":"",
- "outputs":1,
- "x":1147.476318359375,
- "y":2193.1426191329956,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "3ac2e1b4.70cbce"
- ]
- ]
- },
- {
- "id":"3ac2e1b4.70cbce",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"Error retrieving l3-network from AAI\" />\n",
- "comments":"",
- "x":1322.4762916564941,
- "y":2193.1426553726196,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"e410cae.f805538",
- "type":"not-found",
- "name":"not-found",
- "xml":"<outcome value='not-found'>\n",
- "comments":"",
- "outputs":1,
- "x":1156.404914855957,
- "y":2151.428352355957,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "5d3fbb26.bfed54"
- ]
- ]
- },
- {
- "id":"5d3fbb26.bfed54",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"`'No active l3-network found in AAI with cloud_region_id '\n + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region + ' and network_role '\n + $db.vf-network-role-mapping[$network-index].network-role`\" />\n",
- "comments":"",
- "x":1322.754192352295,
- "y":2150.7339296340942,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"94f38af4.602b28",
- "type":"set",
- "name":"set vnf-network data",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].network-role'\n value='`$db.vf-network-role-mapping[$role-index].network-role`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].network-name'\n value='`$aai.l3-network.l3-network[$db-network-index].network-name`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].neutron-id'\n value='`$aai.l3-network.l3-network[$db-network-index].neutron-network-id`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].network-id'\n value='`$aai.l3-network.l3-network[$db-network-index].network-id`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].contrail-network-fqdn'\n value='`$aai.l3-network.l3-network[$db-network-index].contrail-network-fqdn`' />\n",
- "comments":"",
- "x":932.6191940307617,
- "y":2658.0000228881836,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"181944c4.0d0f9b",
- "type":"for",
- "name":"for each cloud-region availability zone",
- "xml":"<for index='idx' start='0' end='`$aai.az.availability-zone_length`' >\n",
- "comments":"",
- "outputs":1,
- "x":544.3335571289062,
- "y":3072.618803024292,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "7193ae4f.a03bb"
- ]
- ]
- },
- {
- "id":"bec7777f.49caa8",
- "type":"set",
- "name":"set availability-zone",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.availability-zones.availability-zone[$idx]'\n value='`$aai.az.availability-zone[$idx].availability-zone-name`' />\n",
- "comments":"",
- "x":1006.0002403259277,
- "y":3041.952217102051,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"41755ac8.072364",
- "type":"set",
- "name":"set vnf-parameters-data",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.'\n value='vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.' />\n",
- "comments":"",
- "x":503.9524841308594,
- "y":2922.5711631774902,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"4fed1d67.892644",
- "type":"save",
- "name":"save generic-vnf l3-network relationships",
- "xml":"<save plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\"\n 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=\"l3-network\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"l3-network.network-id\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$vnf-nw-index].network-id`\" />\n",
- "comments":"",
- "outputs":1,
- "x":970.5240173339844,
- "y":3216.381015777588,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "b6fac54b.97ab18",
- "8f7c44dc.2bfaf8"
- ]
- ]
- },
- {
- "id":"2567269e.02750a",
- "type":"returnSuccess",
- "name":"return success",
- "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",
- "comments":"",
- "x":467.0953674316406,
- "y":3603.1901140213013,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"1b1ec882.086847",
- "type":"set",
- "name":"set vnf-level-oper-status to PendingCreate",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status' value='PendingCreate' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-rpc-action' value='`$vnf-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-action' value='`$vnf-topology-operation-input.request-information.request-action`' />\n",
- "comments":"",
- "x":556.9088134765625,
- "y":3505.527594566345,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"2a1ab274.7c2bee",
- "type":"for",
- "name":"for each network-role",
- "xml":"<for index='role-index' start='0' end='`$db.vf-network-role-mapping_length`'>",
- "comments":"",
- "outputs":1,
- "x":493.90489196777344,
- "y":2491.7141189575195,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "256b9444.46e22c"
- ]
- ]
- },
- {
- "id":"fdb92e2f.a354e",
- "type":"set",
- "name":"set network-index = 0",
- "xml":"<set>\n<parameter name='network-index' value='0' />\n",
- "comments":"",
- "x":512.2380676269531,
- "y":2109.8094577789307,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"94677688.71e6b8",
- "type":"set",
- "name":"increment network-index",
- "xml":"<set>\n<parameter name='network-index' value='`$network-index + 1`' />\n",
- "comments":"",
- "x":942.9525146484375,
- "y":2795.6189250946045,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"992ab3fb.83b44",
- "type":"set",
- "name":"set vnf-network_length",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network_length'\n value='`$network-index`' />\n",
- "comments":"",
- "x":502.8095703125,
- "y":2872.571207046509,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"e106d4bd.0d1078",
- "type":"set",
- "name":"copy input data",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.sdnc-request-header.' value='$vnf-topology-operation-input.sdnc-request-header.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.request-information.' value='$vnf-topology-operation-input.request-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.' value='$vnf-topology-operation-input.service-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.' value='$vnf-topology-operation-input.vnf-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-request-input.' value='$vnf-topology-operation-input.vnf-request-input.' />\n\n",
- "comments":"",
- "x":472.4286422729492,
- "y":3453.1904258728027,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"da9c0753.0051f8",
- "type":"for",
- "name":"for each vnf-network",
- "xml":"<for index='vnf-nw-index' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network_length`' >\n",
- "comments":"",
- "outputs":1,
- "x":493.52392578125,
- "y":3215.380931854248,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "4dd068e4.b72dc8"
- ]
- ]
- },
- {
- "id":"4dd068e4.b72dc8",
- "type":"block",
- "name":"block : atomic",
- "xml":"<block atomic=\"true\">",
- "atomic":"true",
- "outputs":1,
- "x":697.1905670166016,
- "y":3215.380892753601,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "4fed1d67.892644"
- ]
- ]
- },
- {
- "id":"e38c22e2.cce52",
- "type":"set",
- "name":"set new vnf_length",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf_length' value='`$vnf-index + 1`' />\n",
- "comments":"",
- "x":508.0952491760254,
- "y":765.7619781494141,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"66001fe6.d89e4",
- "type":"for",
- "name":"for each cloud-region relationship",
- "xml":"<for index='idx' start='0' end='`$aai.cloud-region.relationship-list.relationship_length`' >\n",
- "comments":"",
- "outputs":1,
- "x":557.4285736083984,
- "y":1819.0951700210571,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "c5d7b884.059e78"
- ]
- ]
- },
- {
- "id":"c5d7b884.059e78",
- "type":"switchNode",
- "name":"switch related-to",
- "xml":"<switch test='`$aai.cloud-region.relationship-list.relationship[$idx].related-to`'>\n",
- "comments":"",
- "outputs":1,
- "x":805.1071166992188,
- "y":1818.8450994491577,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "2d88636e.c052fc"
- ]
- ]
- },
- {
- "id":"2d88636e.c052fc",
- "type":"outcome",
- "name":"complex",
- "xml":"<outcome value='complex'>\n",
- "comments":"",
- "outputs":1,
- "x":974.5714378356934,
- "y":1818.2379217147827,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "7c602050.7b0ac"
- ]
- ]
- },
- {
- "id":"cbda08be.5e00d8",
- "type":"set",
- "name":"set aic-clli",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.aic-clli'\n value='`$aai-uid-split[$aai-uid-split_length - 1]`' />\n",
- "comments":"",
- "x":1295.2857360839844,
- "y":1817.9045791625977,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"99ebc7f4.ea5d68",
- "type":"switchNode",
- "name":"switch aic-clli",
- "xml":"<switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.aic-clli`'>\n",
- "comments":"",
- "outputs":1,
- "x":493.3333511352539,
- "y":1975.0474872589111,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "1bb0c6a6.aa0059"
- ]
- ]
- },
- {
- "id":"1bb0c6a6.aa0059",
- "type":"outcome",
- "name":"NULL",
- "xml":"<outcome value=''>",
- "comments":"",
- "outputs":1,
- "x":641.4761848449707,
- "y":1975.0474700927734,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "9d910b9.8f160f8"
- ]
- ]
- },
- {
- "id":"9d910b9.8f160f8",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"`'Unable to find aic-clli in AAI for aic-cloud-region ' + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region`\" />\n",
- "comments":"",
- "x":788.6190452575684,
- "y":1974.6189041137695,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"911708ca.a4ec28",
- "type":"set",
- "name":"set from DB",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-invariant-uuid'\n value='`$db.vf-model.invariant-uuid`' />\n",
- "comments":"",
- "x":916.9287452697754,
- "y":1291.0475587844849,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"b87037e6.eb7448",
- "type":"for",
- "name":"for each l3-network",
- "xml":"<for index='db-network-index' start='0' end='`$aai.l3-network.l3-network_length`' >\n",
- "comments":"",
- "outputs":1,
- "x":1050.8811492919922,
- "y":2414.571388244629,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "4cb7a54f.4eeccc"
- ]
- ]
- },
- {
- "id":"4cb7a54f.4eeccc",
- "type":"switchNode",
- "name":"switch orchestration-status",
- "xml":"<switch test='`$aai.l3-network.l3-network[$db-network-index].orchestration-status`'>\n",
- "comments":"",
- "outputs":1,
- "x":1279.452350616455,
- "y":2413.142815589905,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "65732b9e.885204",
- "f80fc6c2.030438",
- "265b5201.897f0e",
- "f51d095f.d31e98",
- "41d53be7.1f6d94"
- ]
- ]
- },
- {
- "id":"65732b9e.885204",
- "type":"outcome",
- "name":"Pending Delete",
- "xml":"<outcome value='Pending Delete'>\n",
- "comments":"",
- "outputs":1,
- "x":1516.1192626953125,
- "y":2458.8095235824585,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "716a882.9ab7178"
- ]
- ]
- },
- {
- "id":"f80fc6c2.030438",
- "type":"other",
- "name":"other",
- "xml":"<outcome value='Other'>\n",
- "comments":"",
- "outputs":1,
- "x":1488.9764022827148,
- "y":2509.809504508972,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "c6e8990a.ebd138"
- ]
- ]
- },
- {
- "id":"3a777e92.27b412",
- "type":"switchNode",
- "name":"switch related-to",
- "xml":"<switch test='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].related-to`'>\n",
- "comments":"",
- "outputs":1,
- "x":1854.6907539367676,
- "y":2508.3808450698853,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "7ebd2a2d.1adc64"
- ]
- ]
- },
- {
- "id":"c6e8990a.ebd138",
- "type":"for",
- "name":"for each relationship",
- "xml":"<for silentFailure='true' index='db-rel-index' start='0' end='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship_length`' >\n",
- "comments":"",
- "outputs":1,
- "x":1658.9763145446777,
- "y":2509.3808813095093,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "3a777e92.27b412"
- ]
- ]
- },
- {
- "id":"7ebd2a2d.1adc64",
- "type":"outcome",
- "name":"cloud-region",
- "xml":"<outcome value='cloud-region'>\n",
- "comments":"",
- "outputs":1,
- "x":2028.9763946533203,
- "y":2507.9522914886475,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "91da1633.e19528"
- ]
- ]
- },
- {
- "id":"91da1633.e19528",
- "type":"for",
- "name":"for each relationship data",
- "xml":"<for silentFailure='true' index='db-data-index' start='0' end='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].relationship-data_length`' >\n",
- "comments":"",
- "outputs":1,
- "x":2226.119094848633,
- "y":2508.380759239197,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "7571e6bb.7c1e98"
- ]
- ]
- },
- {
- "id":"7571e6bb.7c1e98",
- "type":"switchNode",
- "name":"switch relationship-key",
- "xml":"<switch test='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].relationship-data[$db-data-index].relationship-key`'>\n",
- "comments":"",
- "outputs":1,
- "x":2457.547695159912,
- "y":2507.9521341323853,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "99351695.fbd508"
- ]
- ]
- },
- {
- "id":"99351695.fbd508",
- "type":"outcome",
- "name":"cloud-region.cloud-region-id",
- "xml":"<outcome value='cloud-region.cloud-region-id'>\n",
- "comments":"",
- "outputs":1,
- "x":2698.9762268066406,
- "y":2507.95223903656,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "52fbb392.9ae0fc"
- ]
- ]
- },
- {
- "id":"52fbb392.9ae0fc",
- "type":"switchNode",
- "name":"switch relationship-value == cloud-region-id",
- "xml":"<switch test='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].relationship-data[$db-data-index].relationship-value == $vnf-topology-operation-input.vnf-request-input.aic-cloud-region`'>\n",
- "comments":"",
- "outputs":1,
- "x":3003.2621459960938,
- "y":2507.8092947006226,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "30d6670a.932068"
- ]
- ]
- },
- {
- "id":"30d6670a.932068",
- "type":"outcomeTrue",
- "name":"true",
- "xml":"<outcome value='true'>\n",
- "comments":"",
- "outputs":1,
- "x":3243.262176513672,
- "y":2507.9522399902344,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "f3bd4d0.b8b78b"
- ]
- ]
- },
- {
- "id":"aae66b2d.04c758",
- "type":"block",
- "name":"block",
- "xml":"<block>\n",
- "atomic":"false",
- "comments":"",
- "outputs":1,
- "x":889.0953330993652,
- "y":2482.4284858703613,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "b87037e6.eb7448",
- "c901ec1c.1186a"
- ]
- ]
- },
- {
- "id":"c901ec1c.1186a",
- "type":"returnSuccess",
- "name":"CATCH BREAK",
- "xml":"<return status='success'>\n\n",
- "comments":"",
- "x":1040.4287414550781,
- "y":2555.7617197036743,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"4cb4ba60.e5ecf4",
- "type":"returnFailure",
- "name":"BREAK",
- "xml":"<return status='failure'>\n",
- "comments":"",
- "x":3544.095157623291,
- "y":2525.761643409729,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"f2668cde.bd454",
- "type":"set",
- "name":"set l3-network-id = -1",
- "xml":"<set>\n<parameter name='l3-network-id' value='-1' />\n",
- "comments":"",
- "x":933.4287033081055,
- "y":2285.7616996765137,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"f3bd4d0.b8b78b",
- "type":"block",
- "name":"block : atomic",
- "xml":"<block atomic=\"true\">",
- "atomic":"true",
- "outputs":1,
- "x":3389.0951538085938,
- "y":2507.4283485412598,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "26d1bdef.32da62",
- "4cb4ba60.e5ecf4"
- ]
- ]
- },
- {
- "id":"26d1bdef.32da62",
- "type":"set",
- "name":"set l3-network-id = this l3-network",
- "xml":"<set>\n<parameter name='l3-network-id' value='`$aai.l3-network.l3-network[$db-network-index].network-id`' />\n",
- "comments":"",
- "x":3625.7618255615234,
- "y":2482.4283475875854,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"2eaed654.44544a",
- "type":"switchNode",
- "name":"switch l3-network-id",
- "xml":"<switch test='`$l3-network-id`'>\n",
- "comments":"",
- "outputs":1,
- "x":930.4286270141602,
- "y":2609.428741455078,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "94d5eb5b.9dfb28"
- ]
- ]
- },
- {
- "id":"94d5eb5b.9dfb28",
- "type":"outcome",
- "name":"-1",
- "xml":"<outcome value='-1'>\n",
- "comments":"",
- "outputs":1,
- "x":1100.4285774230957,
- "y":2609.428497314453,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "819df612.f478a8"
- ]
- ]
- },
- {
- "id":"819df612.f478a8",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"`'Unable to find l3-network in AAI for network role ' + $db.vf-network-role-mapping[$role-index].network-role`\" />\n",
- "comments":"",
- "x":1248.7619400024414,
- "y":2609.4286346435547,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"c1d69c5f.488e1",
- "type":"switchNode",
- "name":"switch input model-invariant-uuid",
- "xml":"<switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`'>\n",
- "comments":"",
- "outputs":1,
- "x":560.7858200073242,
- "y":1313.8720026016235,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "81712284.6061f",
- "bbef1dff.d32a1"
- ]
- ]
- },
- {
- "id":"81712284.6061f",
- "type":"outcome",
- "name":"NULL",
- "xml":"<outcome value=''>",
- "comments":"",
- "outputs":1,
- "x":766.4524917602539,
- "y":1291.0149660110474,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "911708ca.a4ec28"
- ]
- ]
- },
- {
- "id":"bbef1dff.d32a1",
- "type":"other",
- "name":"other",
- "xml":"<outcome value='Other'>\n",
- "comments":"",
- "outputs":1,
- "x":767.8810882568359,
- "y":1335.3005571365356,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "9d361538.39a998"
- ]
- ]
- },
- {
- "id":"9d361538.39a998",
- "type":"set",
- "name":"set from input",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-invariant-uuid'\n value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`' />\n",
- "comments":"",
- "x":922.1668243408203,
- "y":1334.7291293144226,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"c01c75b7.d771a8",
- "type":"set",
- "name":"set from DB",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-uuid'\n value='`$db.vf-model.uuid`' />\n",
- "comments":"",
- "x":917.8810157775879,
- "y":1379.5862350463867,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"71b9cf5e.13115",
- "type":"switchNode",
- "name":"switch input model-uuid",
- "xml":"<switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`'>\n",
- "comments":"",
- "outputs":1,
- "x":533.4048385620117,
- "y":1402.4107398986816,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "cb6c4216.48671",
- "51d9dbfe.50eec4"
- ]
- ]
- },
- {
- "id":"cb6c4216.48671",
- "type":"outcome",
- "name":"NULL",
- "xml":"<outcome value=''>",
- "comments":"",
- "outputs":1,
- "x":767.4048118591309,
- "y":1379.553671836853,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "c01c75b7.d771a8"
- ]
- ]
- },
- {
- "id":"51d9dbfe.50eec4",
- "type":"other",
- "name":"other",
- "xml":"<outcome value='Other'>\n",
- "comments":"",
- "outputs":1,
- "x":768.8334083557129,
- "y":1423.8392629623413,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "8668309.94373d"
- ]
- ]
- },
- {
- "id":"8668309.94373d",
- "type":"set",
- "name":"set from input",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-uuid'\n value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`' />\n",
- "comments":"",
- "x":923.1191444396973,
- "y":1423.2678351402283,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"f9c5e77b.b35768",
- "type":"set",
- "name":"set from DB",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-version'\n value='`$db.vf-model.version`' />\n",
- "comments":"",
- "x":915.0239486694336,
- "y":1468.4434423446655,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"4bbcb529.9daacc",
- "type":"switchNode",
- "name":"switch input model-version",
- "xml":"<switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-version`'>\n",
- "comments":"",
- "outputs":1,
- "x":541.5477104187012,
- "y":1491.2678871154785,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "a7d107ab.83c758",
- "78b9d8ab.538148"
- ]
- ]
- },
- {
- "id":"a7d107ab.83c758",
- "type":"outcome",
- "name":"NULL",
- "xml":"<outcome value=''>",
- "comments":"",
- "outputs":1,
- "x":764.5476951599121,
- "y":1468.410849571228,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "f9c5e77b.b35768"
- ]
- ]
- },
- {
- "id":"78b9d8ab.538148",
- "type":"other",
- "name":"other",
- "xml":"<outcome value='Other'>\n",
- "comments":"",
- "outputs":1,
- "x":765.9762916564941,
- "y":1512.6964406967163,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "e7c733ab.83255"
- ]
- ]
- },
- {
- "id":"e7c733ab.83255",
- "type":"set",
- "name":"set from input",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-version'\n value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-version`' />\n",
- "comments":"",
- "x":920.2620277404785,
- "y":1512.1250128746033,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"5c05bbe1.d44bc4",
- "type":"set",
- "name":"set from DB",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-name'\n value='`$db.vf-model.name`' />\n",
- "comments":"",
- "x":915.0239486694336,
- "y":1555.5862646102905,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"12e97c5b.66ee84",
- "type":"switchNode",
- "name":"switch input model-name",
- "xml":"<switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-name`'>\n",
- "comments":"",
- "outputs":1,
- "x":536.5477104187012,
- "y":1578.4107093811035,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "af70cdb.ef6023",
- "f3d34dfc.cbd31"
- ]
- ]
- },
- {
- "id":"af70cdb.ef6023",
- "type":"outcome",
- "name":"NULL",
- "xml":"<outcome value=''>",
- "comments":"",
- "outputs":1,
- "x":764.5476951599121,
- "y":1555.553671836853,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "5c05bbe1.d44bc4"
- ]
- ]
- },
- {
- "id":"f3d34dfc.cbd31",
- "type":"other",
- "name":"other",
- "xml":"<outcome value='Other'>\n",
- "comments":"",
- "outputs":1,
- "x":765.9762916564941,
- "y":1599.8392629623413,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "ba8a085e.f15f18"
- ]
- ]
- },
- {
- "id":"ba8a085e.f15f18",
- "type":"set",
- "name":"set from input",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-name'\n value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-name`' />\n",
- "comments":"",
- "x":920.2620277404785,
- "y":1599.2678351402283,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"716a882.9ab7178",
- "type":"block",
- "name":"block",
- "xml":"<block>\n",
- "atomic":"false",
- "comments":"",
- "outputs":1,
- "x":1669.3333549499512,
- "y":2459.586400985718,
- "z":"fd246789.67c9b8",
- "wires":[
- [
-
- ]
- ]
- },
- {
- "id":"41d53be7.1f6d94",
- "type":"outcome",
- "name":"PendingDelete",
- "xml":"<outcome value='PendingDelete'>\n",
- "comments":"",
- "outputs":1,
- "x":1513.9999961853027,
- "y":2414.5863151550293,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "88ce6156.79525"
- ]
- ]
- },
- {
- "id":"88ce6156.79525",
- "type":"block",
- "name":"block",
- "xml":"<block>\n",
- "atomic":"false",
- "comments":"",
- "outputs":1,
- "x":1669.2140884399414,
- "y":2415.3631925582886,
- "z":"fd246789.67c9b8",
- "wires":[
- [
-
- ]
- ]
- },
- {
- "id":"f51d095f.d31e98",
- "type":"outcome",
- "name":"Pending Create",
- "xml":"<outcome value='Pending Create'>\n",
- "comments":"",
- "outputs":1,
- "x":1515.9999961853027,
- "y":2371.2528190612793,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "1d66b0a7.bf415f"
- ]
- ]
- },
- {
- "id":"1d66b0a7.bf415f",
- "type":"block",
- "name":"block",
- "xml":"<block>\n",
- "atomic":"false",
- "comments":"",
- "outputs":1,
- "x":1669.2140884399414,
- "y":2372.0296964645386,
- "z":"fd246789.67c9b8",
- "wires":[
- [
-
- ]
- ]
- },
- {
- "id":"265b5201.897f0e",
- "type":"outcome",
- "name":"PendingCreate",
- "xml":"<outcome value='PendingCreate'>\n",
- "comments":"",
- "outputs":1,
- "x":1515.9999961853027,
- "y":2327.9195671081543,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "569d335c.bf6c3c"
- ]
- ]
- },
- {
- "id":"569d335c.bf6c3c",
- "type":"block",
- "name":"block",
- "xml":"<block>\n",
- "atomic":"false",
- "comments":"",
- "outputs":1,
- "x":1669.2140884399414,
- "y":2328.6964445114136,
- "z":"fd246789.67c9b8",
- "wires":[
- [
-
- ]
- ]
- },
- {
- "id":"ebe74367.6c98d",
- "type":"for",
- "name":"for each A&AI subnet",
- "xml":"<for index='subnet-index' start='0' end='`$aai.l3-network.l3-network[0].subnets.subnet_length`' >\n",
- "comments":"",
- "outputs":1,
- "x":932.6667633056641,
- "y":2702.919626235962,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "cfa19178.3c2c3"
- ]
- ]
- },
- {
- "id":"cfa19178.3c2c3",
- "type":"set",
- "name":"set subnet data",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].subnets-data.subnet-data[$subnet-index].ip-version'\n value='`$aai.l3-network.l3-network[$db-network-index].subnets.subnet[$subnet-index].ip-version`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].subnets-data.subnet-data[$subnet-index].subnet-id'\n value='`$aai.l3-network.l3-network[$db-network-index].subnets.subnet[$subnet-index].subnet-id`' />\n",
- "comments":"",
- "x":1130.9999389648438,
- "y":2701.2532052993774,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"a16a767c.1d4a58",
- "type":"set",
- "name":"set subnet_length",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].subnets-data.subnet-data_length'\n value='`$aai.l3-network.l3-network[0].subnets.subnet_length`' />\n",
- "comments":"",
- "x":921.3333282470703,
- "y":2747.919708251953,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"3d1f814c.368f2e",
- "type":"set",
- "name":"set availability-zones.max-count and length",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.availability-zones.max-count'\n value='`$db.vf-model.avail-zone-max-count`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.availability-zones.availability-zone_length'\n value='`$aai.az.availability-zone_length`' />\n",
- "comments":"",
- "x":564.0000610351562,
- "y":3160.6342582702637,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"3315c9d5.fbc886",
- "type":"set",
- "name":"set vnf-name",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-name'\n value='`$tmp.vnf-name`' />\n",
- "comments":"",
- "x":497.66663360595703,
- "y":1247.9197664260864,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"435802ab.cae41c",
- "type":"save",
- "name":"update generic-vnf",
- "xml":"<update plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\"\n resource=\"generic-vnf\"\n key=\"generic-vnf.vnf-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-id\"\n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"vnf-name\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-name`\" />\n<parameter name=\"prov-status\" value=\"PREPROV\" />\n<parameter name=\"operational-status\" value=\"out-of-service-path\" />\n<parameter name=\"equipment-role\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-role`\" />\n<parameter name=\"model-invariant-id\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-invariant-uuid`\" />\n<parameter name=\"model-version-id\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-uuid`\" />\n<parameter name=\"model-customization-id\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-customization-uuid`\" />\n<parameter name=\"selflink\" value=\"`$vnf-object-path`\" />\n",
- "comments":"",
- "outputs":1,
- "x":484.3333282470703,
- "y":3370.300033569336,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "a1a2ecfe.5a9f7",
- "63cf7c2e.6403d4"
- ]
- ]
- },
- {
- "id":"79756539.60282c",
- "type":"set",
- "name":"set vnf-object-path",
- "xml":"<set>\n<parameter name='vnf-object-path'\n value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $vnf-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\n",
- "comments":"",
- "x":484.33336639404297,
- "y":3300.30051612854,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"ca1ff11f.a4d9c",
- "type":"set",
- "name":"set vnf-id",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-id'\n value='`$vnf-topology-operation-input.vnf-information.vnf-id`' />\n",
- "comments":"",
- "x":485.9999771118164,
- "y":1199.5863094329834,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"858218a8.523588",
- "type":"execute",
- "name":"printContext",
- "xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\n<parameter name='filename' value='/var/tmp/bgb-viprend.log' />\n",
- "comments":"",
- "outputs":1,
- "x":462.00009536743164,
- "y":3551.967363357544,
- "z":"fd246789.67c9b8",
- "wires":[
- [
-
- ]
- ]
- },
- {
- "id":"90fb466f.03aa88",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"`'No generic-vnf found in AAI for vnf ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-id`\" />\n",
- "comments":"",
- "x":1407.666805267334,
- "y":3236.9671211242676,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"b6fac54b.97ab18",
- "type":"failure",
- "name":"failure",
- "xml":"<outcome value='failure'>\n",
- "comments":"",
- "outputs":1,
- "x":1220.3573722839355,
- "y":3193.919590950012,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "3c644fce.dbe83"
- ]
- ]
- },
- {
- "id":"8f7c44dc.2bfaf8",
- "type":"not-found",
- "name":"not-found",
- "xml":"<outcome value='not-found'>\n",
- "comments":"",
- "outputs":1,
- "x":1228.9288024902344,
- "y":3238.205304145813,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "90fb466f.03aa88"
- ]
- ]
- },
- {
- "id":"3c644fce.dbe83",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"Error updating generic-vnf in AAI\" />\n",
- "comments":"",
- "x":1410.3573989868164,
- "y":3193.729326248169,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"635e0959.ef5968",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"`'No generic-vnf found in AAI for vnf ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-id`\" />\n",
- "comments":"",
- "x":887.6667442321777,
- "y":3391.967043876648,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"a1a2ecfe.5a9f7",
- "type":"failure",
- "name":"failure",
- "xml":"<outcome value='failure'>\n",
- "comments":"",
- "outputs":1,
- "x":700.3573112487793,
- "y":3348.9195137023926,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "dc15263a.8bf0c8"
- ]
- ]
- },
- {
- "id":"63cf7c2e.6403d4",
- "type":"not-found",
- "name":"not-found",
- "xml":"<outcome value='not-found'>\n",
- "comments":"",
- "outputs":1,
- "x":708.9287414550781,
- "y":3393.2052268981934,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "635e0959.ef5968"
- ]
- ]
- },
- {
- "id":"dc15263a.8bf0c8",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"Error updating selflink in generic-vnf in AAI\" />\n",
- "comments":"",
- "x":890.3573379516602,
- "y":3348.7292490005493,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"a7335a29.c13d48",
- "type":"set",
- "name":"set model-customization-uuid",
- "xml":"<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-customization-uuid'\n value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`' />\n",
- "comments":"",
- "x":549.3332977294922,
- "y":1651.2529134750366,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"f96ea41d.1ff208",
- "type":"execute",
- "name":"split related-link",
- "xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>\n <parameter name='ctx_memory_result_key' value='aai-uid-split' />\n <parameter name='original_string' value='`$aai.cloud-region.relationship-list.relationship[$idx].related-link`' />\n <parameter name='regex' value='/' />\n",
- "comments":"",
- "outputs":1,
- "x":1314.6665954589844,
- "y":1772.6664972305298,
- "z":"fd246789.67c9b8",
- "wires":[
- [
-
- ]
- ]
- },
- {
- "id":"7c602050.7b0ac",
- "type":"block",
- "name":"block : atomic",
- "xml":"<block atomic=\"true\">",
- "atomic":"true",
- "outputs":1,
- "x":1134.3332977294922,
- "y":1819.333285331726,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "f96ea41d.1ff208",
- "cbda08be.5e00d8",
- "b2382668.d3f318"
- ]
- ]
- },
- {
- "id":"b2382668.d3f318",
- "type":"break",
- "name":"break",
- "xml":"<break>\n",
- "comments":"",
- "x":1284.3332595825195,
- "y":1862.666582107544,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"7193ae4f.a03bb",
- "type":"block",
- "name":"block : atomic",
- "xml":"<block atomic=\"true\">",
- "atomic":"true",
- "outputs":1,
- "x":796,
- "y":3071.7143869400024,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "bec7777f.49caa8",
- "2fe66adc.46b646"
- ]
- ]
- },
- {
- "id":"2fe66adc.46b646",
- "type":"save",
- "name":"save generic-vnf availability-zone relationship",
- "xml":"<save plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\"\n 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=\"availability-zone\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"cloud-region.cloud-owner\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"CloudOwner\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[1].relationship-key\" value=\"cloud-region.cloud-region-id\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[1].relationship-value\" value=\"`$vnf-topology-operation-input.vnf-request-input.aic-cloud-region`\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[2].relationship-key\" value=\"availability-zone.availability-zone-name\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[2].relationship-value\" value=\"`$aai.az.availability-zone[$idx].availability-zone-name`\" />\n",
- "comments":"",
- "outputs":1,
- "x":1087.9048156738281,
- "y":3095.0478343963623,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "31eeede2.e6b5f2",
- "9e258d80.f8a09"
- ]
- ]
- },
- {
- "id":"51e42555.9814cc",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"`'No generic-vnf found in AAI for vnf ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-id`\" />\n",
- "comments":"",
- "x":1541.47607421875,
- "y":3118.9671936035156,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"31eeede2.e6b5f2",
- "type":"failure",
- "name":"failure",
- "xml":"<outcome value='failure'>\n",
- "comments":"",
- "outputs":1,
- "x":1354.1666412353516,
- "y":3075.9196634292603,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "e9675503.f145d8"
- ]
- ]
- },
- {
- "id":"9e258d80.f8a09",
- "type":"not-found",
- "name":"not-found",
- "xml":"<outcome value='not-found'>\n",
- "comments":"",
- "outputs":1,
- "x":1362.7380714416504,
- "y":3120.205376625061,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "51e42555.9814cc"
- ]
- ]
- },
- {
- "id":"e9675503.f145d8",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"Error updating generic-vnf in AAI\" />\n",
- "comments":"",
- "x":1544.1666679382324,
- "y":3075.729398727417,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"ce44b8cb.59b0b8",
- "type":"set",
- "name":"set mapping rows to 0",
- "xml":"<set>\n<parameter name='db.vf-network-role-mapping_length' value='0' />\n",
- "comments":"",
- "x":1108.1427688598633,
- "y":2065.52388381958,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"ffd11c87.313e8",
- "type":"switchNode",
- "name":"switch AAI availability-zone_length",
- "xml":"<switch test='`$aai.az.availability-zone_length`'>\n",
- "comments":"",
- "outputs":1,
- "x":536.7142868041992,
- "y":2975.523973464966,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "f7464066.4b3d4"
- ]
- ]
- },
- {
- "id":"f7464066.4b3d4",
- "type":"outcome",
- "name":"NULL",
- "xml":"<outcome value=''>",
- "comments":"",
- "outputs":1,
- "x":755.2857055664062,
- "y":2975.0953826904297,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "632fea45.95b4c4"
- ]
- ]
- },
- {
- "id":"797aa504.5376fc",
- "type":"set",
- "name":"set availability-zone_length to 0",
- "xml":"<set>\n<parameter name='aai.az.availability-zone_length' value='0' />\n",
- "comments":"",
- "x":1356.7143478393555,
- "y":2993.6666202545166,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"632fea45.95b4c4",
- "type":"switchNode",
- "name":"switch AZ max count > 0",
- "xml":"<switch test='`$db.vf-model.avail-zone-max-count &gt; 0`'>\n",
- "comments":"",
- "outputs":1,
- "x":943.857177734375,
- "y":2975.5236945152283,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "c29ececd.4b1d9",
- "1e15158e.a3fbea"
- ]
- ]
- },
- {
- "id":"c29ececd.4b1d9",
- "type":"outcomeTrue",
- "name":"true",
- "xml":"<outcome value='true'>\n",
- "comments":"",
- "outputs":1,
- "x":1146.7142848968506,
- "y":2949.8094444274902,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "66595a0d.b7fbd4"
- ]
- ]
- },
- {
- "id":"1e15158e.a3fbea",
- "type":"outcomeFalse",
- "name":"false",
- "xml":"<outcome value='false'>\n",
- "comments":"",
- "outputs":1,
- "x":1148.1429061889648,
- "y":2994.0951919555664,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "797aa504.5376fc"
- ]
- ]
- },
- {
- "id":"66595a0d.b7fbd4",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"`'No availability zones found in AAI for cloud region '\n + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region`\" />\n",
- "comments":"",
- "x":1298.142822265625,
- "y":2949.5238494873047,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- },
- {
- "id":"c8f006fe.b172c8",
- "type":"get-resource",
- "name":"get-resource availability zones",
- "xml":"<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"availability-zones\" \n\t\tkey=\"cloud-region.cloud-owner = 'CloudOwner' AND \n\t\t cloud-region.cloud-region-id = $vnf-topology-operation-input.vnf-request-input.aic-cloud-region AND\n\t\t depth='0'\"\n pfx='aai.az' local-only='false' >\n\n",
- "comments":"",
- "outputs":1,
- "x":546.7143096923828,
- "y":1902.4286441802979,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "9a0f1e6d.bbdfb"
- ]
- ]
- },
- {
- "id":"9a0f1e6d.bbdfb",
- "type":"failure",
- "name":"failure",
- "xml":"<outcome value='failure'>\n",
- "comments":"",
- "outputs":1,
- "x":771.9605255126953,
- "y":1901.829496383667,
- "z":"fd246789.67c9b8",
- "wires":[
- [
- "57e15af7.8d7174"
- ]
- ]
- },
- {
- "id":"57e15af7.8d7174",
- "type":"returnFailure",
- "name":"return failure",
- "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=\"Error retrieving availability zones from AAI\" />\n",
- "comments":"",
- "x":945.7104644775391,
- "y":1900.5796184539795,
- "z":"fd246789.67c9b8",
- "wires":[
-
- ]
- }
-] \ No newline at end of file
+ {
+ "id": "7f85b319.ec8264",
+ "name": "DGSTART",
+ "outputs": 1,
+ "type": "dgstart",
+ "wires": [
+ [
+ "90051ccf.47dd18"
+ ]
+ ],
+ "x": 158,
+ "y": 108,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "90051ccf.47dd18",
+ "module": "GENERIC-RESOURCE-API",
+ "name": "GENERIC-RESOURCE-API 1.3.2-SNAPSHOT-20180531",
+ "outputs": 1,
+ "type": "service-logic",
+ "version": "${project.version}",
+ "wires": [
+ [
+ "62c9c96e.2f8908"
+ ]
+ ],
+ "x": 271.61902618408203,
+ "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}'>",
+ "y": 148.2381134033203,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "62c9c96e.2f8908",
+ "name": "method vnf-topology-operation-assign",
+ "outputs": 1,
+ "type": "method",
+ "wires": [
+ [
+ "8c2093db.c56518"
+ ]
+ ],
+ "x": 249.42862701416016,
+ "xml": "<method rpc='vnf-topology-operation-assign' mode='sync'>\n",
+ "y": 188,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "5c8563c8.abc554",
+ "info": "",
+ "name": "vnf-topology-operation-assign",
+ "type": "comment",
+ "wires": [],
+ "x": 552.344856262207,
+ "y": 55.58634376525879,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "3ee765f3.a92b8a",
+ "name": "switch request-action",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "7d474a32.9007b4",
+ "46a9e819.26787"
+ ]
+ ],
+ "x": 559.8571395874023,
+ "xml": "<switch test='`$vnf-topology-operation-input.request-information.request-action`'>\n",
+ "y": 385.19043922424316,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "7d474a32.9007b4",
+ "name": "CreateVnfInstance",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "1dd86dc0.120d9a"
+ ]
+ ],
+ "x": 813.5714340209961,
+ "xml": "<outcome value='CreateVnfInstance'>\n",
+ "y": 362.3333206176758,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "46a9e819.26787",
+ "name": "other",
+ "outputs": 1,
+ "type": "other",
+ "wires": [
+ [
+ "cb51940c.60aca8"
+ ]
+ ],
+ "x": 775.5713996887207,
+ "xml": "<outcome value='Other'>\n",
+ "y": 408.0476484298706,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "false",
+ "comments": "",
+ "id": "1dd86dc0.120d9a",
+ "name": "block",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ []
+ ],
+ "x": 998.4285621643066,
+ "xml": "<block>\n",
+ "y": 362.3333501815796,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "cb51940c.60aca8",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1015.5714073181152,
+ "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=\"If svc-action is 'assign' then request-action must be 'CreateVnfInstance'\" />\n",
+ "y": 408.0476064682007,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "true",
+ "id": "8c2093db.c56518",
+ "name": "block : atomic",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ [
+ "3ee765f3.a92b8a",
+ "d60893e6.15d0e8",
+ "fb8a3580.e4647",
+ "aac10be0.39a0e8",
+ "b403c1ec.e059b",
+ "b572efaa.cba408",
+ "8e7983f7.0b8ac8",
+ "95a9e356.edb75",
+ "c85d4198.45c628",
+ "26c17497.86b44c",
+ "1a64389.04fb547",
+ "2217154e.6141c2",
+ "deeeb827.37f63",
+ "c4c1c921.76e2b8",
+ "1da784bd.1a325b",
+ "6ce3245c.227ed4",
+ "97e88fe.9dab2f",
+ "84324533.95146",
+ "fe738685.6c7d7",
+ "2ab7bc1f.b085b4",
+ "2dbfa8ac.567be8",
+ "c33b5d51.3d59e",
+ "f8b8a722.fd6508",
+ "f03f1068.5af0c",
+ "5e785184.8c4128",
+ "3a4f6bb1.560164",
+ "9bd6668b.dfc92",
+ "391ed085.26b75",
+ "2e7ae530.0e2cea",
+ "611f691d.f4b31",
+ "c510e207.134d3"
+ ]
+ ],
+ "x": 188.11905670166016,
+ "xml": "<block atomic=\"true\">",
+ "y": 1719.7857055664062,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "d60893e6.15d0e8",
+ "name": "get-resource VF_MODEL",
+ "outputs": 1,
+ "type": "get-resource",
+ "wires": [
+ [
+ "55ac2b52.c147bc",
+ "37dc7224.b3292e"
+ ]
+ ],
+ "x": 572.1904449462891,
+ "xml": "<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n key='SELECT * from VF_MODEL WHERE customization_uuid = $vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid'\n pfx='db.vf-model'>\n\n",
+ "y": 476.333309173584,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "3a32be2b.d9bc92",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1013.6189231872559,
+ "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=\"`'No model found for VNF customization UUID ' + $vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`\" />\n",
+ "y": 499.7617950439453,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "55ac2b52.c147bc",
+ "name": "failure",
+ "outputs": 1,
+ "type": "failure",
+ "wires": [
+ [
+ "48eedae7.45629c"
+ ]
+ ],
+ "x": 772.9761428833008,
+ "xml": "<outcome value='failure'>\n",
+ "y": 456.7141466140747,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "37dc7224.b3292e",
+ "name": "not-found",
+ "outputs": 1,
+ "type": "not-found",
+ "wires": [
+ [
+ "3a32be2b.d9bc92"
+ ]
+ ],
+ "x": 781.5475730895996,
+ "xml": "<outcome value='not-found'>\n",
+ "y": 500.9998598098755,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "48eedae7.45629c",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1012.9761238098145,
+ "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=\"Error reading VF_MODEL table\" />\n",
+ "y": 454.85705375671387,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "fb8a3580.e4647",
+ "name": "switch service-data.vnfs.vnf_length",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "465f36d2.0e073",
+ "2ecc5899.269788"
+ ]
+ ],
+ "x": 602.2857131958008,
+ "xml": "<switch test='`$service-data.vnfs.vnf_length`'>\n",
+ "y": 666.5714282989502,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "465f36d2.0e073",
+ "name": "NULL",
+ "outputs": 1,
+ "type": "other",
+ "wires": [
+ [
+ "ba18a24.ad916e"
+ ]
+ ],
+ "x": 828.0000419616699,
+ "xml": "<outcome value=''>\n",
+ "y": 633.7142162322998,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "ba18a24.ad916e",
+ "name": "set vnf-index=0",
+ "type": "set",
+ "wires": [],
+ "x": 992.2857627868652,
+ "xml": "<set>\n<parameter name='vnf-index' value='0' />\n",
+ "y": 632.7142944335938,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "2ecc5899.269788",
+ "name": "other",
+ "outputs": 1,
+ "type": "other",
+ "wires": [
+ [
+ "4ebd83c7.528a64"
+ ]
+ ],
+ "x": 829.4286041259766,
+ "xml": "<outcome value='Other'>\n",
+ "y": 698.0000343322754,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "7048a1cb.adf078",
+ "name": "set vnf-index = vnf_length",
+ "type": "set",
+ "wires": [],
+ "x": 1168.285758972168,
+ "xml": "<set>\n<parameter name='vnf-index' value='`$service-data.vnfs.vnf_length`' />\n",
+ "y": 676.285722732544,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "d5aeee8c.b79908",
+ "name": "for each existing VNF",
+ "outputs": 1,
+ "type": "for",
+ "wires": [
+ [
+ "ce4d4a26.2f4908"
+ ]
+ ],
+ "x": 1153.7142715454102,
+ "xml": "<for index='idx' start='0' end='`$service-data.vnfs.vnf_length`' >\n",
+ "y": 722.2856616973877,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "false",
+ "comments": "",
+ "id": "4ebd83c7.528a64",
+ "name": "block",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ [
+ "7048a1cb.adf078",
+ "d5aeee8c.b79908"
+ ]
+ ],
+ "x": 965.1428642272949,
+ "xml": "<block>\n",
+ "y": 698,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "ce4d4a26.2f4908",
+ "name": "switch vnf-information.vnf-id == service-data.vnfs.vnf[].vnf-id",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "7bb84912.63e62"
+ ]
+ ],
+ "x": 1508.0000381469727,
+ "xml": "<switch test='`$vnf-topology-operation-input.vnf-information.vnf-id == $service-data.vnfs.vnf[$idx].vnf-id`'>\n",
+ "y": 721.857141494751,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "7bb84912.63e62",
+ "name": "true",
+ "outputs": 1,
+ "type": "outcomeTrue",
+ "wires": [
+ [
+ "8287fea2.8f264"
+ ]
+ ],
+ "x": 1802.2857475280762,
+ "xml": "<outcome value='true'>\n",
+ "y": 721.4286136627197,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "8287fea2.8f264",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1950.8571548461914,
+ "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=\"`'VNF id ' + $service-data.vnfs.vnf[$idx].vnf-id\n + ' already exists, and has order status ' + $service-data.vnfs.vnf[$idx].vnf-data.vnf-level-oper-status.order-status`\" />\n",
+ "y": 721.4285736083984,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "7bf5b528.4f469c",
+ "info": "",
+ "name": "make sure this VNF doesn't exist already",
+ "type": "comment",
+ "wires": [],
+ "x": 1495.1427688598633,
+ "y": 679.4285717010498,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "aac10be0.39a0e8",
+ "name": "set vnf-topology data",
+ "type": "set",
+ "wires": [],
+ "x": 557.9999694824219,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-id'\n value='`$vnf-topology-operation-input.vnf-information.vnf-id`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-type'\n value='`$vnf-topology-operation-input.vnf-information.vnf-type`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-type'\n value='`$db.vf-model.nf-type`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-role'\n value='`$db.vf-model.nf-role`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-function'\n value='`$db.vf-model.nf-function`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-code'\n value='`$db.vf-model.nf-code`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.tenant'\n value='`$vnf-topology-operation-input.vnf-request-input.tenant`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.aic-cloud-region'\n value='`$vnf-topology-operation-input.vnf-request-input.aic-cloud-region`' />\n \n",
+ "y": 828.238115310669,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "b403c1ec.e059b",
+ "name": "switch input vnf-name",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "98b70d2d.7445c8",
+ "ff9bcb42.eb5f1"
+ ]
+ ],
+ "x": 564.4285507202148,
+ "xml": "<switch test='`$vnf-topology-operation-input.vnf-request-input.vnf-name`'>\n",
+ "y": 1070.8571615219116,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "98b70d2d.7445c8",
+ "name": "NULL",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "5ce76bf0.0fe7fc"
+ ]
+ ],
+ "x": 832.6427726745605,
+ "xml": "<outcome value=''>",
+ "y": 993.8333864212036,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "dddcb6fb.6fadd",
+ "name": "switch ecomp-generated-naming",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "a0e8eebb.f2bf6",
+ "fcddb1f1.15f2c8",
+ "fb5bcd7b.93abb8"
+ ]
+ ],
+ "x": 1249.071662902832,
+ "xml": "<switch test='`$db.vf-model.ecomp-generated-naming`'>\n",
+ "y": 900.5002059936523,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "true",
+ "id": "5ce76bf0.0fe7fc",
+ "name": "block : atomic",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ [
+ "5795f411.5a64bc",
+ "9b41a0f.e8b05e",
+ "dddcb6fb.6fadd"
+ ]
+ ],
+ "x": 978.3572692871094,
+ "xml": "<block atomic=\"true\">",
+ "y": 993.833498954773,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "fcddb1f1.15f2c8",
+ "name": "N",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "9a465697.6d89a"
+ ]
+ ],
+ "x": 1498.357322692871,
+ "xml": "<outcome value='N'>",
+ "y": 902.404914855957,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "9a465697.6d89a",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1652.64310836792,
+ "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=\"No vnf-name was received but ecomp-generated-naming is not Y\" />\n",
+ "y": 920.9763593673706,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "a0e8eebb.f2bf6",
+ "name": "Y",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "b8327ea6.6151"
+ ]
+ ],
+ "x": 1498.3572883605957,
+ "xml": "<outcome value='Y'>",
+ "y": 858.1192359924316,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "fb5bcd7b.93abb8",
+ "name": "other",
+ "outputs": 1,
+ "type": "other",
+ "wires": [
+ [
+ "9a465697.6d89a"
+ ]
+ ],
+ "x": 1498.357250213623,
+ "xml": "<outcome value='Other'>\n",
+ "y": 948.119234085083,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "false",
+ "comments": "",
+ "id": "b8327ea6.6151",
+ "name": "block",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ []
+ ],
+ "x": 1635.5002326965332,
+ "xml": "<block>\n",
+ "y": 858.1192359924316,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "ff9bcb42.eb5f1",
+ "name": "other",
+ "outputs": 1,
+ "type": "other",
+ "wires": [
+ [
+ "1614942.5f3dcec"
+ ]
+ ],
+ "x": 835.2144546508789,
+ "xml": "<outcome value='Other'>\n",
+ "y": 1140.119125366211,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "f88d9a18.d869f8",
+ "name": "set tmp.vnf-name",
+ "type": "set",
+ "wires": [],
+ "x": 1794.0715306599936,
+ "xml": "<set>\n<parameter name='tmp.vnf-name' value=\"`$vnf-topology-operation-input.vnf-request-input.vnf-name`\" />\n",
+ "y": 1207.5476417541504,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "5795f411.5a64bc",
+ "name": "call GENERIC-RESOURCE-API:generate-unique-name",
+ "outputs": 1,
+ "type": "call",
+ "wires": [
+ [
+ "51165cf7.f6843c",
+ "f172e525.aff23"
+ ]
+ ],
+ "x": 1317.4763259887695,
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='generate-unique-name' mode='sync' >\n",
+ "y": 1066.8333959579468,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "51165cf7.f6843c",
+ "name": "failure",
+ "outputs": 1,
+ "type": "failure",
+ "wires": [
+ [
+ "682b96e6.6b632"
+ ]
+ ],
+ "x": 1613.1906140645347,
+ "xml": "<outcome value='failure'>\n",
+ "y": 1039.690658569336,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "f172e525.aff23",
+ "name": "success",
+ "outputs": 1,
+ "type": "success",
+ "wires": [
+ [
+ "aa7e9b78.4083b"
+ ]
+ ],
+ "x": 1616.5239639282227,
+ "xml": "<outcome value='success'>\n",
+ "y": 1091.3573017120361,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "9b41a0f.e8b05e",
+ "name": "set variables for generating unique name",
+ "type": "set",
+ "wires": [],
+ "x": 1274.1430130004883,
+ "xml": "<set>\n<parameter name='generate-unique-name-input.index-table-name' value='VNF_NAME_INDEX' />\n<parameter name='generate-unique-name-input.index-table-prefix-column' value='vnf_name_prefix' />\n<parameter name='generate-unique-name-input.name-table-type' value='VNF_INSTANCE' />\n<parameter name='generate-unique-name-input.prefix' value=\"`'z' + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region + $db.vf-model.nf-code`\" />\n<parameter name='generate-unique-name-input.index-length' value='2' />\n",
+ "y": 1015.1668043136597,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "aa7e9b78.4083b",
+ "name": "set tmp.vnf-name to generated name",
+ "type": "set",
+ "wires": [],
+ "x": 1857.7143491109214,
+ "xml": "<set>\n<parameter name='tmp.vnf-name' value='`$generate-unique-name-output.generated-name`' />\n",
+ "y": 1091.8333930969238,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "682b96e6.6b632",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1781.0477269490561,
+ "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=\"`$generate-unique-name-output.error-message`\" />\n",
+ "y": 1039.1191701889038,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "true",
+ "id": "1614942.5f3dcec",
+ "name": "block : atomic",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ [
+ "4f4e849f.98565c",
+ "237fb0e1.59bbc8"
+ ]
+ ],
+ "x": 983.1429824829102,
+ "xml": "<block atomic=\"true\">",
+ "y": 1138.7858123779297,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "237fb0e1.59bbc8",
+ "name": "call GENERIC-RESOURCE-API:generate-unique-name",
+ "outputs": 1,
+ "type": "call",
+ "wires": [
+ [
+ "445f33b6.f0f264",
+ "b1ac48e3.52ee98"
+ ]
+ ],
+ "x": 1313.1429824829102,
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='generate-unique-name' mode='sync' >\n",
+ "y": 1186.7858123779297,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "445f33b6.f0f264",
+ "name": "failure",
+ "outputs": 1,
+ "type": "failure",
+ "wires": [
+ [
+ "d05b4ba7.3c07f"
+ ]
+ ],
+ "x": 1611.7143987019858,
+ "xml": "<outcome value='failure'>\n",
+ "y": 1156.785837173462,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "b1ac48e3.52ee98",
+ "name": "success",
+ "outputs": 1,
+ "type": "success",
+ "wires": [
+ [
+ "f88d9a18.d869f8"
+ ]
+ ],
+ "x": 1615.0477485656738,
+ "xml": "<outcome value='success'>\n",
+ "y": 1208.452480316162,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "4f4e849f.98565c",
+ "name": "set variables for generating unique name",
+ "type": "set",
+ "wires": [],
+ "x": 1269.8096542358398,
+ "xml": "<set>\n<parameter name='generate-unique-name-input.name-table-type' value='VNF_INSTANCE' />\n<parameter name='generate-unique-name-input.supplied-name' value='`$vnf-topology-operation-input.vnf-request-input.vnf-name`' />\n",
+ "y": 1135.1191844940186,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "d05b4ba7.3c07f",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1779.5715115865073,
+ "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=\"`$generate-unique-name-output.error-message`\" />\n",
+ "y": 1156.2143487930298,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "b572efaa.cba408",
+ "name": "get-resource cloud region",
+ "outputs": 1,
+ "type": "get-resource",
+ "wires": [
+ [
+ "a348eda7.660348",
+ "142de0c9.dde827"
+ ]
+ ],
+ "x": 586.5714492797852,
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"cloud-region\" \n\t\tkey=\"cloud-region.cloud-owner = 'CloudOwner' AND \n\t\t cloud-region.cloud-region-id = $vnf-topology-operation-input.vnf-request-input.aic-cloud-region AND\n\t\t depth='0'\"\n pfx='aai.cloud-region' local-only='false' >\n\n",
+ "y": 1748.8569984436035,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "142de0c9.dde827",
+ "name": "failure",
+ "outputs": 1,
+ "type": "failure",
+ "wires": [
+ [
+ "34ef927d.00b456"
+ ]
+ ],
+ "x": 811.8176422119141,
+ "xml": "<outcome value='failure'>\n",
+ "y": 1767.00785446167,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "34ef927d.00b456",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 986.8176155090332,
+ "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=\"Error retrieving cloud region from AAI\" />\n",
+ "y": 1767.007890701294,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "a348eda7.660348",
+ "name": "not-found",
+ "outputs": 1,
+ "type": "not-found",
+ "wires": [
+ [
+ "ac864602.325b48"
+ ]
+ ],
+ "x": 820.7462387084961,
+ "xml": "<outcome value='not-found'>\n",
+ "y": 1725.2935876846313,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "ac864602.325b48",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 987.095516204834,
+ "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=\"Cloud region not found in AAI\" />\n",
+ "y": 1724.5991649627686,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "8e7983f7.0b8ac8",
+ "name": "get-resource VF_TO_NETWORK_ROLE_MAPPING",
+ "outputs": 1,
+ "type": "get-resource",
+ "wires": [
+ [
+ "4303334b.1d06ac",
+ "97da19d.b97dfe8"
+ ]
+ ],
+ "x": 651.8095321655273,
+ "xml": "<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\n key='SELECT * from VF_TO_NETWORK_ROLE_MAPPING WHERE vf_customization_uuid = $vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid'\n pfx='db.vf-network-role-mapping[]'>\n\n",
+ "y": 2059.9045181274414,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "d4db95bc.3539b",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1387.5237121582031,
+ "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=\"`'No entries found in VF_TO_NETWORK_ROLE_MAPPING for VNF customization UUID ' + $vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`\" />\n",
+ "y": 2077.618698120117,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "4303334b.1d06ac",
+ "name": "failure",
+ "outputs": 1,
+ "type": "failure",
+ "wires": [
+ [
+ "1cb8c40f.bbd244"
+ ]
+ ],
+ "x": 947.5952033996582,
+ "xml": "<outcome value='failure'>\n",
+ "y": 2038.6186828613281,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "97da19d.b97dfe8",
+ "name": "not-found",
+ "outputs": 1,
+ "type": "not-found",
+ "wires": [
+ [
+ "2ca15486.5cc8cc"
+ ]
+ ],
+ "x": 956.166633605957,
+ "xml": "<outcome value='not-found'>\n",
+ "y": 2082.904396057129,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "1cb8c40f.bbd244",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1122.5951843261719,
+ "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=\"Error reading VF_TO_NETWORK_ROLE_MAPPING table\" />\n",
+ "y": 2038.4283332824707,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "true",
+ "id": "796cc7.d490b338",
+ "name": "block : atomic",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ [
+ "465ab09f.34229",
+ "799318e1.a3e3a",
+ "dc31ec67.0624a",
+ "d834554a.ccf5f",
+ "30a0e3fe.983584",
+ "bc183bd7.3e811",
+ "dc8fa939.b773f",
+ "5090527e.f6c044"
+ ]
+ ],
+ "x": 752.5715866088867,
+ "xml": "<block atomic=\"true\">",
+ "y": 2508.71391582489,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "dc31ec67.0624a",
+ "name": "get-resource l3-network",
+ "outputs": 1,
+ "type": "get-resource",
+ "wires": [
+ [
+ "c81a364.d370848",
+ "419e2508.7620ac"
+ ]
+ ],
+ "x": 985.4286041259766,
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"l3-networks\" \n\t\tkey=\"l3-network.network-role = $db.vf-network-role-mapping[$role-index].network-role\"\n pfx='aai.l3-network' local-only='false'\n>\n",
+ "y": 2187.999779701233,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "419e2508.7620ac",
+ "name": "failure",
+ "outputs": 1,
+ "type": "failure",
+ "wires": [
+ [
+ "b16e3091.456208"
+ ]
+ ],
+ "x": 1189.476318359375,
+ "xml": "<outcome value='failure'>\n",
+ "y": 2210.1426191329956,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "b16e3091.456208",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1364.4762916564941,
+ "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=\"Error retrieving l3-network from AAI\" />\n",
+ "y": 2210.1426553726196,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "c81a364.d370848",
+ "name": "not-found",
+ "outputs": 1,
+ "type": "not-found",
+ "wires": [
+ [
+ "1b8e966.12c8b6a"
+ ]
+ ],
+ "x": 1198.404914855957,
+ "xml": "<outcome value='not-found'>\n",
+ "y": 2168.428352355957,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "1b8e966.12c8b6a",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1364.754192352295,
+ "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=\"`'No active l3-network found in AAI with cloud_region_id '\n + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region + ' and network_role '\n + $db.vf-network-role-mapping[$network-index].network-role`\" />\n",
+ "y": 2167.7339296340942,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "465ab09f.34229",
+ "name": "set vnf-network data",
+ "type": "set",
+ "wires": [],
+ "x": 974.6191940307617,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].network-role'\n value='`$db.vf-network-role-mapping[$role-index].network-role`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].network-name'\n value='`$aai.l3-network.l3-network[$db-network-index].network-name`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].neutron-id'\n value='`$aai.l3-network.l3-network[$db-network-index].neutron-network-id`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].network-id'\n value='`$aai.l3-network.l3-network[$db-network-index].network-id`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].contrail-network-fqdn'\n value='`$aai.l3-network.l3-network[$db-network-index].contrail-network-fqdn`' />\n",
+ "y": 2675.0000228881836,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "1a64389.04fb547",
+ "name": "for each cloud-region availability zone",
+ "outputs": 1,
+ "type": "for",
+ "wires": [
+ [
+ "509993f3.7086bc"
+ ]
+ ],
+ "x": 586.3335571289062,
+ "xml": "<for index='idx' start='0' end='`$aai.az.availability-zone_length`' >\n",
+ "y": 3089.618803024292,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "696846f6.70aa8",
+ "name": "set availability-zone",
+ "type": "set",
+ "wires": [],
+ "x": 1048.0002403259277,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.availability-zones.availability-zone[$idx]'\n value='`$aai.az.availability-zone[$idx].availability-zone-name`' />\n",
+ "y": 3058.952217102051,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "2217154e.6141c2",
+ "name": "set vnf-parameters-data",
+ "type": "set",
+ "wires": [],
+ "x": 545.9524841308594,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.'\n value='vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.' />\n",
+ "y": 2939.5711631774902,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "57d7e5fc.33f244",
+ "name": "save generic-vnf l3-network relationships",
+ "outputs": 1,
+ "type": "save",
+ "wires": [
+ [
+ "7186d613.fe144",
+ "35d8114.d0acf6e"
+ ]
+ ],
+ "x": 1012.5240173339844,
+ "xml": "<save plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\"\n 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=\"l3-network\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"l3-network.network-id\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$vnf-nw-index].network-id`\" />\n",
+ "y": 3233.381015777588,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "1da784bd.1a325b",
+ "name": "return success",
+ "type": "returnSuccess",
+ "wires": [],
+ "x": 509.0953674316406,
+ "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",
+ "y": 3620.1901140213013,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "c4c1c921.76e2b8",
+ "name": "set vnf-level-oper-status to PendingCreate",
+ "type": "set",
+ "wires": [],
+ "x": 598.9088134765625,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status' value='PendingCreate' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-rpc-action' value='`$vnf-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-action' value='`$vnf-topology-operation-input.request-information.request-action`' />\n",
+ "y": 3522.527594566345,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "c85d4198.45c628",
+ "name": "for each network-role",
+ "outputs": 1,
+ "type": "for",
+ "wires": [
+ [
+ "796cc7.d490b338"
+ ]
+ ],
+ "x": 535.9048919677734,
+ "xml": "<for index='role-index' start='0' end='`$db.vf-network-role-mapping_length`'>",
+ "y": 2508.7141189575195,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "95a9e356.edb75",
+ "name": "set network-index = 0",
+ "type": "set",
+ "wires": [],
+ "x": 554.2380676269531,
+ "xml": "<set>\n<parameter name='network-index' value='0' />\n",
+ "y": 2126.8094577789307,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "799318e1.a3e3a",
+ "name": "increment network-index",
+ "type": "set",
+ "wires": [],
+ "x": 984.9525146484375,
+ "xml": "<set>\n<parameter name='network-index' value='`$network-index + 1`' />\n",
+ "y": 2812.6189250946045,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "26c17497.86b44c",
+ "name": "set vnf-network_length",
+ "type": "set",
+ "wires": [],
+ "x": 544.8095703125,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network_length'\n value='`$network-index`' />\n",
+ "y": 2889.571207046509,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "deeeb827.37f63",
+ "name": "copy input data",
+ "type": "set",
+ "wires": [],
+ "x": 514.4286422729492,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.sdnc-request-header.' value='$vnf-topology-operation-input.sdnc-request-header.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.request-information.' value='$vnf-topology-operation-input.request-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.' value='$vnf-topology-operation-input.service-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.' value='$vnf-topology-operation-input.vnf-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-request-input.' value='$vnf-topology-operation-input.vnf-request-input.' />\n\n",
+ "y": 3470.1904258728027,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "6ce3245c.227ed4",
+ "name": "for each vnf-network",
+ "outputs": 1,
+ "type": "for",
+ "wires": [
+ [
+ "21eaa2af.c3b26e"
+ ]
+ ],
+ "x": 535.52392578125,
+ "xml": "<for index='vnf-nw-index' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network_length`' >\n",
+ "y": 3232.380931854248,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "true",
+ "id": "21eaa2af.c3b26e",
+ "name": "block : atomic",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ [
+ "57d7e5fc.33f244"
+ ]
+ ],
+ "x": 739.1905670166016,
+ "xml": "<block atomic=\"true\">",
+ "y": 3232.380892753601,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "97e88fe.9dab2f",
+ "name": "set new vnf_length",
+ "type": "set",
+ "wires": [],
+ "x": 550.0952491760254,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf_length' value='`$vnf-index + 1`' />\n",
+ "y": 782.7619781494141,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "84324533.95146",
+ "name": "for each cloud-region relationship",
+ "outputs": 1,
+ "type": "for",
+ "wires": [
+ [
+ "f787444c.e13378"
+ ]
+ ],
+ "x": 599.4285736083984,
+ "xml": "<for index='idx' start='0' end='`$aai.cloud-region.relationship-list.relationship_length`' >\n",
+ "y": 1836.0951700210571,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "f787444c.e13378",
+ "name": "switch related-to",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "cd796e7b.7cf948"
+ ]
+ ],
+ "x": 847.1071166992188,
+ "xml": "<switch test='`$aai.cloud-region.relationship-list.relationship[$idx].related-to`'>\n",
+ "y": 1835.8450994491577,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "cd796e7b.7cf948",
+ "name": "complex",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "29a74b62.067044"
+ ]
+ ],
+ "x": 1016.5714378356934,
+ "xml": "<outcome value='complex'>\n",
+ "y": 1835.2379217147827,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "f964a25d.454b6",
+ "name": "set aic-clli",
+ "type": "set",
+ "wires": [],
+ "x": 1337.2857360839844,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.aic-clli'\n value='`$aai-uid-split[$aai-uid-split_length - 1]`' />\n",
+ "y": 1834.9045791625977,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "fe738685.6c7d7",
+ "name": "switch aic-clli",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "d8ba8844.b1a0b8"
+ ]
+ ],
+ "x": 535.3333511352539,
+ "xml": "<switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.aic-clli`'>\n",
+ "y": 1992.0474872589111,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "d8ba8844.b1a0b8",
+ "name": "NULL",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "25200dee.75e302"
+ ]
+ ],
+ "x": 683.4761848449707,
+ "xml": "<outcome value=''>",
+ "y": 1992.0474700927734,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "25200dee.75e302",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 830.6190452575684,
+ "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=\"`'Unable to find aic-clli in AAI for aic-cloud-region ' + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region`\" />\n",
+ "y": 1991.6189041137695,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "5f4ea6d7.ceb158",
+ "name": "set from DB",
+ "type": "set",
+ "wires": [],
+ "x": 958.9287452697754,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-invariant-uuid'\n value='`$db.vf-model.invariant-uuid`' />\n",
+ "y": 1308.0475587844849,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "43d65ebc.c60b2",
+ "name": "for each l3-network",
+ "outputs": 1,
+ "type": "for",
+ "wires": [
+ [
+ "6f76ed5d.4970e4"
+ ]
+ ],
+ "x": 1092.8811492919922,
+ "xml": "<for index='db-network-index' start='0' end='`$aai.l3-network.l3-network_length`' >\n",
+ "y": 2431.571388244629,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "6f76ed5d.4970e4",
+ "name": "switch orchestration-status",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "bbe5662.f16b918",
+ "cb1bcbb.e4a72b8",
+ "be3d158a.0afbb",
+ "a22f9423.3e4f08",
+ "1aa61126.14efcf"
+ ]
+ ],
+ "x": 1321.452350616455,
+ "xml": "<switch test='`$aai.l3-network.l3-network[$db-network-index].orchestration-status`'>\n",
+ "y": 2430.142815589905,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "bbe5662.f16b918",
+ "name": "Pending Delete",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "c5d64162.5301c8"
+ ]
+ ],
+ "x": 1558.1192626953125,
+ "xml": "<outcome value='Pending Delete'>\n",
+ "y": 2475.8095235824585,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "cb1bcbb.e4a72b8",
+ "name": "other",
+ "outputs": 1,
+ "type": "other",
+ "wires": [
+ [
+ "cada7ba0.1dd8"
+ ]
+ ],
+ "x": 1530.9764022827148,
+ "xml": "<outcome value='Other'>\n",
+ "y": 2526.809504508972,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "f2201c7e.b452e8",
+ "name": "switch related-to",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "18bbcf5a.1ec521"
+ ]
+ ],
+ "x": 1896.6907539367676,
+ "xml": "<switch test='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].related-to`'>\n",
+ "y": 2525.3808450698853,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "cada7ba0.1dd8",
+ "name": "for each relationship",
+ "outputs": 1,
+ "type": "for",
+ "wires": [
+ [
+ "f2201c7e.b452e8"
+ ]
+ ],
+ "x": 1700.9763145446777,
+ "xml": "<for silentFailure='true' index='db-rel-index' start='0' end='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship_length`' >\n",
+ "y": 2526.3808813095093,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "18bbcf5a.1ec521",
+ "name": "cloud-region",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "9edb388f.f5112"
+ ]
+ ],
+ "x": 2070.9763946533203,
+ "xml": "<outcome value='cloud-region'>\n",
+ "y": 2524.9522914886475,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "9edb388f.f5112",
+ "name": "for each relationship data",
+ "outputs": 1,
+ "type": "for",
+ "wires": [
+ [
+ "1a8ed1c0.72a746"
+ ]
+ ],
+ "x": 2268.119094848633,
+ "xml": "<for silentFailure='true' index='db-data-index' start='0' end='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].relationship-data_length`' >\n",
+ "y": 2525.380759239197,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "1a8ed1c0.72a746",
+ "name": "switch relationship-key",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "435633df.b879dc"
+ ]
+ ],
+ "x": 2499.547695159912,
+ "xml": "<switch test='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].relationship-data[$db-data-index].relationship-key`'>\n",
+ "y": 2524.9521341323853,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "435633df.b879dc",
+ "name": "cloud-region.cloud-region-id",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "48895616.05d3b"
+ ]
+ ],
+ "x": 2740.9762268066406,
+ "xml": "<outcome value='cloud-region.cloud-region-id'>\n",
+ "y": 2524.95223903656,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "48895616.05d3b",
+ "name": "switch relationship-value == cloud-region-id",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "12babad5.4b3935"
+ ]
+ ],
+ "x": 3045.2621459960938,
+ "xml": "<switch test='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].relationship-data[$db-data-index].relationship-value == $vnf-topology-operation-input.vnf-request-input.aic-cloud-region`'>\n",
+ "y": 2524.8092947006226,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "12babad5.4b3935",
+ "name": "true",
+ "outputs": 1,
+ "type": "outcomeTrue",
+ "wires": [
+ [
+ "ad009415.ee8e2"
+ ]
+ ],
+ "x": 3285.262176513672,
+ "xml": "<outcome value='true'>\n",
+ "y": 2524.9522399902344,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "false",
+ "comments": "",
+ "id": "d834554a.ccf5f",
+ "name": "block",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ [
+ "43d65ebc.c60b2",
+ "29a56ec0.3effd2"
+ ]
+ ],
+ "x": 931.0953330993652,
+ "xml": "<block>\n",
+ "y": 2499.4284858703613,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "29a56ec0.3effd2",
+ "name": "CATCH BREAK",
+ "type": "returnSuccess",
+ "wires": [],
+ "x": 1082.4287414550781,
+ "xml": "<return status='success'>\n\n",
+ "y": 2572.7617197036743,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "f75b0ddb.4ffe68",
+ "name": "BREAK",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 3586.095157623291,
+ "xml": "<return status='failure'>\n",
+ "y": 2542.761643409729,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "30a0e3fe.983584",
+ "name": "set l3-network-id = -1",
+ "type": "set",
+ "wires": [],
+ "x": 975.4287033081055,
+ "xml": "<set>\n<parameter name='l3-network-id' value='-1' />\n",
+ "y": 2302.7616996765137,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "true",
+ "id": "ad009415.ee8e2",
+ "name": "block : atomic",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ [
+ "7a5cc970.dcdc18",
+ "f75b0ddb.4ffe68"
+ ]
+ ],
+ "x": 3431.0951538085938,
+ "xml": "<block atomic=\"true\">",
+ "y": 2524.4283485412598,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "7a5cc970.dcdc18",
+ "name": "set l3-network-id = this l3-network",
+ "type": "set",
+ "wires": [],
+ "x": 3667.7618255615234,
+ "xml": "<set>\n<parameter name='l3-network-id' value='`$aai.l3-network.l3-network[$db-network-index].network-id`' />\n",
+ "y": 2499.4283475875854,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "bc183bd7.3e811",
+ "name": "switch l3-network-id",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "91318c2.57404f"
+ ]
+ ],
+ "x": 972.4286270141602,
+ "xml": "<switch test='`$l3-network-id`'>\n",
+ "y": 2626.428741455078,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "91318c2.57404f",
+ "name": "-1",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "504d1216.64d004"
+ ]
+ ],
+ "x": 1142.4285774230957,
+ "xml": "<outcome value='-1'>\n",
+ "y": 2626.428497314453,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "504d1216.64d004",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1290.7619400024414,
+ "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=\"`'Unable to find l3-network in AAI for network role ' + $db.vf-network-role-mapping[$role-index].network-role`\" />\n",
+ "y": 2626.4286346435547,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "2ab7bc1f.b085b4",
+ "name": "switch input model-invariant-uuid",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "e082345e.236ca",
+ "a95f8164.b4e8b8"
+ ]
+ ],
+ "x": 602.7858200073242,
+ "xml": "<switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`'>\n",
+ "y": 1330.8720026016235,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "e082345e.236ca",
+ "name": "NULL",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "5f4ea6d7.ceb158"
+ ]
+ ],
+ "x": 808.4524917602539,
+ "xml": "<outcome value=''>",
+ "y": 1308.0149660110474,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "a95f8164.b4e8b8",
+ "name": "other",
+ "outputs": 1,
+ "type": "other",
+ "wires": [
+ [
+ "e5dcf453.7ec14"
+ ]
+ ],
+ "x": 809.8810882568359,
+ "xml": "<outcome value='Other'>\n",
+ "y": 1352.3005571365356,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "e5dcf453.7ec14",
+ "name": "set from input",
+ "type": "set",
+ "wires": [],
+ "x": 964.1668243408203,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-invariant-uuid'\n value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`' />\n",
+ "y": 1351.7291293144226,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "ebeec6f9.2c628",
+ "name": "set from DB",
+ "type": "set",
+ "wires": [],
+ "x": 959.8810157775879,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-uuid'\n value='`$db.vf-model.uuid`' />\n",
+ "y": 1396.5862350463867,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "2dbfa8ac.567be8",
+ "name": "switch input model-uuid",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "bafa03f0.0be328",
+ "40a4f245.06edcc"
+ ]
+ ],
+ "x": 575.4048385620117,
+ "xml": "<switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`'>\n",
+ "y": 1419.4107398986816,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "bafa03f0.0be328",
+ "name": "NULL",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "ebeec6f9.2c628"
+ ]
+ ],
+ "x": 809.4048118591309,
+ "xml": "<outcome value=''>",
+ "y": 1396.553671836853,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "40a4f245.06edcc",
+ "name": "other",
+ "outputs": 1,
+ "type": "other",
+ "wires": [
+ [
+ "9ad4384f.c55ae"
+ ]
+ ],
+ "x": 810.8334083557129,
+ "xml": "<outcome value='Other'>\n",
+ "y": 1440.8392629623413,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "9ad4384f.c55ae",
+ "name": "set from input",
+ "type": "set",
+ "wires": [],
+ "x": 965.1191444396973,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-uuid'\n value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`' />\n",
+ "y": 1440.2678351402283,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "369af0fe.bb8d18",
+ "name": "set from DB",
+ "type": "set",
+ "wires": [],
+ "x": 957.0239486694336,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-version'\n value='`$db.vf-model.version`' />\n",
+ "y": 1485.4434423446655,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "c33b5d51.3d59e",
+ "name": "switch input model-version",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "b1d9b14.52a99d",
+ "7dbbd718.ba9528"
+ ]
+ ],
+ "x": 583.5477104187012,
+ "xml": "<switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-version`'>\n",
+ "y": 1508.2678871154785,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "b1d9b14.52a99d",
+ "name": "NULL",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "369af0fe.bb8d18"
+ ]
+ ],
+ "x": 806.5476951599121,
+ "xml": "<outcome value=''>",
+ "y": 1485.410849571228,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "7dbbd718.ba9528",
+ "name": "other",
+ "outputs": 1,
+ "type": "other",
+ "wires": [
+ [
+ "ec86a60a.b943f8"
+ ]
+ ],
+ "x": 807.9762916564941,
+ "xml": "<outcome value='Other'>\n",
+ "y": 1529.6964406967163,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "ec86a60a.b943f8",
+ "name": "set from input",
+ "type": "set",
+ "wires": [],
+ "x": 962.2620277404785,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-version'\n value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-version`' />\n",
+ "y": 1529.1250128746033,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "d84c1fb5.76aec8",
+ "name": "set from DB",
+ "type": "set",
+ "wires": [],
+ "x": 957.0239486694336,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-name'\n value='`$db.vf-model.name`' />\n",
+ "y": 1572.5862646102905,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "f8b8a722.fd6508",
+ "name": "switch input model-name",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "37bd193e.8fcaee",
+ "904a8546.5a6878"
+ ]
+ ],
+ "x": 578.5477104187012,
+ "xml": "<switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-name`'>\n",
+ "y": 1595.4107093811035,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "37bd193e.8fcaee",
+ "name": "NULL",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "d84c1fb5.76aec8"
+ ]
+ ],
+ "x": 806.5476951599121,
+ "xml": "<outcome value=''>",
+ "y": 1572.553671836853,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "904a8546.5a6878",
+ "name": "other",
+ "outputs": 1,
+ "type": "other",
+ "wires": [
+ [
+ "fb77ed1e.4c6d38"
+ ]
+ ],
+ "x": 807.9762916564941,
+ "xml": "<outcome value='Other'>\n",
+ "y": 1616.8392629623413,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "fb77ed1e.4c6d38",
+ "name": "set from input",
+ "type": "set",
+ "wires": [],
+ "x": 962.2620277404785,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-name'\n value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-name`' />\n",
+ "y": 1616.2678351402283,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "false",
+ "comments": "",
+ "id": "c5d64162.5301c8",
+ "name": "block",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ []
+ ],
+ "x": 1711.3333549499512,
+ "xml": "<block>\n",
+ "y": 2476.586400985718,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "1aa61126.14efcf",
+ "name": "PendingDelete",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "1a19e1e7.6d515e"
+ ]
+ ],
+ "x": 1555.9999961853027,
+ "xml": "<outcome value='PendingDelete'>\n",
+ "y": 2431.5863151550293,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "false",
+ "comments": "",
+ "id": "1a19e1e7.6d515e",
+ "name": "block",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ []
+ ],
+ "x": 1711.2140884399414,
+ "xml": "<block>\n",
+ "y": 2432.3631925582886,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "a22f9423.3e4f08",
+ "name": "Pending Create",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "7b5140c6.1be978"
+ ]
+ ],
+ "x": 1557.9999961853027,
+ "xml": "<outcome value='Pending Create'>\n",
+ "y": 2388.2528190612793,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "false",
+ "comments": "",
+ "id": "7b5140c6.1be978",
+ "name": "block",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ []
+ ],
+ "x": 1711.2140884399414,
+ "xml": "<block>\n",
+ "y": 2389.0296964645386,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "be3d158a.0afbb",
+ "name": "PendingCreate",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "56c1bb65.93ed54"
+ ]
+ ],
+ "x": 1557.9999961853027,
+ "xml": "<outcome value='PendingCreate'>\n",
+ "y": 2344.9195671081543,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "false",
+ "comments": "",
+ "id": "56c1bb65.93ed54",
+ "name": "block",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ []
+ ],
+ "x": 1711.2140884399414,
+ "xml": "<block>\n",
+ "y": 2345.6964445114136,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "dc8fa939.b773f",
+ "name": "for each A&AI subnet",
+ "outputs": 1,
+ "type": "for",
+ "wires": [
+ [
+ "ca52b163.d4827"
+ ]
+ ],
+ "x": 974.6667633056641,
+ "xml": "<for index='subnet-index' start='0' end='`$aai.l3-network.l3-network[0].subnets.subnet_length`' >\n",
+ "y": 2719.919626235962,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "ca52b163.d4827",
+ "name": "set subnet data",
+ "type": "set",
+ "wires": [],
+ "x": 1172.9999389648438,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].subnets-data.subnet-data[$subnet-index].ip-version'\n value='`$aai.l3-network.l3-network[$db-network-index].subnets.subnet[$subnet-index].ip-version`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].subnets-data.subnet-data[$subnet-index].subnet-id'\n value='`$aai.l3-network.l3-network[$db-network-index].subnets.subnet[$subnet-index].subnet-id`' />\n",
+ "y": 2718.2532052993774,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "5090527e.f6c044",
+ "name": "set subnet_length",
+ "type": "set",
+ "wires": [],
+ "x": 963.3333282470703,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].subnets-data.subnet-data_length'\n value='`$aai.l3-network.l3-network[0].subnets.subnet_length`' />\n",
+ "y": 2764.919708251953,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "f03f1068.5af0c",
+ "name": "set availability-zones.max-count and length",
+ "type": "set",
+ "wires": [],
+ "x": 606.0000610351562,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.availability-zones.max-count'\n value='`$db.vf-model.avail-zone-max-count`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.availability-zones.availability-zone_length'\n value='`$aai.az.availability-zone_length`' />\n",
+ "y": 3177.6342582702637,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "5e785184.8c4128",
+ "name": "set vnf-name",
+ "type": "set",
+ "wires": [],
+ "x": 539.666633605957,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-name'\n value='`$tmp.vnf-name`' />\n",
+ "y": 1264.9197664260864,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "3a4f6bb1.560164",
+ "name": "update generic-vnf",
+ "outputs": 1,
+ "type": "save",
+ "wires": [
+ [
+ "1fc6e960.150607",
+ "a8793a07.5d6f48"
+ ]
+ ],
+ "x": 526.3333282470703,
+ "xml": "<update plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\"\n resource=\"generic-vnf\"\n key=\"generic-vnf.vnf-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-id\"\n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"vnf-name\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-name`\" />\n<parameter name=\"prov-status\" value=\"PREPROV\" />\n<parameter name=\"operational-status\" value=\"out-of-service-path\" />\n<parameter name=\"equipment-role\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-role`\" />\n<parameter name=\"model-invariant-id\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-invariant-uuid`\" />\n<parameter name=\"model-version-id\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-uuid`\" />\n<parameter name=\"model-customization-id\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-customization-uuid`\" />\n<parameter name=\"selflink\" value=\"`$vnf-object-path`\" />\n",
+ "y": 3387.300033569336,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "9bd6668b.dfc92",
+ "name": "set vnf-object-path and service-object-path",
+ "type": "set",
+ "wires": [],
+ "x": 606.3333740234375,
+ "xml": "<set>\n<parameter name='vnf-object-path'\n value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $vnf-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 + $vnf-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'`\"/>",
+ "y": 3310.300537109375,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "391ed085.26b75",
+ "name": "set vnf-id",
+ "type": "set",
+ "wires": [],
+ "x": 527.9999771118164,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-id'\n value='`$vnf-topology-operation-input.vnf-information.vnf-id`' />\n",
+ "y": 1216.5863094329834,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "e3fcddaa.ac5538",
+ "name": "printContext",
+ "outputs": 1,
+ "type": "execute",
+ "wires": [
+ []
+ ],
+ "x": 504.00009536743164,
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\n<parameter name='filename' value='/var/tmp/bgb-viprend.log' />\n",
+ "y": 3568.967363357544,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "6f3c4400.e28f24",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1449.666805267334,
+ "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=\"`'No generic-vnf found in AAI for vnf ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-id`\" />\n",
+ "y": 3253.9671211242676,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "7186d613.fe144",
+ "name": "failure",
+ "outputs": 1,
+ "type": "failure",
+ "wires": [
+ [
+ "89a1c75d.721db8"
+ ]
+ ],
+ "x": 1262.3573722839355,
+ "xml": "<outcome value='failure'>\n",
+ "y": 3210.919590950012,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "35d8114.d0acf6e",
+ "name": "not-found",
+ "outputs": 1,
+ "type": "not-found",
+ "wires": [
+ [
+ "6f3c4400.e28f24"
+ ]
+ ],
+ "x": 1270.9288024902344,
+ "xml": "<outcome value='not-found'>\n",
+ "y": 3255.205304145813,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "89a1c75d.721db8",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1452.3573989868164,
+ "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=\"Error updating generic-vnf in AAI\" />\n",
+ "y": 3210.729326248169,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "17590340.d661cd",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 929.6667442321777,
+ "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=\"`'No generic-vnf found in AAI for vnf ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-id`\" />\n",
+ "y": 3408.967043876648,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "1fc6e960.150607",
+ "name": "failure",
+ "outputs": 1,
+ "type": "failure",
+ "wires": [
+ [
+ "d9024ee2.bf5d3"
+ ]
+ ],
+ "x": 742.3573112487793,
+ "xml": "<outcome value='failure'>\n",
+ "y": 3365.9195137023926,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "a8793a07.5d6f48",
+ "name": "not-found",
+ "outputs": 1,
+ "type": "not-found",
+ "wires": [
+ [
+ "17590340.d661cd"
+ ]
+ ],
+ "x": 750.9287414550781,
+ "xml": "<outcome value='not-found'>\n",
+ "y": 3410.2052268981934,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "d9024ee2.bf5d3",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 932.3573379516602,
+ "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=\"Error updating selflink in generic-vnf in AAI\" />\n",
+ "y": 3365.7292490005493,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "2e7ae530.0e2cea",
+ "name": "set model-customization-uuid",
+ "type": "set",
+ "wires": [],
+ "x": 591.3332977294922,
+ "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-customization-uuid'\n value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`' />\n",
+ "y": 1668.2529134750366,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "c4513e6c.417d88",
+ "name": "split related-link",
+ "outputs": 1,
+ "type": "execute",
+ "wires": [
+ []
+ ],
+ "x": 1356.6665954589844,
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>\n <parameter name='ctx_memory_result_key' value='aai-uid-split' />\n <parameter name='original_string' value='`$aai.cloud-region.relationship-list.relationship[$idx].related-link`' />\n <parameter name='regex' value='/' />\n",
+ "y": 1789.6664972305298,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "true",
+ "id": "29a74b62.067044",
+ "name": "block : atomic",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ [
+ "c4513e6c.417d88",
+ "f964a25d.454b6",
+ "bf8afd9.c73b1"
+ ]
+ ],
+ "x": 1176.3332977294922,
+ "xml": "<block atomic=\"true\">",
+ "y": 1836.333285331726,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "bf8afd9.c73b1",
+ "name": "break",
+ "type": "break",
+ "wires": [],
+ "x": 1326.3332595825195,
+ "xml": "<break>\n",
+ "y": 1879.666582107544,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "atomic": "true",
+ "id": "509993f3.7086bc",
+ "name": "block : atomic",
+ "outputs": 1,
+ "type": "block",
+ "wires": [
+ [
+ "696846f6.70aa8",
+ "765526c8.d4caf"
+ ]
+ ],
+ "x": 838,
+ "xml": "<block atomic=\"true\">",
+ "y": 3088.7143869400024,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "765526c8.d4caf",
+ "name": "save generic-vnf availability-zone relationship",
+ "outputs": 1,
+ "type": "save",
+ "wires": [
+ [
+ "43f03688.4ffc08",
+ "49249c79.4e59a4"
+ ]
+ ],
+ "x": 1129.9048156738281,
+ "xml": "<save plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\"\n 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=\"availability-zone\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"cloud-region.cloud-owner\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"CloudOwner\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[1].relationship-key\" value=\"cloud-region.cloud-region-id\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[1].relationship-value\" value=\"`$vnf-topology-operation-input.vnf-request-input.aic-cloud-region`\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[2].relationship-key\" value=\"availability-zone.availability-zone-name\" />\n <parameter name=\"relationship-list.relationship[0].relationship-data[2].relationship-value\" value=\"`$aai.az.availability-zone[$idx].availability-zone-name`\" />\n",
+ "y": 3112.0478343963623,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "1fb1c5a4.5564ca",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1583.47607421875,
+ "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=\"`'No generic-vnf found in AAI for vnf ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-id`\" />\n",
+ "y": 3135.9671936035156,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "43f03688.4ffc08",
+ "name": "failure",
+ "outputs": 1,
+ "type": "failure",
+ "wires": [
+ [
+ "31682c44.dabecc"
+ ]
+ ],
+ "x": 1396.1666412353516,
+ "xml": "<outcome value='failure'>\n",
+ "y": 3092.9196634292603,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "49249c79.4e59a4",
+ "name": "not-found",
+ "outputs": 1,
+ "type": "not-found",
+ "wires": [
+ [
+ "1fb1c5a4.5564ca"
+ ]
+ ],
+ "x": 1404.7380714416504,
+ "xml": "<outcome value='not-found'>\n",
+ "y": 3137.205376625061,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "31682c44.dabecc",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1586.1666679382324,
+ "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=\"Error updating generic-vnf in AAI\" />\n",
+ "y": 3092.729398727417,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "2ca15486.5cc8cc",
+ "name": "set mapping rows to 0",
+ "type": "set",
+ "wires": [],
+ "x": 1150.1427688598633,
+ "xml": "<set>\n<parameter name='db.vf-network-role-mapping_length' value='0' />\n",
+ "y": 2082.52388381958,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "611f691d.f4b31",
+ "name": "switch AAI availability-zone_length",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "701b12be.386a5c"
+ ]
+ ],
+ "x": 578.7142868041992,
+ "xml": "<switch test='`$aai.az.availability-zone_length`'>\n",
+ "y": 2992.523973464966,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "701b12be.386a5c",
+ "name": "NULL",
+ "outputs": 1,
+ "type": "outcome",
+ "wires": [
+ [
+ "1249a549.cc39bb"
+ ]
+ ],
+ "x": 797.2857055664062,
+ "xml": "<outcome value=''>",
+ "y": 2992.0953826904297,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "a04c4aba.4671b8",
+ "name": "set availability-zone_length to 0",
+ "type": "set",
+ "wires": [],
+ "x": 1398.7143478393555,
+ "xml": "<set>\n<parameter name='aai.az.availability-zone_length' value='0' />\n",
+ "y": 3010.6666202545166,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "1249a549.cc39bb",
+ "name": "switch AZ max count > 0",
+ "outputs": 1,
+ "type": "switchNode",
+ "wires": [
+ [
+ "545772cc.6dbc04",
+ "f7e43f63.6a2e5"
+ ]
+ ],
+ "x": 985.857177734375,
+ "xml": "<switch test='`$db.vf-model.avail-zone-max-count &gt; 0`'>\n",
+ "y": 2992.5236945152283,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "545772cc.6dbc04",
+ "name": "true",
+ "outputs": 1,
+ "type": "outcomeTrue",
+ "wires": [
+ [
+ "be2e43e.cc375c"
+ ]
+ ],
+ "x": 1188.7142848968506,
+ "xml": "<outcome value='true'>\n",
+ "y": 2966.8094444274902,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "f7e43f63.6a2e5",
+ "name": "false",
+ "outputs": 1,
+ "type": "outcomeFalse",
+ "wires": [
+ [
+ "a04c4aba.4671b8"
+ ]
+ ],
+ "x": 1190.1429061889648,
+ "xml": "<outcome value='false'>\n",
+ "y": 3011.0951919555664,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "be2e43e.cc375c",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 1340.142822265625,
+ "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=\"`'No availability zones found in AAI for cloud region '\n + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region`\" />\n",
+ "y": 2966.5238494873047,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "c510e207.134d3",
+ "name": "get-resource availability zones",
+ "outputs": 1,
+ "type": "get-resource",
+ "wires": [
+ [
+ "5917e224.06e004"
+ ]
+ ],
+ "x": 588.7143096923828,
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"availability-zones\" \n\t\tkey=\"cloud-region.cloud-owner = 'CloudOwner' AND \n\t\t cloud-region.cloud-region-id = $vnf-topology-operation-input.vnf-request-input.aic-cloud-region AND\n\t\t depth='0'\"\n pfx='aai.az' local-only='false' >\n\n",
+ "y": 1919.4286441802979,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "5917e224.06e004",
+ "name": "failure",
+ "outputs": 1,
+ "type": "failure",
+ "wires": [
+ [
+ "76d22d4c.7d6684"
+ ]
+ ],
+ "x": 813.9605255126953,
+ "xml": "<outcome value='failure'>\n",
+ "y": 1918.829496383667,
+ "z": "1f9db9a1.737df6"
+ },
+ {
+ "comments": "",
+ "id": "76d22d4c.7d6684",
+ "name": "return failure",
+ "type": "returnFailure",
+ "wires": [],
+ "x": 987.7104644775391,
+ "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=\"Error retrieving availability zones from AAI\" />\n",
+ "y": 1917.5796184539795,
+ "z": "1f9db9a1.737df6"
+ }
+]
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_vnf-topology-operation-assign.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_vnf-topology-operation-assign.xml
index 8608ef20..27419ac3 100755
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_vnf-topology-operation-assign.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_vnf-topology-operation-assign.xml
@@ -1,545 +1,386 @@
-<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}'>
- <method rpc='vnf-topology-operation-assign' mode='sync'>
- <block atomic="true">
- <switch test='`$vnf-topology-operation-input.request-information.request-action`'>
- <outcome value='CreateVnfInstance'>
- <block></block>
- </outcome>
- <outcome value='Other'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="If svc-action is 'assign' then request-action must be 'CreateVnfInstance'" />
- </return>
- </outcome>
- </switch>
- <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'
- key='SELECT * from VF_MODEL WHERE customization_uuid = $vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid'
- pfx='db.vf-model'>
- <outcome value='failure'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="Error reading VF_MODEL table" />
- </return>
- </outcome>
- <outcome value='not-found'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`'No model found for VNF customization UUID ' + $vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`" />
- </return>
- </outcome>
- </get-resource>
- <switch test='`$service-data.vnfs.vnf_length`'>
- <outcome value=''>
- <set>
- <parameter name='vnf-index' value='0' />
- </set>
- </outcome>
- <outcome value='Other'>
- <block>
- <set>
- <parameter name='vnf-index' value='`$service-data.vnfs.vnf_length`' />
- </set>
- <for index='idx' start='0' end='`$service-data.vnfs.vnf_length`' >
- <switch test='`$vnf-topology-operation-input.vnf-information.vnf-id == $service-data.vnfs.vnf[$idx].vnf-id`'>
- <outcome value='true'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`'VNF id ' + $service-data.vnfs.vnf[$idx].vnf-id + ' already exists, and has order status ' + $service-data.vnfs.vnf[$idx].vnf-data.vnf-level-oper-status.order-status`" />
- </return>
- </outcome>
- </switch>
- </for>
- </block>
- </outcome>
- </switch>
- <set>
- <parameter name='service-data.vnfs.vnf_length' value='`$vnf-index + 1`' />
- </set>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-id'
- value='`$vnf-topology-operation-input.vnf-information.vnf-id`' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-type'
- value='`$vnf-topology-operation-input.vnf-information.vnf-type`' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-type'
- value='`$db.vf-model.nf-type`' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-role'
- value='`$db.vf-model.nf-role`' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-function'
- value='`$db.vf-model.nf-function`' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-code'
- value='`$db.vf-model.nf-code`' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.tenant'
- value='`$vnf-topology-operation-input.vnf-request-input.tenant`' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.aic-cloud-region'
- value='`$vnf-topology-operation-input.vnf-request-input.aic-cloud-region`' />
- </set>
- <switch test='`$vnf-topology-operation-input.vnf-request-input.vnf-name`'>
- <outcome value=''>
- <block atomic="true">
- <switch test='`$db.vf-model.ecomp-generated-naming`'>
- <outcome value='Y'>
- <block></block>
- </outcome>
- <outcome value='N'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="No vnf-name was received but ecomp-generated-naming is not Y" />
- </return>
- </outcome>
- <outcome value='Other'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="No vnf-name was received but ecomp-generated-naming is not Y" />
- </return>
- </outcome>
- </switch>
- <set>
- <parameter name='generate-unique-name-input.index-table-name' value='VNF_NAME_INDEX' />
- <parameter name='generate-unique-name-input.index-table-prefix-column' value='vnf_name_prefix' />
- <parameter name='generate-unique-name-input.name-table-type' value='VNF_INSTANCE' />
- <parameter name='generate-unique-name-input.prefix' value="`'z' + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region + $db.vf-model.nf-code`" />
- <parameter name='generate-unique-name-input.index-length' value='2' />
- </set>
- <call module='GENERIC-RESOURCE-API' rpc='generate-unique-name' mode='sync' >
- <outcome value='failure'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`$generate-unique-name-output.error-message`" />
- </return>
- </outcome>
- <outcome value='success'>
- <set>
- <parameter name='tmp.vnf-name' value='`$generate-unique-name-output.generated-name`' />
- </set>
- </outcome>
- </call>
- </block>
- </outcome>
- <outcome value='Other'>
- <block atomic="true">
- <set>
- <parameter name='generate-unique-name-input.name-table-type' value='VNF_INSTANCE' />
- <parameter name='generate-unique-name-input.supplied-name' value='`$vnf-topology-operation-input.vnf-request-input.vnf-name`' />
- </set>
- <call module='GENERIC-RESOURCE-API' rpc='generate-unique-name' mode='sync' >
- <outcome value='failure'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`$generate-unique-name-output.error-message`" />
- </return>
- </outcome>
- <outcome value='success'>
- <set>
- <parameter name='tmp.vnf-name' value="`$vnf-topology-operation-input.vnf-request-input.vnf-name`" />
- </set>
- </outcome>
- </call>
- </block>
- </outcome>
- </switch>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-id'
- value='`$vnf-topology-operation-input.vnf-information.vnf-id`' />
- </set>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-name'
- value='`$tmp.vnf-name`' />
- </set>
- <switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`'>
- <outcome value=''>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-invariant-uuid'
- value='`$db.vf-model.invariant-uuid`' />
- </set>
- </outcome>
- <outcome value='Other'>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-invariant-uuid'
- value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`' />
- </set>
- </outcome>
- </switch>
- <switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`'>
- <outcome value=''>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-uuid'
- value='`$db.vf-model.uuid`' />
- </set>
- </outcome>
- <outcome value='Other'>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-uuid'
- value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`' />
- </set>
- </outcome>
- </switch>
- <switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-version`'>
- <outcome value=''>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-version'
- value='`$db.vf-model.version`' />
- </set>
- </outcome>
- <outcome value='Other'>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-version'
- value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-version`' />
- </set>
- </outcome>
- </switch>
- <switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-name`'>
- <outcome value=''>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-name'
- value='`$db.vf-model.name`' />
- </set>
- </outcome>
- <outcome value='Other'>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-name'
- value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-name`' />
- </set>
- </outcome>
- </switch>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-customization-uuid'
- value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`' />
- </set>
- <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="cloud-region"
- key="cloud-region.cloud-owner = 'CloudOwner' AND
- cloud-region.cloud-region-id = $vnf-topology-operation-input.vnf-request-input.aic-cloud-region AND
- depth='0'"
- pfx='aai.cloud-region' local-only='false' >
- <outcome value='not-found'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="Cloud region not found in AAI" />
- </return>
- </outcome>
- <outcome value='failure'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="Error retrieving cloud region from AAI" />
- </return>
- </outcome>
- </get-resource>
- <for index='idx' start='0' end='`$aai.cloud-region.relationship-list.relationship_length`' >
- <switch test='`$aai.cloud-region.relationship-list.relationship[$idx].related-to`'>
- <outcome value='complex'>
- <block atomic="true">
- <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
- <parameter name='ctx_memory_result_key' value='aai-uid-split' />
- <parameter name='original_string' value='`$aai.cloud-region.relationship-list.relationship[$idx].related-link`' />
- <parameter name='regex' value='/' />
- </execute>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.aic-clli'
- value='`$aai-uid-split[$aai-uid-split_length - 1]`' />
- </set>
- <break></break>
- </block>
- </outcome>
- </switch>
- </for>
- <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="availability-zones"
- key="cloud-region.cloud-owner = 'CloudOwner' AND
- cloud-region.cloud-region-id = $vnf-topology-operation-input.vnf-request-input.aic-cloud-region AND
- depth='0'"
- pfx='aai.az' local-only='false' >
- <outcome value='failure'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="Error retrieving availability zones from AAI" />
- </return>
- </outcome>
- </get-resource>
- <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.aic-clli`'>
- <outcome value=''>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`'Unable to find aic-clli in AAI for aic-cloud-region ' + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region`" />
- </return>
- </outcome>
- </switch>
- <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'
- key='SELECT * from VF_TO_NETWORK_ROLE_MAPPING WHERE vf_customization_uuid = $vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid'
- pfx='db.vf-network-role-mapping[]'>
- <outcome value='failure'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="Error reading VF_TO_NETWORK_ROLE_MAPPING table" />
- </return>
- </outcome>
- <outcome value='not-found'>
- <set>
- <parameter name='db.vf-network-role-mapping_length' value='0' />
- </set>
- </outcome>
- </get-resource>
- <set>
- <parameter name='network-index' value='0' />
- </set>
- <for index='role-index' start='0' end='`$db.vf-network-role-mapping_length`'>
- <block atomic="true">
- <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="l3-networks"
- key="l3-network.network-role = $db.vf-network-role-mapping[$role-index].network-role"
- pfx='aai.l3-network' local-only='false'
- >
- <outcome value='not-found'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`'No active l3-network found in AAI with cloud_region_id ' + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region + ' and network_role ' + $db.vf-network-role-mapping[$network-index].network-role`" />
- </return>
- </outcome>
- <outcome value='failure'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="Error retrieving l3-network from AAI" />
- </return>
- </outcome>
- </get-resource>
- <set>
- <parameter name='l3-network-id' value='-1' />
- </set>
- <block>
- <for index='db-network-index' start='0' end='`$aai.l3-network.l3-network_length`' >
- <switch test='`$aai.l3-network.l3-network[$db-network-index].orchestration-status`'>
- <outcome value='PendingCreate'>
- <block></block>
- </outcome>
- <outcome value='Pending Create'>
- <block></block>
- </outcome>
- <outcome value='PendingDelete'>
- <block></block>
- </outcome>
- <outcome value='Pending Delete'>
- <block></block>
- </outcome>
- <outcome value='Other'>
- <for silentFailure='true' index='db-rel-index' start='0' end='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship_length`' >
- <switch test='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].related-to`'>
- <outcome value='cloud-region'>
- <for silentFailure='true' index='db-data-index' start='0' end='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].relationship-data_length`' >
- <switch test='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].relationship-data[$db-data-index].relationship-key`'>
- <outcome value='cloud-region.cloud-region-id'>
- <switch test='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].relationship-data[$db-data-index].relationship-value == $vnf-topology-operation-input.vnf-request-input.aic-cloud-region`'>
- <outcome value='true'>
- <block atomic="true">
- <set>
- <parameter name='l3-network-id' value='`$aai.l3-network.l3-network[$db-network-index].network-id`' />
- </set>
- <return status='failure'></return>
- </block>
- </outcome>
- </switch>
- </outcome>
- </switch>
- </for>
- </outcome>
- </switch>
- </for>
- </outcome>
- </switch>
- </for>
- <return status='success'></return>
- </block>
- <switch test='`$l3-network-id`'>
- <outcome value='-1'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`'Unable to find l3-network in AAI for network role ' + $db.vf-network-role-mapping[$role-index].network-role`" />
- </return>
- </outcome>
- </switch>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].network-role'
- value='`$db.vf-network-role-mapping[$role-index].network-role`' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].network-name'
- value='`$aai.l3-network.l3-network[$db-network-index].network-name`' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].neutron-id'
- value='`$aai.l3-network.l3-network[$db-network-index].neutron-network-id`' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].network-id'
- value='`$aai.l3-network.l3-network[$db-network-index].network-id`' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].contrail-network-fqdn'
- value='`$aai.l3-network.l3-network[$db-network-index].contrail-network-fqdn`' />
- </set>
- <for index='subnet-index' start='0' end='`$aai.l3-network.l3-network[0].subnets.subnet_length`' >
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].subnets-data.subnet-data[$subnet-index].ip-version'
- value='`$aai.l3-network.l3-network[$db-network-index].subnets.subnet[$subnet-index].ip-version`' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].subnets-data.subnet-data[$subnet-index].subnet-id'
- value='`$aai.l3-network.l3-network[$db-network-index].subnets.subnet[$subnet-index].subnet-id`' />
- </set>
- </for>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].subnets-data.subnet-data_length'
- value='`$aai.l3-network.l3-network[0].subnets.subnet_length`' />
- </set>
- <set>
- <parameter name='network-index' value='`$network-index + 1`' />
- </set>
- </block>
- </for>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network_length'
- value='`$network-index`' />
- </set>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.'
- value='vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.' />
- </set>
- <switch test='`$aai.az.availability-zone_length`'>
- <outcome value=''>
- <switch test='`$db.vf-model.avail-zone-max-count &gt; 0`'>
- <outcome value='true'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`'No availability zones found in AAI for cloud region ' + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region`" />
- </return>
- </outcome>
- <outcome value='false'>
- <set>
- <parameter name='aai.az.availability-zone_length' value='0' />
- </set>
- </outcome>
- </switch>
- </outcome>
- </switch>
- <for index='idx' start='0' end='`$aai.az.availability-zone_length`' >
- <block atomic="true">
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.availability-zones.availability-zone[$idx]'
- value='`$aai.az.availability-zone[$idx].availability-zone-name`' />
- </set>
- <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="generic-vnf:relationship-list"
- key="generic-vnf.vnf-id = $service-data.vnfs.vnf[$vnf-index].vnf-id"
- force="true" pfx="tmp.AnAI-data">
- <parameter name="relationship-list.relationship[0].related-to" value="availability-zone" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="cloud-region.cloud-owner" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="CloudOwner" />
- <parameter name="relationship-list.relationship[0].relationship-data[1].relationship-key" value="cloud-region.cloud-region-id" />
- <parameter name="relationship-list.relationship[0].relationship-data[1].relationship-value" value="`$vnf-topology-operation-input.vnf-request-input.aic-cloud-region`" />
- <parameter name="relationship-list.relationship[0].relationship-data[2].relationship-key" value="availability-zone.availability-zone-name" />
- <parameter name="relationship-list.relationship[0].relationship-data[2].relationship-value" value="`$aai.az.availability-zone[$idx].availability-zone-name`" />
- <outcome value='failure'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="Error updating generic-vnf in AAI" />
- </return>
- </outcome>
- <outcome value='not-found'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`'No generic-vnf found in AAI for vnf ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-id`" />
- </return>
- </outcome>
- </save>
- </block>
- </for>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.availability-zones.max-count'
- value='`$db.vf-model.avail-zone-max-count`' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.availability-zones.availability-zone_length'
- value='`$aai.az.availability-zone_length`' />
- </set>
- <for index='vnf-nw-index' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network_length`' >
- <block atomic="true">
- <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="generic-vnf:relationship-list"
- key="generic-vnf.vnf-id = $service-data.vnfs.vnf[$vnf-index].vnf-id"
- force="true" pfx="tmp.AnAI-data">
- <parameter name="relationship-list.relationship[0].related-to" value="l3-network" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="l3-network.network-id" />
- <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$vnf-nw-index].network-id`" />
- <outcome value='failure'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="Error updating generic-vnf in AAI" />
- </return>
- </outcome>
- <outcome value='not-found'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`'No generic-vnf found in AAI for vnf ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-id`" />
- </return>
- </outcome>
- </save>
- </block>
- </for>
- <set>
- <parameter name='vnf-object-path'
- value="`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vnf-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $service-data.vnfs.vnf[$vnf-index].vnf-id + '/vnf-data/vnf-topology'`"/>
- </set>
- <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
- resource="generic-vnf"
- key="generic-vnf.vnf-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-id"
- force="true" pfx="tmp.AnAI-data">
- <parameter name="vnf-name" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-name`" />
- <parameter name="prov-status" value="PREPROV" />
- <parameter name="operational-status" value="out-of-service-path" />
- <parameter name="equipment-role" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-role`" />
- <parameter name="model-invariant-id" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-invariant-uuid`" />
- <parameter name="model-version-id" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-uuid`" />
- <parameter name="model-customization-id" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-customization-uuid`" />
- <parameter name="selflink" value="`$vnf-object-path`" />
- <outcome value='failure'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="Error updating selflink in generic-vnf in AAI" />
- </return>
- </outcome>
- <outcome value='not-found'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`'No generic-vnf found in AAI for vnf ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-id`" />
- </return>
- </outcome>
- </update>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.sdnc-request-header.' value='$vnf-topology-operation-input.sdnc-request-header.' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.request-information.' value='$vnf-topology-operation-input.request-information.' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.' value='$vnf-topology-operation-input.service-information.' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.' value='$vnf-topology-operation-input.vnf-information.' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-request-input.' value='$vnf-topology-operation-input.vnf-request-input.' />
- </set>
- <set>
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status' value='PendingCreate' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-rpc-action' value='`$vnf-topology-operation-input.sdnc-request-header.svc-action`' />
- <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-action' value='`$vnf-topology-operation-input.request-information.request-action`' />
- </set>
- <return status='success'>
- <parameter name="ack-final-indicator" value="Y" />
- <parameter name="error-code" value="200" />
- <parameter name="error-message" value="`$error-message`" />
- </return>
- </block>
- </method>
-</service-logic> \ No newline at end of file
+<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}'><method rpc='vnf-topology-operation-assign' mode='sync'>
+<block atomic="true"><switch test='`$vnf-topology-operation-input.request-information.request-action`'>
+<outcome value='CreateVnfInstance'>
+<block>
+</block></outcome><outcome value='Other'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="If svc-action is 'assign' then request-action must be 'CreateVnfInstance'" />
+</return></outcome></switch><get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'
+ key='SELECT * from VF_MODEL WHERE customization_uuid = $vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid'
+ pfx='db.vf-model'>
+
+<outcome value='failure'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error reading VF_MODEL table" />
+</return></outcome><outcome value='not-found'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'No model found for VNF customization UUID ' + $vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`" />
+</return></outcome></get-resource><switch test='`$service-data.vnfs.vnf_length`'>
+<outcome value=''>
+<set>
+<parameter name='vnf-index' value='0' />
+</set></outcome><outcome value='Other'>
+<block>
+<set>
+<parameter name='vnf-index' value='`$service-data.vnfs.vnf_length`' />
+</set><for index='idx' start='0' end='`$service-data.vnfs.vnf_length`' >
+<switch test='`$vnf-topology-operation-input.vnf-information.vnf-id == $service-data.vnfs.vnf[$idx].vnf-id`'>
+<outcome value='true'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'VNF id ' + $service-data.vnfs.vnf[$idx].vnf-id
+ + ' already exists, and has order status ' + $service-data.vnfs.vnf[$idx].vnf-data.vnf-level-oper-status.order-status`" />
+</return></outcome></switch></for></block></outcome></switch><set>
+<parameter name='service-data.vnfs.vnf_length' value='`$vnf-index + 1`' />
+</set><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-id'
+ value='`$vnf-topology-operation-input.vnf-information.vnf-id`' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-type'
+ value='`$vnf-topology-operation-input.vnf-information.vnf-type`' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-type'
+ value='`$db.vf-model.nf-type`' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-role'
+ value='`$db.vf-model.nf-role`' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-function'
+ value='`$db.vf-model.nf-function`' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-code'
+ value='`$db.vf-model.nf-code`' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.tenant'
+ value='`$vnf-topology-operation-input.vnf-request-input.tenant`' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.aic-cloud-region'
+ value='`$vnf-topology-operation-input.vnf-request-input.aic-cloud-region`' />
+
+</set><switch test='`$vnf-topology-operation-input.vnf-request-input.vnf-name`'>
+<outcome value=''><block atomic="true"><switch test='`$db.vf-model.ecomp-generated-naming`'>
+<outcome value='Y'><block>
+</block></outcome><outcome value='N'><return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="No vnf-name was received but ecomp-generated-naming is not Y" />
+</return></outcome><outcome value='Other'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="No vnf-name was received but ecomp-generated-naming is not Y" />
+</return></outcome></switch><set>
+<parameter name='generate-unique-name-input.index-table-name' value='VNF_NAME_INDEX' />
+<parameter name='generate-unique-name-input.index-table-prefix-column' value='vnf_name_prefix' />
+<parameter name='generate-unique-name-input.name-table-type' value='VNF_INSTANCE' />
+<parameter name='generate-unique-name-input.prefix' value="`'z' + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region + $db.vf-model.nf-code`" />
+<parameter name='generate-unique-name-input.index-length' value='2' />
+</set><call module='GENERIC-RESOURCE-API' rpc='generate-unique-name' mode='sync' >
+<outcome value='failure'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`$generate-unique-name-output.error-message`" />
+</return></outcome><outcome value='success'>
+<set>
+<parameter name='tmp.vnf-name' value='`$generate-unique-name-output.generated-name`' />
+</set></outcome></call></block></outcome><outcome value='Other'>
+<block atomic="true"><set>
+<parameter name='generate-unique-name-input.name-table-type' value='VNF_INSTANCE' />
+<parameter name='generate-unique-name-input.supplied-name' value='`$vnf-topology-operation-input.vnf-request-input.vnf-name`' />
+</set><call module='GENERIC-RESOURCE-API' rpc='generate-unique-name' mode='sync' >
+<outcome value='failure'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`$generate-unique-name-output.error-message`" />
+</return></outcome><outcome value='success'>
+<set>
+<parameter name='tmp.vnf-name' value="`$vnf-topology-operation-input.vnf-request-input.vnf-name`" />
+</set></outcome></call></block></outcome></switch><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-id'
+ value='`$vnf-topology-operation-input.vnf-information.vnf-id`' />
+</set><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-name'
+ value='`$tmp.vnf-name`' />
+</set><switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`'>
+<outcome value=''><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-invariant-uuid'
+ value='`$db.vf-model.invariant-uuid`' />
+</set></outcome><outcome value='Other'>
+<set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-invariant-uuid'
+ value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`' />
+</set></outcome></switch><switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`'>
+<outcome value=''><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-uuid'
+ value='`$db.vf-model.uuid`' />
+</set></outcome><outcome value='Other'>
+<set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-uuid'
+ value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`' />
+</set></outcome></switch><switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-version`'>
+<outcome value=''><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-version'
+ value='`$db.vf-model.version`' />
+</set></outcome><outcome value='Other'>
+<set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-version'
+ value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-version`' />
+</set></outcome></switch><switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-name`'>
+<outcome value=''><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-name'
+ value='`$db.vf-model.name`' />
+</set></outcome><outcome value='Other'>
+<set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-name'
+ value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-name`' />
+</set></outcome></switch><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-customization-uuid'
+ value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`' />
+</set><get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="cloud-region"
+ key="cloud-region.cloud-owner = 'CloudOwner' AND
+ cloud-region.cloud-region-id = $vnf-topology-operation-input.vnf-request-input.aic-cloud-region AND
+ depth='0'"
+ pfx='aai.cloud-region' local-only='false' >
+
+<outcome value='not-found'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Cloud region not found in AAI" />
+</return></outcome><outcome value='failure'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error retrieving cloud region from AAI" />
+</return></outcome></get-resource><for index='idx' start='0' end='`$aai.cloud-region.relationship-list.relationship_length`' >
+<switch test='`$aai.cloud-region.relationship-list.relationship[$idx].related-to`'>
+<outcome value='complex'>
+<block atomic="true"><execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
+ <parameter name='ctx_memory_result_key' value='aai-uid-split' />
+ <parameter name='original_string' value='`$aai.cloud-region.relationship-list.relationship[$idx].related-link`' />
+ <parameter name='regex' value='/' />
+</execute><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.aic-clli'
+ value='`$aai-uid-split[$aai-uid-split_length - 1]`' />
+</set><break>
+</break></block></outcome></switch></for><get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="availability-zones"
+ key="cloud-region.cloud-owner = 'CloudOwner' AND
+ cloud-region.cloud-region-id = $vnf-topology-operation-input.vnf-request-input.aic-cloud-region AND
+ depth='0'"
+ pfx='aai.az' local-only='false' >
+
+<outcome value='failure'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error retrieving availability zones from AAI" />
+</return></outcome></get-resource><switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.aic-clli`'>
+<outcome value=''><return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'Unable to find aic-clli in AAI for aic-cloud-region ' + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region`" />
+</return></outcome></switch><get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'
+ key='SELECT * from VF_TO_NETWORK_ROLE_MAPPING WHERE vf_customization_uuid = $vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid'
+ pfx='db.vf-network-role-mapping[]'>
+
+<outcome value='failure'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error reading VF_TO_NETWORK_ROLE_MAPPING table" />
+</return></outcome><outcome value='not-found'>
+<set>
+<parameter name='db.vf-network-role-mapping_length' value='0' />
+</set></outcome></get-resource><set>
+<parameter name='network-index' value='0' />
+</set><for index='role-index' start='0' end='`$db.vf-network-role-mapping_length`'><block atomic="true"><get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="l3-networks"
+ key="l3-network.network-role = $db.vf-network-role-mapping[$role-index].network-role"
+ pfx='aai.l3-network' local-only='false'
+>
+<outcome value='not-found'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'No active l3-network found in AAI with cloud_region_id '
+ + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region + ' and network_role '
+ + $db.vf-network-role-mapping[$network-index].network-role`" />
+</return></outcome><outcome value='failure'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error retrieving l3-network from AAI" />
+</return></outcome></get-resource><set>
+<parameter name='l3-network-id' value='-1' />
+</set><block>
+<for index='db-network-index' start='0' end='`$aai.l3-network.l3-network_length`' >
+<switch test='`$aai.l3-network.l3-network[$db-network-index].orchestration-status`'>
+<outcome value='PendingCreate'>
+<block>
+</block></outcome><outcome value='Pending Create'>
+<block>
+</block></outcome><outcome value='PendingDelete'>
+<block>
+</block></outcome><outcome value='Pending Delete'>
+<block>
+</block></outcome><outcome value='Other'>
+<for silentFailure='true' index='db-rel-index' start='0' end='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship_length`' >
+<switch test='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].related-to`'>
+<outcome value='cloud-region'>
+<for silentFailure='true' index='db-data-index' start='0' end='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].relationship-data_length`' >
+<switch test='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].relationship-data[$db-data-index].relationship-key`'>
+<outcome value='cloud-region.cloud-region-id'>
+<switch test='`$aai.l3-network.l3-network[$db-network-index].relationship-list.relationship[$db-rel-index].relationship-data[$db-data-index].relationship-value == $vnf-topology-operation-input.vnf-request-input.aic-cloud-region`'>
+<outcome value='true'>
+<block atomic="true"><set>
+<parameter name='l3-network-id' value='`$aai.l3-network.l3-network[$db-network-index].network-id`' />
+</set><return status='failure'>
+</return></block></outcome></switch></outcome></switch></for></outcome></switch></for></outcome></switch></for><return status='success'>
+
+</return></block><switch test='`$l3-network-id`'>
+<outcome value='-1'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'Unable to find l3-network in AAI for network role ' + $db.vf-network-role-mapping[$role-index].network-role`" />
+</return></outcome></switch><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].network-role'
+ value='`$db.vf-network-role-mapping[$role-index].network-role`' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].network-name'
+ value='`$aai.l3-network.l3-network[$db-network-index].network-name`' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].neutron-id'
+ value='`$aai.l3-network.l3-network[$db-network-index].neutron-network-id`' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].network-id'
+ value='`$aai.l3-network.l3-network[$db-network-index].network-id`' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].contrail-network-fqdn'
+ value='`$aai.l3-network.l3-network[$db-network-index].contrail-network-fqdn`' />
+</set><for index='subnet-index' start='0' end='`$aai.l3-network.l3-network[0].subnets.subnet_length`' >
+<set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].subnets-data.subnet-data[$subnet-index].ip-version'
+ value='`$aai.l3-network.l3-network[$db-network-index].subnets.subnet[$subnet-index].ip-version`' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].subnets-data.subnet-data[$subnet-index].subnet-id'
+ value='`$aai.l3-network.l3-network[$db-network-index].subnets.subnet[$subnet-index].subnet-id`' />
+</set></for><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$network-index].subnets-data.subnet-data_length'
+ value='`$aai.l3-network.l3-network[0].subnets.subnet_length`' />
+</set><set>
+<parameter name='network-index' value='`$network-index + 1`' />
+</set></block></for><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network_length'
+ value='`$network-index`' />
+</set><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.'
+ value='vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.' />
+</set><switch test='`$aai.az.availability-zone_length`'>
+<outcome value=''><switch test='`$db.vf-model.avail-zone-max-count &gt; 0`'>
+<outcome value='true'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'No availability zones found in AAI for cloud region '
+ + $vnf-topology-operation-input.vnf-request-input.aic-cloud-region`" />
+</return></outcome><outcome value='false'>
+<set>
+<parameter name='aai.az.availability-zone_length' value='0' />
+</set></outcome></switch></outcome></switch><for index='idx' start='0' end='`$aai.az.availability-zone_length`' >
+<block atomic="true"><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.availability-zones.availability-zone[$idx]'
+ value='`$aai.az.availability-zone[$idx].availability-zone-name`' />
+</set><save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="generic-vnf:relationship-list"
+ key="generic-vnf.vnf-id = $service-data.vnfs.vnf[$vnf-index].vnf-id"
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="availability-zone" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="cloud-region.cloud-owner" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="CloudOwner" />
+ <parameter name="relationship-list.relationship[0].relationship-data[1].relationship-key" value="cloud-region.cloud-region-id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[1].relationship-value" value="`$vnf-topology-operation-input.vnf-request-input.aic-cloud-region`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[2].relationship-key" value="availability-zone.availability-zone-name" />
+ <parameter name="relationship-list.relationship[0].relationship-data[2].relationship-value" value="`$aai.az.availability-zone[$idx].availability-zone-name`" />
+<outcome value='failure'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error updating generic-vnf in AAI" />
+</return></outcome><outcome value='not-found'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'No generic-vnf found in AAI for vnf ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-id`" />
+</return></outcome></save></block></for><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.availability-zones.max-count'
+ value='`$db.vf-model.avail-zone-max-count`' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.availability-zones.availability-zone_length'
+ value='`$aai.az.availability-zone_length`' />
+</set><for index='vnf-nw-index' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network_length`' >
+<block atomic="true"><save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="generic-vnf:relationship-list"
+ key="generic-vnf.vnf-id = $service-data.vnfs.vnf[$vnf-index].vnf-id"
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="l3-network" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="l3-network.network-id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-resource-assignments.vnf-networks.vnf-network[$vnf-nw-index].network-id`" />
+<outcome value='failure'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error updating generic-vnf in AAI" />
+</return></outcome><outcome value='not-found'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'No generic-vnf found in AAI for vnf ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-id`" />
+</return></outcome></save></block></for><set>
+<parameter name='vnf-object-path'
+ value="`'restconf/config/GENERIC-RESOURCE-API:services/service/'
+ + $vnf-topology-operation-input.service-information.service-instance-id
+ + '/service-data/vnfs/vnf/'
+ + $service-data.vnfs.vnf[$vnf-index].vnf-id
+ + '/vnf-data/vnf-topology'`"/>
+<parameter name='service-object-path'
+ value="`'restconf/config/GENERIC-RESOURCE-API:services/service/'
+ + $vnf-topology-operation-input.service-information.service-instance-id
+ + '/service-data/vnfs/vnf/'
+ + $service-data.vnfs.vnf[$vnf-index].vnf-id
+ + '/vnf-data/vnf-topology'`"/></set><update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="generic-vnf"
+ key="generic-vnf.vnf-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-id"
+ force="true" pfx="tmp.AnAI-data">
+<parameter name="vnf-name" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.vnf-name`" />
+<parameter name="prov-status" value="PREPROV" />
+<parameter name="operational-status" value="out-of-service-path" />
+<parameter name="equipment-role" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-topology-identifier-structure.nf-role`" />
+<parameter name="model-invariant-id" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-invariant-uuid`" />
+<parameter name="model-version-id" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-uuid`" />
+<parameter name="model-customization-id" value="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.onap-model-information.model-customization-uuid`" />
+<parameter name="selflink" value="`$vnf-object-path`" />
+<outcome value='failure'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error updating selflink in generic-vnf in AAI" />
+</return></outcome><outcome value='not-found'>
+<return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'No generic-vnf found in AAI for vnf ID ' + $service-data.vnfs.vnf[$vnf-index].vnf-id`" />
+</return></outcome></update><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.sdnc-request-header.' value='$vnf-topology-operation-input.sdnc-request-header.' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.request-information.' value='$vnf-topology-operation-input.request-information.' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.' value='$vnf-topology-operation-input.service-information.' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.' value='$vnf-topology-operation-input.vnf-information.' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-request-input.' value='$vnf-topology-operation-input.vnf-request-input.' />
+
+</set><set>
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status' value='PendingCreate' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-rpc-action' value='`$vnf-topology-operation-input.sdnc-request-header.svc-action`' />
+<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-action' value='`$vnf-topology-operation-input.request-information.request-action`' />
+</set><return status='success'>
+<parameter name="ack-final-indicator" value="Y" />
+<parameter name="error-code" value="200" />
+<parameter name="error-message" value="`$error-message`" />
+</return></block></method></service-logic>