Added DG for overlay input validation 89/16489/1
authorGaurav Agrawal <gaurav.agrawal@huawei.com>
Thu, 28 Sep 2017 18:23:16 +0000 (23:53 +0530)
committerGaurav Agrawal <gaurav.agrawal@huawei.com>
Thu, 28 Sep 2017 18:26:41 +0000 (23:56 +0530)
Following changes are included:
1) Validated presence of mandatory input parameters
2) Validation of values for both sites.
3) Handling of l2 and l3.

Change-Id: Ic01604f445b682494157f7358f2f4eed6b720b88
Issue-Id: SDNC-107
Signed-off-by: Gaurav Agrawal <gaurav.agrawal@huawei.com>
Former-commit-id: 39f275c0e95a08a41e9c84c8662288b5af1f36ec

platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_validate-network-input-parameters.json
platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_validate-overlay-network-input-parameters.json [new file with mode: 0644]
platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_validate-network-input-parameters.xml
platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_validate-overlay-network-input-parameters.xml [new file with mode: 0644]

index 7b6edb2..85dad27 100644 (file)
 [
   {
-    "id": "fbeebb28.041148",
-    "type": "dgstart",
-    "name": "DGSTART",
-    "outputs": 1,
-    "x": 132.85714721679688,
-    "y": 178.57142639160156,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"da317618.54edf8",
+    "type":"dgstart",
+    "name":"DGSTART",
+    "outputs":1,
+    "x":102.515625,
+    "y":113.04766654968262,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "664d9ba9.99b264"
+        "20ee17f7.cfbc68"
       ]
     ]
   },
   {
-    "id": "664d9ba9.99b264",
-    "type": "service-logic",
-    "name": "GENERIC-RESOURCE-API ${project.version}",
-    "module": "GENERIC-RESOURCE-API",
-    "version": "${project.version}",
-    "comments": "",
-    "xml": "<service-logic xmlns='http://www.openecomp.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
-    "outputs": 1,
-    "x": 378.14286041259766,
-    "y": 177.80950546264648,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"20ee17f7.cfbc68",
+    "type":"service-logic",
+    "name":"GENERIC-RESOURCE-API ${project.version}",
+    "module":"GENERIC-RESOURCE-API",
+    "version":"${project.version}",
+    "comments":"",
+    "xml":"<service-logic xmlns='http://www.openecomp.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
+    "outputs":1,
+    "x":347.8013381958008,
+    "y":112.28574562072754,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "486551e4.b79ab"
+        "5a68f7e0.593d38"
       ]
     ]
   },
   {
-    "id": "486551e4.b79ab",
-    "type": "method",
-    "name": "method validate-network-input-parameters",
-    "xml": "<method rpc='validate-network-input-parameters' mode='sync'>\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 335.7738342285156,
-    "y": 252.82444381713867,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"5a68f7e0.593d38",
+    "type":"method",
+    "name":"method validate-network-input-parameters",
+    "xml":"<method rpc='validate-network-input-parameters' mode='sync'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":305.43231201171875,
+    "y":187.30068397521973,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "d58b2e53.2a74d"
+        "df4d604e.2ca72"
       ]
     ]
   },
   {
-    "id": "d58b2e53.2a74d",
-    "type": "block",
-    "name": "block : atomic",
-    "xml": "<block atomic=\"true\">",
-    "atomic": "true",
-    "outputs": 1,
-    "x": 619.7738418579102,
-    "y": 240.8244686126709,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"df4d604e.2ca72",
+    "type":"block",
+    "name":"block : atomic",
+    "xml":"<block atomic=\"true\">",
+    "atomic":"true",
+    "outputs":1,
+    "x":589.4323196411133,
+    "y":175.30070877075195,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "d7a4de3d.285b2",
-        "cec7d28c.31383"
+        "638c95bd.8f466c",
+        "420ecc0a.f3f174"
       ]
     ]
   },
   {
-    "id": "d7a4de3d.285b2",
-    "type": "switchNode",
-    "name": "switch  svc-action",
-    "xml": "<switch test='`$network-topology-operation-input.sdnc-request-header.svc-action`'>\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 900.7738418579102,
-    "y": 235.82445430755615,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"638c95bd.8f466c",
+    "type":"switchNode",
+    "name":"switch  svc-action",
+    "xml":"<switch test='`$network-topology-operation-input.sdnc-request-header.svc-action`'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":870.4323196411133,
+    "y":170.3006944656372,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "bb379126.44c87"
+        "66d387c4.23de98"
       ]
     ]
   },
   {
-    "id": "bb379126.44c87",
-    "type": "outcome",
-    "name": "NULL",
-    "xml": "<outcome value=''>",
-    "comments": "",
-    "outputs": 1,
-    "x": 1091.4881439208984,
-    "y": 236.82445526123047,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"66d387c4.23de98",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1061.1466217041016,
+    "y":171.30069541931152,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "b6f565f3.490a98"
+        "a7efa050.0eb13"
       ]
     ]
   },
   {
-    "id": "b6f565f3.490a98",
-    "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=\"sdnc-request-header.svc-request-id is a required input\" />\n",
-    "comments": "",
-    "x": 1265.9166946411133,
-    "y": 235.82444763183594,
-    "z": "41919c74.be6e64",
-    "wires": []
+    "id":"a7efa050.0eb13",
+    "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=\"sdnc-request-header.svc-request-id is a required input\" />\n",
+    "comments":"",
+    "x":1235.5751724243164,
+    "y":170.300687789917,
+    "z":"bc976c53.f1a79",
+    "wires":[
+
+    ]
   },
   {
-    "id": "cec7d28c.31383",
-    "type": "switchNode",
-    "name": "switch svc-action",
-    "xml": "<switch test='`$service-topology-operation-input.sdnc-request-header.svc-action`'>\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 201.77378845214844,
-    "y": 511.8244686126709,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"420ecc0a.f3f174",
+    "type":"switchNode",
+    "name":"switch svc-action",
+    "xml":"<switch test='`$service-topology-operation-input.sdnc-request-header.svc-action`'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":171.43226623535156,
+    "y":446.30070877075195,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "75d754ee.8a28ac",
-        "ad892566.5276d8",
-        "481e2179.b7e1e",
-        "60a2dfba.9f5d2",
-        "655825a3.9aa7dc"
+        "a1c81a08.4a4658",
+        "35262124.49e2ee",
+        "8db39207.9cf42",
+        "ac1f4d45.6379a",
+        "50f9a48d.e072dc"
       ]
     ]
   },
   {
-    "id": "75d754ee.8a28ac",
-    "type": "outcome",
-    "name": "assign",
-    "xml": "<outcome value='assign'>\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 403.2738723754883,
-    "y": 511.8244686126709,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"a1c81a08.4a4658",
+    "type":"outcome",
+    "name":"assign",
+    "xml":"<outcome value='assign'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":372.9323501586914,
+    "y":446.30070877075195,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "a5452c63.5abad"
+        "7802f1ec.ca7d8"
       ]
     ]
   },
   {
-    "id": "a5452c63.5abad",
-    "type": "block",
-    "name": "block : atomic",
-    "xml": "<block atomic=\"true\">",
-    "atomic": "true",
-    "outputs": 1,
-    "x": 569.2738800048828,
-    "y": 511.8244686126709,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"7802f1ec.ca7d8",
+    "type":"block",
+    "name":"block : atomic",
+    "xml":"<block atomic=\"true\">",
+    "atomic":"true",
+    "outputs":1,
+    "x":538.9323577880859,
+    "y":446.30070877075195,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "70b2b7d8.8f4d48"
+        "ea0957a5.857bf8"
       ]
     ]
   },
   {
-    "id": "2111484.fdeeeb8",
-    "type": "for",
-    "name": "for loop i - Network input parameters",
-    "xml": "<for index=\"i\" start=\"0\" end=\"`$network-topology-information.network-request-input.network-input-parameters.param_length`\">\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 1768.488021850586,
-    "y": 175.53873825073242,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"ef18ce39.3e51e",
+    "type":"for",
+    "name":"for loop i - Network input parameters",
+    "xml":"<for index=\"i\" start=\"0\" end=\"`$network-topology-information.network-request-input.network-input-parameters.param_length`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1738.146499633789,
+    "y":110.01497840881348,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "23ff25d7.dc00da"
+        "80257d50.3b4d4"
       ]
     ]
   },
   {
-    "id": "b6c6c32e.49394",
-    "type": "switchNode",
-    "name": "switch value",
-    "xml": "<switch test=\"`$tmp.value`\">\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 2622.059371948242,
-    "y": 429.5387134552002,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"4a695b88.fdc594",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$tmp.value`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":2591.7178497314453,
+    "y":364.01495361328125,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "ada5f970.525a08"
+        "9ba44b0.d83ecb8"
       ]
     ]
   },
   {
-    "id": "ada5f970.525a08",
-    "type": "outcome",
-    "name": "NULL",
-    "xml": "<outcome value=''>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2839.0593452453613,
-    "y": 428.5387191772461,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"9ba44b0.d83ecb8",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":2808.7178230285645,
+    "y":363.01495933532715,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "ed2ebd09.12d14"
+        "b0753bf8.b88448"
       ]
     ]
   },
   {
-    "id": "ed2ebd09.12d14",
-    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
-    "comments": "",
-    "x": 3017.4880599975586,
-    "y": 429.5387191772461,
-    "z": "41919c74.be6e64",
-    "wires": []
-  },
-  {
-    "id": "ad892566.5276d8",
-    "type": "outcome",
-    "name": "deactivate",
-    "xml": "<outcome value='deactivate'>\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 405.57142639160156,
-    "y": 669.9999961853027,
-    "z": "41919c74.be6e64",
-    "wires": [
-      [
-        "cf8cfa72.307308"
-      ]
+    "id":"b0753bf8.b88448",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":2987.1465377807617,
+    "y":364.01495933532715,
+    "z":"bc976c53.f1a79",
+    "wires":[
+
     ]
   },
   {
-    "id": "481e2179.b7e1e",
-    "type": "outcome",
-    "name": "delete",
-    "xml": "<outcome value='delete'>\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 409.2858085632324,
-    "y": 996.7145538330078,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"35262124.49e2ee",
+    "type":"outcome",
+    "name":"deactivate",
+    "xml":"<outcome value='deactivate'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":375.2299041748047,
+    "y":604.4762363433838,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "777dc005.88824"
+        "e5333ad2.88c6a8"
       ]
     ]
   },
   {
-    "id": "60a2dfba.9f5d2",
-    "type": "other",
-    "name": "other",
-    "xml": "<outcome value='Other'>\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 407.0476875305176,
-    "y": 951.142822265625,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"8db39207.9cf42",
+    "type":"outcome",
+    "name":"delete",
+    "xml":"<outcome value='delete'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":378.94428634643555,
+    "y":931.1907939910889,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "e573762b.1a8c88"
+        "69b449f8.e0c4f8"
       ]
     ]
   },
   {
-    "id": "e573762b.1a8c88",
-    "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=\"`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`\" />\n",
-    "comments": "",
-    "x": 560.6192626953125,
-    "y": 953.7619662284851,
-    "z": "41919c74.be6e64",
-    "wires": []
-  },
-  {
-    "id": "23ff25d7.dc00da",
-    "type": "block",
-    "name": "block",
-    "xml": "<block>\n",
-    "atomic": "false",
-    "comments": "",
-    "outputs": 1,
-    "x": 1646.5713958740234,
-    "y": 322.2856864929199,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"ac1f4d45.6379a",
+    "type":"other",
+    "name":"other",
+    "xml":"<outcome value='Other'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":376.7061653137207,
+    "y":885.619062423706,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "4d67279e.b298d8",
-        "88358308.77ca8",
-        "1a1154a1.e5eeab"
+        "c57b3d6b.428a1"
       ]
     ]
   },
   {
-    "id": "70b2b7d8.8f4d48",
-    "type": "switchNode",
-    "name": "switch request-action",
-    "xml": "<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 894.8571624755859,
-    "y": 401.2380962371826,
-    "z": "41919c74.be6e64",
-    "wires": [
-      [
-        "2263fcf0.dd9c04",
-        "f78b2624.0874d8"
-      ]
+    "id":"c57b3d6b.428a1",
+    "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=\"`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`\" />\n",
+    "comments":"",
+    "x":530.2777404785156,
+    "y":888.2382063865662,
+    "z":"bc976c53.f1a79",
+    "wires":[
+
     ]
   },
   {
-    "id": "2263fcf0.dd9c04",
-    "type": "other",
-    "name": "CreateNetworkInstance",
-    "xml": "<outcome value='CreateNetworkInstance'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 1160.857162475586,
-    "y": 360.2380962371826,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"80257d50.3b4d4",
+    "type":"block",
+    "name":"block",
+    "xml":"<block>\n",
+    "atomic":"false",
+    "comments":"",
+    "outputs":1,
+    "x":1616.2298736572266,
+    "y":256.761926651001,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "504c1faf.afb3e"
+        "50315017.56b56",
+        "1ffb5b62.b458c5",
+        "846be723.9405f8"
       ]
     ]
   },
   {
-    "id": "f78b2624.0874d8",
-    "type": "other",
-    "name": "Other",
-    "xml": "<outcome value='Other'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 1114.857162475586,
-    "y": 410.2380962371826,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"ea0957a5.857bf8",
+    "type":"switchNode",
+    "name":"switch request-action",
+    "xml":"<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":864.5156402587891,
+    "y":335.7143363952637,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "692f7373.96d08c"
+        "6458f4b.5fda60c",
+        "7c5ea13d.5b8e"
       ]
     ]
   },
   {
-    "id": "692f7373.96d08c",
-    "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=\"request-information.request-action is required to be CreateNetworkInstance for svc-action=assign\" />\n",
-    "comments": "",
-    "x": 1283.857162475586,
-    "y": 410.2380962371826,
-    "z": "41919c74.be6e64",
-    "wires": []
-  },
-  {
-    "id": "504c1faf.afb3e",
-    "type": "block",
-    "name": "block : atomic",
-    "xml": "<block atomic=\"true\">",
-    "atomic": "true",
-    "outputs": 1,
-    "x": 1385.857162475586,
-    "y": 349.2380962371826,
-    "z": "41919c74.be6e64",
-    "wires": [
-      [
-        "2111484.fdeeeb8"
-      ]
-    ]
-  },
-  {
-    "id": "6598afe7.9a675",
-    "type": "comment",
-    "name": "TODO: need to identify underlay or overlay",
-    "info": "",
-    "comments": "",
-    "x": 1130.4286651611328,
-    "y": 308.952356338501,
-    "z": "41919c74.be6e64",
-    "wires": []
-  },
-  {
-    "id": "4d67279e.b298d8",
-    "type": "set",
-    "name": "clear tmp-data",
-    "xml": "<set>\n<parameter name='tmp.name' value='' />\n<parameter name='tmp.value' value='' />\n",
-    "comments": "",
-    "x": 1838.5714569091797,
-    "y": 276.5237846374512,
-    "z": "41919c74.be6e64",
-    "wires": []
-  },
-  {
-    "id": "88358308.77ca8",
-    "type": "set",
-    "name": "set tmp-data",
-    "xml": "<set>\n<parameter name='tmp.name' value=\"'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].name'\"/>\n<parameter name='tmp.value' value=\"'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].value'\"/>\n",
-    "comments": "",
-    "x": 1827.5714569091797,
-    "y": 366.5237846374512,
-    "z": "41919c74.be6e64",
-    "wires": []
-  },
-  {
-    "id": "1a1154a1.e5eeab",
-    "type": "switchNode",
-    "name": "switch name",
-    "xml": "<switch test=\"'$tmp.name'\">\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 1806.5714569091797,
-    "y": 460.5237846374512,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"6458f4b.5fda60c",
+    "type":"other",
+    "name":"CreateNetworkInstance",
+    "xml":"<outcome value='CreateNetworkInstance'>",
+    "comments":"",
+    "outputs":1,
+    "x":1130.515640258789,
+    "y":294.7143363952637,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "fec78ff3.01387",
-        "6a6df5db.95920c",
-        "c9668b0d.369978",
-        "5f023b7d.a0fdc4",
-        "85213655.7adec8",
-        "54513a6c.abaec4",
-        "8b1be305.74e42",
-        "856ed4f2.7a9128",
-        "80769836.7f8968",
-        "9b694645.6496b8",
-        "a075f82a.5f8a08",
-        "1b0790dd.e4f86f",
-        "b32746a2.4cd8b8",
-        "ac316a2a.53ce98",
-        "94575312.6ba8b",
-        "b6c16e45.493e9",
-        "75bd3929.8a42c8"
+        "84eb81e3.dcb2d"
       ]
     ]
   },
   {
-    "id": "fec78ff3.01387",
-    "type": "outcome",
-    "name": "NULL",
-    "xml": "<outcome value=''>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2346.1427459716797,
-    "y": 963.523759841919,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"7c5ea13d.5b8e",
+    "type":"other",
+    "name":"Other",
+    "xml":"<outcome value='Other'>",
+    "comments":"",
+    "outputs":1,
+    "x":1084.515640258789,
+    "y":344.7143363952637,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "eaadea68.155218"
+        "f6d144fc.f801f8"
       ]
     ]
   },
   {
-    "id": "eaadea68.155218",
-    "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=\"`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`\" />\n",
-    "comments": "",
-    "x": 2521.1427459716797,
-    "y": 962.523759841919,
-    "z": "41919c74.be6e64",
-    "wires": []
+    "id":"f6d144fc.f801f8",
+    "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=\"request-information.request-action is required to be CreateNetworkInstance for svc-action=assign\" />\n",
+    "comments":"",
+    "x":1253.515640258789,
+    "y":344.7143363952637,
+    "z":"bc976c53.f1a79",
+    "wires":[
+
+    ]
   },
   {
-    "id": "6a6df5db.95920c",
-    "type": "other",
-    "name": "name",
-    "xml": "<outcome value='name'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2323.1427459716797,
-    "y": 85.52375984191895,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"84eb81e3.dcb2d",
+    "type":"block",
+    "name":"block : atomic",
+    "xml":"<block atomic=\"true\">",
+    "atomic":"true",
+    "outputs":1,
+    "x":1355.515640258789,
+    "y":283.7143363952637,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "b6c6c32e.49394"
+        "ef18ce39.3e51e"
       ]
     ]
   },
   {
-    "id": "c9668b0d.369978",
-    "type": "other",
-    "name": "service-type",
-    "xml": "<outcome value='service-type'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2326.1427459716797,
-    "y": 152.52375984191895,
-    "z": "41919c74.be6e64",
-    "wires": [
-      [
-        "b6c6c32e.49394"
-      ]
+    "id":"e0b5f19f.d9b45",
+    "type":"comment",
+    "name":"TODO: need to identify underlay or overlay",
+    "info":"",
+    "comments":"",
+    "x":1100.087142944336,
+    "y":243.42859649658203,
+    "z":"bc976c53.f1a79",
+    "wires":[
+
     ]
   },
   {
-    "id": "8b1be305.74e42",
-    "type": "other",
-    "name": "sna2_name",
-    "xml": "<outcome value='sna2_name'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2330.1427459716797,
-    "y": 381.52375984191895,
-    "z": "41919c74.be6e64",
-    "wires": [
-      [
-        "b6c6c32e.49394"
-      ]
+    "id":"50315017.56b56",
+    "type":"set",
+    "name":"clear tmp-data",
+    "xml":"<set>\n<parameter name='tmp.name' value='' />\n<parameter name='tmp.value' value='' />\n",
+    "comments":"",
+    "x":1808.2299346923828,
+    "y":211.00002479553223,
+    "z":"bc976c53.f1a79",
+    "wires":[
+
     ]
   },
   {
-    "id": "5f023b7d.a0fdc4",
-    "type": "other",
-    "name": "site1-name",
-    "xml": "<outcome value='site1-name'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2327.1427459716797,
-    "y": 213.52375984191895,
-    "z": "41919c74.be6e64",
-    "wires": [
-      [
-        "b6c6c32e.49394"
-      ]
+    "id":"1ffb5b62.b458c5",
+    "type":"set",
+    "name":"set tmp-data",
+    "xml":"<set>\n<parameter name='tmp.name' value=\"'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].name'\"/>\n<parameter name='tmp.value' value=\"'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].value'\"/>\n",
+    "comments":"",
+    "x":1797.2299346923828,
+    "y":301.0000247955322,
+    "z":"bc976c53.f1a79",
+    "wires":[
+
     ]
   },
   {
-    "id": "85213655.7adec8",
-    "type": "other",
-    "name": "site2-name",
-    "xml": "<outcome value='site2-name'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2323.1427459716797,
-    "y": 270.52375984191895,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"846be723.9405f8",
+    "type":"switchNode",
+    "name":"switch name",
+    "xml":"<switch test=\"'$tmp.name'\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1776.2299346923828,
+    "y":395.0000247955322,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "b6c6c32e.49394"
+        "45932bf.e6c01d4",
+        "39a76082.5cc54",
+        "6eae96bd.b54598",
+        "fa0caaec.e45618",
+        "ca5c1826.4817d8",
+        "7792e369.1908ac",
+        "13678c40.7cc714",
+        "a2732629.f76cc8",
+        "f2c5c3f2.76097",
+        "54ca3e0b.56d18",
+        "681149f1.d61ef8",
+        "4bc98b71.a2aa84",
+        "aff0f172.9ddbc",
+        "d8ad234.fa86ce",
+        "705971b7.939b3",
+        "c8386139.7bc31",
+        "382fe5b2.be669a"
       ]
     ]
   },
   {
-    "id": "54513a6c.abaec4",
-    "type": "other",
-    "name": "sna1_name",
-    "xml": "<outcome value='sna1_name'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2326.1427459716797,
-    "y": 327.52375984191895,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"45932bf.e6c01d4",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":2315.801223754883,
+    "y":898,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "b6c6c32e.49394"
+        "6a1da75c.dff4f8"
       ]
     ]
   },
   {
-    "id": "856ed4f2.7a9128",
-    "type": "other",
-    "name": "pe1_id",
-    "xml": "<outcome value='pe1_id'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2330.1427459716797,
-    "y": 432.52375984191895,
-    "z": "41919c74.be6e64",
-    "wires": [
-      [
-        "b6c6c32e.49394"
-      ]
+    "id":"6a1da75c.dff4f8",
+    "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=\"`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`\" />\n",
+    "comments":"",
+    "x":2490.801223754883,
+    "y":897,
+    "z":"bc976c53.f1a79",
+    "wires":[
+
     ]
   },
   {
-    "id": "80769836.7f8968",
-    "type": "other",
-    "name": "pe2_id",
-    "xml": "<outcome value='pe2_id'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2333.1427459716797,
-    "y": 480.52375984191895,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"39a76082.5cc54",
+    "type":"other",
+    "name":"name",
+    "xml":"<outcome value='name'>",
+    "comments":"",
+    "outputs":1,
+    "x":2292.801223754883,
+    "y":20,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "b6c6c32e.49394"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "9b694645.6496b8",
-    "type": "other",
-    "name": "ac1-id",
-    "xml": "<outcome value='ac1-id'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2338.1427459716797,
-    "y": 529.523759841919,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"6eae96bd.b54598",
+    "type":"other",
+    "name":"service-type",
+    "xml":"<outcome value='service-type'>",
+    "comments":"",
+    "outputs":1,
+    "x":2295.801223754883,
+    "y":87,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "b6c6c32e.49394"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "a075f82a.5f8a08",
-    "type": "other",
-    "name": "ac2-id",
-    "xml": "<outcome value='ac2-id'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2340.1427459716797,
-    "y": 584.523759841919,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"13678c40.7cc714",
+    "type":"other",
+    "name":"sna2_name",
+    "xml":"<outcome value='sna2_name'>",
+    "comments":"",
+    "outputs":1,
+    "x":2299.801223754883,
+    "y":316,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "b6c6c32e.49394"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "1b0790dd.e4f86f",
-    "type": "other",
-    "name": "ac1-ip",
-    "xml": "<outcome value='ac1-ip'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2340.1427459716797,
-    "y": 636.523759841919,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"fa0caaec.e45618",
+    "type":"other",
+    "name":"site1-name",
+    "xml":"<outcome value='site1-name'>",
+    "comments":"",
+    "outputs":1,
+    "x":2296.801223754883,
+    "y":148,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "b6c6c32e.49394"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "b32746a2.4cd8b8",
-    "type": "other",
-    "name": "ac2-ip",
-    "xml": "<outcome value='ac2-ip'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2342.1427459716797,
-    "y": 697.523759841919,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"ca5c1826.4817d8",
+    "type":"other",
+    "name":"site2-name",
+    "xml":"<outcome value='site2-name'>",
+    "comments":"",
+    "outputs":1,
+    "x":2292.801223754883,
+    "y":205,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "b6c6c32e.49394"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "ac316a2a.53ce98",
-    "type": "other",
-    "name": "ac1_peer_ip",
-    "xml": "<outcome value='ac1_peer_ip'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2344.1427459716797,
-    "y": 747.523759841919,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"7792e369.1908ac",
+    "type":"other",
+    "name":"sna1_name",
+    "xml":"<outcome value='sna1_name'>",
+    "comments":"",
+    "outputs":1,
+    "x":2295.801223754883,
+    "y":262,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "b6c6c32e.49394"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "94575312.6ba8b",
-    "type": "other",
-    "name": "ac2_peer_ip",
-    "xml": "<outcome value='ac2_peer_ip'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2340.1427459716797,
-    "y": 795.523759841919,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"a2732629.f76cc8",
+    "type":"other",
+    "name":"pe1_id",
+    "xml":"<outcome value='pe1_id'>",
+    "comments":"",
+    "outputs":1,
+    "x":2299.801223754883,
+    "y":367,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "b6c6c32e.49394"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "b6c16e45.493e9",
-    "type": "other",
-    "name": "ac1_svlan",
-    "xml": "<outcome value='ac1_svlan'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2342.1427459716797,
-    "y": 848.523759841919,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"f2c5c3f2.76097",
+    "type":"other",
+    "name":"pe2_id",
+    "xml":"<outcome value='pe2_id'>",
+    "comments":"",
+    "outputs":1,
+    "x":2302.801223754883,
+    "y":415,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "b6c6c32e.49394"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "75bd3929.8a42c8",
-    "type": "other",
-    "name": "ac2_svlan",
-    "xml": "<outcome value='ac2_svlan'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 2344.1427459716797,
-    "y": 909.523759841919,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"54ca3e0b.56d18",
+    "type":"other",
+    "name":"ac1-id",
+    "xml":"<outcome value='ac1-id'>",
+    "comments":"",
+    "outputs":1,
+    "x":2307.801223754883,
+    "y":464,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "b6c6c32e.49394"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "777dc005.88824",
-    "type": "block",
-    "name": "block : atomic",
-    "xml": "<block atomic=\"true\">",
-    "atomic": "true",
-    "outputs": 1,
-    "x": 340.42858123779297,
-    "y": 1078.3810033798218,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"681149f1.d61ef8",
+    "type":"other",
+    "name":"ac2-id",
+    "xml":"<outcome value='ac2-id'>",
+    "comments":"",
+    "outputs":1,
+    "x":2309.801223754883,
+    "y":519,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "a61ab24b.59e55",
-        "9c0bbd14.63f44"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "a61ab24b.59e55",
-    "type": "other",
-    "name": "DeleteNetworkInstance",
-    "xml": "<outcome value='DeleteNetworkInstance'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 356.14287185668945,
-    "y": 1134.3809671401978,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"4bc98b71.a2aa84",
+    "type":"other",
+    "name":"ac1-ip",
+    "xml":"<outcome value='ac1-ip'>",
+    "comments":"",
+    "outputs":1,
+    "x":2309.801223754883,
+    "y":571,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "a956c548.56a938"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "9c0bbd14.63f44",
-    "type": "other",
-    "name": "Other",
-    "xml": "<outcome value='Other'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 310.14287185668945,
-    "y": 1184.3809671401978,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"aff0f172.9ddbc",
+    "type":"other",
+    "name":"ac2-ip",
+    "xml":"<outcome value='ac2-ip'>",
+    "comments":"",
+    "outputs":1,
+    "x":2311.801223754883,
+    "y":632,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "3c6c31c7.c393ce"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "3c6c31c7.c393ce",
-    "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=\"request-information.request-action is required to be CreateNetworkInstance for svc-action=assign\" />\n",
-    "comments": "",
-    "x": 479.14287185668945,
-    "y": 1184.3809671401978,
-    "z": "41919c74.be6e64",
-    "wires": []
-  },
-  {
-    "id": "a956c548.56a938",
-    "type": "block",
-    "name": "block : atomic",
-    "xml": "<block atomic=\"true\">",
-    "atomic": "true",
-    "outputs": 1,
-    "x": 581.1428718566895,
-    "y": 1123.3809671401978,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"d8ad234.fa86ce",
+    "type":"other",
+    "name":"ac1_peer_ip",
+    "xml":"<outcome value='ac1_peer_ip'>",
+    "comments":"",
+    "outputs":1,
+    "x":2313.801223754883,
+    "y":682,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "5793869c.a86c78"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "5793869c.a86c78",
-    "type": "for",
-    "name": "for each network-input-parameters",
-    "xml": "<for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 403.14287185668945,
-    "y": 1278.3809671401978,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"705971b7.939b3",
+    "type":"other",
+    "name":"ac2_peer_ip",
+    "xml":"<outcome value='ac2_peer_ip'>",
+    "comments":"",
+    "outputs":1,
+    "x":2309.801223754883,
+    "y":730,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "1c06545.fe3f9ac"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "1c06545.fe3f9ac",
-    "type": "block",
-    "name": "block",
-    "xml": "<block>\n",
-    "atomic": "false",
-    "comments": "",
-    "outputs": 1,
-    "x": 396.14287185668945,
-    "y": 1363.3809671401978,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"c8386139.7bc31",
+    "type":"other",
+    "name":"ac1_svlan",
+    "xml":"<outcome value='ac1_svlan'>",
+    "comments":"",
+    "outputs":1,
+    "x":2311.801223754883,
+    "y":783,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "5898a53c.a7675c"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "5898a53c.a7675c",
-    "type": "switchNode",
-    "name": "switch name",
-    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`\">\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 579.1428718566895,
-    "y": 1356.3809671401978,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"382fe5b2.be669a",
+    "type":"other",
+    "name":"ac2_svlan",
+    "xml":"<outcome value='ac2_svlan'>",
+    "comments":"",
+    "outputs":1,
+    "x":2313.801223754883,
+    "y":844,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "a1cbbebc.5e344"
+        "4a695b88.fdc594"
       ]
     ]
   },
   {
-    "id": "a1cbbebc.5e344",
-    "type": "outcomeTrue",
-    "name": "true",
-    "xml": "<outcome value='true'>\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 760.1428718566895,
-    "y": 1355.3809671401978,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"69b449f8.e0c4f8",
+    "type":"block",
+    "name":"block : atomic",
+    "xml":"<block atomic=\"true\">",
+    "atomic":"true",
+    "outputs":1,
+    "x":310.0870590209961,
+    "y":1012.8572435379028,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "1f995851.e066a8"
+        "d5f90944.52fe68",
+        "f019a10f.84bba"
       ]
     ]
   },
   {
-    "id": "1f995851.e066a8",
-    "type": "switchNode",
-    "name": "switch value",
-    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`\">\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 924.1428718566895,
-    "y": 1355.3809671401978,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"d5f90944.52fe68",
+    "type":"other",
+    "name":"DeleteNetworkInstance",
+    "xml":"<outcome value='DeleteNetworkInstance'>",
+    "comments":"",
+    "outputs":1,
+    "x":325.8013496398926,
+    "y":1068.8572072982788,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "964134d1.69bec8"
+        "1ad15265.c666ae"
       ]
     ]
   },
   {
-    "id": "964134d1.69bec8",
-    "type": "outcome",
-    "name": "NULL",
-    "xml": "<outcome value=''>",
-    "comments": "",
-    "outputs": 1,
-    "x": 793.1428718566895,
-    "y": 1479.3809671401978,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"f019a10f.84bba",
+    "type":"other",
+    "name":"Other",
+    "xml":"<outcome value='Other'>",
+    "comments":"",
+    "outputs":1,
+    "x":279.8013496398926,
+    "y":1118.8572072982788,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "5e9f6b8b.a16094"
+        "b5aedf37.5b6ec"
       ]
     ]
   },
   {
-    "id": "5e9f6b8b.a16094",
-    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
-    "comments": "",
-    "x": 971.5715866088867,
-    "y": 1480.3809671401978,
-    "z": "41919c74.be6e64",
-    "wires": []
+    "id":"b5aedf37.5b6ec",
+    "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=\"request-information.request-action is required to be CreateNetworkInstance for svc-action=assign\" />\n",
+    "comments":"",
+    "x":448.8013496398926,
+    "y":1118.8572072982788,
+    "z":"bc976c53.f1a79",
+    "wires":[
+
+    ]
   },
   {
-    "id": "655825a3.9aa7dc",
-    "type": "outcome",
-    "name": "activate",
-    "xml": "<outcome value='activate'>\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 404.28571701049805,
-    "y": 604.2857389450073,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"1ad15265.c666ae",
+    "type":"block",
+    "name":"block : atomic",
+    "xml":"<block atomic=\"true\">",
+    "atomic":"true",
+    "outputs":1,
+    "x":550.8013496398926,
+    "y":1057.8572072982788,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "dc7e5048.2381b"
+        "916b52b.b2dacb"
       ]
     ]
   },
   {
-    "id": "dc7e5048.2381b",
-    "type": "switchNode",
-    "name": "switch request-action",
-    "xml": "<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 587.1428833007812,
-    "y": 601.4285888671875,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"916b52b.b2dacb",
+    "type":"for",
+    "name":"for each network-input-parameters",
+    "xml":"<for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\n",
+    "comments":"",
+    "outputs":1,
+    "x":372.8013496398926,
+    "y":1212.8572072982788,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "4e0582c3.b1fa7c",
-        "20cf7f44.df308"
+        "48a15b4b.da9c94"
       ]
     ]
   },
   {
-    "id": "4e0582c3.b1fa7c",
-    "type": "other",
-    "name": "ActivateNetworkInstance",
-    "xml": "<outcome value='ActivateNetworkInstance'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 853.1428833007812,
-    "y": 560.4285888671875,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"48a15b4b.da9c94",
+    "type":"block",
+    "name":"block",
+    "xml":"<block>\n",
+    "atomic":"false",
+    "comments":"",
+    "outputs":1,
+    "x":365.8013496398926,
+    "y":1297.8572072982788,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "dc249849.23db68"
+        "c6022f0d.42d06"
       ]
     ]
   },
   {
-    "id": "20cf7f44.df308",
-    "type": "other",
-    "name": "Other",
-    "xml": "<outcome value='Other'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 807.1428833007812,
-    "y": 610.4285888671875,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"c6022f0d.42d06",
+    "type":"switchNode",
+    "name":"switch name",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":548.8013496398926,
+    "y":1290.8572072982788,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "c869bca7.37964"
+        "235fbeb1.629a02"
       ]
     ]
   },
   {
-    "id": "c869bca7.37964",
-    "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=\"request-information.request-action is required to be ActivateNetworkInstance for svc-action=activate\" />\n",
-    "comments": "",
-    "x": 976.1428833007812,
-    "y": 610.4285888671875,
-    "z": "41919c74.be6e64",
-    "wires": []
-  },
-  {
-    "id": "dc249849.23db68",
-    "type": "block",
-    "name": "block : atomic",
-    "xml": "<block atomic=\"true\">",
-    "atomic": "true",
-    "outputs": 1,
-    "x": 1078.1428833007812,
-    "y": 549.4285888671875,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"235fbeb1.629a02",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":729.8013496398926,
+    "y":1289.8572072982788,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "a69af05c.59651"
+        "9c3a3b86.66d288"
       ]
     ]
   },
   {
-    "id": "a69af05c.59651",
-    "type": "for",
-    "name": "for loop i - Network input parameters",
-    "xml": "<for index=\"i\" start=\"0\" end=\"`$network-topology-information.network-request-input.network-input-parameters.param_length`\">\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 1331.4285888671875,
-    "y": 547.1428833007812,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"9c3a3b86.66d288",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":893.8013496398926,
+    "y":1289.8572072982788,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "eebcaba3.114358"
+        "7bc8b1f4.9d2b8"
       ]
     ]
   },
   {
-    "id": "eebcaba3.114358",
-    "type": "block",
-    "name": "block",
-    "xml": "<block>\n",
-    "atomic": "false",
-    "comments": "",
-    "outputs": 1,
-    "x": 1209.511962890625,
-    "y": 693.8898315429688,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"7bc8b1f4.9d2b8",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":762.8013496398926,
+    "y":1413.8572072982788,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "2a9d9d71.d56262",
-        "7f24842b.80db7c",
-        "8531be73.7ace4"
+        "457d6f04.16b53"
       ]
     ]
   },
   {
-    "id": "2a9d9d71.d56262",
-    "type": "set",
-    "name": "clear tmp-data",
-    "xml": "<set>\n<parameter name='tmp.name' value='' />\n<parameter name='tmp.value' value='' />\n",
-    "comments": "",
-    "x": 1401.5120239257812,
-    "y": 648.1279296875,
-    "z": "41919c74.be6e64",
-    "wires": []
-  },
-  {
-    "id": "7f24842b.80db7c",
-    "type": "set",
-    "name": "set tmp-data",
-    "xml": "<set>\n<parameter name='tmp.name' value=\"'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].name'\"/>\n<parameter name='tmp.value' value=\"'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].value'\"/>\n",
-    "comments": "",
-    "x": 1390.5120239257812,
-    "y": 738.1279296875,
-    "z": "41919c74.be6e64",
-    "wires": []
-  },
-  {
-    "id": "8531be73.7ace4",
-    "type": "switchNode",
-    "name": "switch name",
-    "xml": "<switch test=\"'$tmp.name'\">\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 1369.5120239257812,
-    "y": 832.1279296875,
-    "z": "41919c74.be6e64",
-    "wires": [
-      [
-        "c40817b9.3bf7e8",
-        "90143650.6febc8",
-        "96865432.6979a8",
-        "7937c725.86c838",
-        "693ea026.96c16",
-        "6ae3527c.951cac",
-        "1c7eef33.e38111"
-      ]
+    "id":"457d6f04.16b53",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":941.2300643920898,
+    "y":1414.8572072982788,
+    "z":"bc976c53.f1a79",
+    "wires":[
+
     ]
   },
   {
-    "id": "c40817b9.3bf7e8",
-    "type": "other",
-    "name": "name",
-    "xml": "<outcome value='name'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 1588.9405250549316,
-    "y": 681.4136323928833,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"50f9a48d.e072dc",
+    "type":"outcome",
+    "name":"activate",
+    "xml":"<outcome value='activate'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":373.9441947937012,
+    "y":538.7619791030884,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "490badab.b6f454"
+        "90da72db.f3e38"
       ]
     ]
   },
   {
-    "id": "90143650.6febc8",
-    "type": "other",
-    "name": "description",
-    "xml": "<outcome value='description'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 1599.0833473205566,
-    "y": 744.1279344558716,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"90da72db.f3e38",
+    "type":"switchNode",
+    "name":"switch request-action",
+    "xml":"<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":556.8013610839844,
+    "y":535.9048290252686,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "490badab.b6f454"
+        "e1518316.05556",
+        "e5ae8d2b.cedcd"
       ]
     ]
   },
   {
-    "id": "96865432.6979a8",
-    "type": "other",
-    "name": "router_id",
-    "xml": "<outcome value='router_id'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 1590.0833625793457,
-    "y": 799.4136219024658,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"e1518316.05556",
+    "type":"other",
+    "name":"ActivateNetworkInstance",
+    "xml":"<outcome value='ActivateNetworkInstance'>",
+    "comments":"",
+    "outputs":1,
+    "x":822.8013610839844,
+    "y":494.90482902526855,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "490badab.b6f454"
+        "d9a3c7f4.4c0498"
       ]
     ]
   },
   {
-    "id": "7937c725.86c838",
-    "type": "other",
-    "name": "local_networks",
-    "xml": "<outcome value='local_networks'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 1608.9405403137207,
-    "y": 857.8422183990479,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"e5ae8d2b.cedcd",
+    "type":"other",
+    "name":"Other",
+    "xml":"<outcome value='Other'>",
+    "comments":"",
+    "outputs":1,
+    "x":776.8013610839844,
+    "y":544.9048290252686,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "490badab.b6f454"
+        "ca95078e.01fd58"
       ]
     ]
   },
   {
-    "id": "490badab.b6f454",
-    "type": "switchNode",
-    "name": "switch value",
-    "xml": "<switch test=\"`$tmp.value`\">\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 1902.8571815490723,
-    "y": 787.1428785324097,
-    "z": "41919c74.be6e64",
-    "wires": [
-      [
-        "8613db79.79ec28"
-      ]
+    "id":"ca95078e.01fd58",
+    "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=\"request-information.request-action is required to be ActivateNetworkInstance for svc-action=activate\" />\n",
+    "comments":"",
+    "x":945.8013610839844,
+    "y":544.9048290252686,
+    "z":"bc976c53.f1a79",
+    "wires":[
+
     ]
   },
   {
-    "id": "8613db79.79ec28",
-    "type": "outcome",
-    "name": "NULL",
-    "xml": "<outcome value=''>",
-    "comments": "",
-    "outputs": 1,
-    "x": 1909.8572540283203,
-    "y": 968.9999656677246,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"d9a3c7f4.4c0498",
+    "type":"block",
+    "name":"block : atomic",
+    "xml":"<block atomic=\"true\">",
+    "atomic":"true",
+    "outputs":1,
+    "x":1047.8013610839844,
+    "y":483.90482902526855,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "e2427698.1dbd88"
+        "de9d0bad.f413c8"
       ]
     ]
   },
   {
-    "id": "e2427698.1dbd88",
-    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
-    "comments": "",
-    "x": 2088.2859687805176,
-    "y": 969.9999656677246,
-    "z": "41919c74.be6e64",
-    "wires": []
-  },
-  {
-    "id": "693ea026.96c16",
-    "type": "other",
-    "name": "evpn_irts",
-    "xml": "<outcome value='evpn_irts'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 1591.428596496582,
-    "y": 911.4285907745361,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"e5333ad2.88c6a8",
+    "type":"block",
+    "name":"block : atomic",
+    "xml":"<block atomic=\"true\">",
+    "atomic":"true",
+    "outputs":1,
+    "x":542.515625,
+    "y":608.7620029449463,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "490badab.b6f454"
+        "22ce90c5.e5b49",
+        "52bb2fe2.e66a7"
       ]
     ]
   },
   {
-    "id": "6ae3527c.951cac",
-    "type": "other",
-    "name": "evpn_erts",
-    "xml": "<outcome value='evpn_erts'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 1595.7144165039062,
-    "y": 964.2857065200806,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"22ce90c5.e5b49",
+    "type":"other",
+    "name":"DeactivateNetworkInstance",
+    "xml":"<outcome value='DeactivateNetworkInstance'>",
+    "comments":"",
+    "outputs":1,
+    "x":639.6585159301758,
+    "y":686.1905641555786,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "490badab.b6f454"
+        "53c38c61.a27c24"
       ]
     ]
   },
   {
-    "id": "1c7eef33.e38111",
-    "type": "other",
-    "name": "l3_vni",
-    "xml": "<outcome value='l3_vni'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 1585.7143440246582,
-    "y": 1017.1428127288818,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"52bb2fe2.e66a7",
+    "type":"other",
+    "name":"Other",
+    "xml":"<outcome value='Other'>",
+    "comments":"",
+    "outputs":1,
+    "x":593.6585159301758,
+    "y":736.1905641555786,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "490badab.b6f454"
+        "d9cf8575.0f9368"
       ]
     ]
   },
   {
-    "id": "cf8cfa72.307308",
-    "type": "block",
-    "name": "block : atomic",
-    "xml": "<block atomic=\"true\">",
-    "atomic": "true",
-    "outputs": 1,
-    "x": 572.8571472167969,
-    "y": 674.2857627868652,
-    "z": "41919c74.be6e64",
-    "wires": [
-      [
-        "7dfe5fb0.8201a",
-        "d03dcc77.2fc23"
-      ]
+    "id":"d9cf8575.0f9368",
+    "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=\"request-information.request-action is required to be CreateNetworkInstance for svc-action=assign\" />\n",
+    "comments":"",
+    "x":762.6585159301758,
+    "y":736.1905641555786,
+    "z":"bc976c53.f1a79",
+    "wires":[
+
     ]
   },
   {
-    "id": "7dfe5fb0.8201a",
-    "type": "other",
-    "name": "DeactivateNetworkInstance",
-    "xml": "<outcome value='DeactivateNetworkInstance'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 670.0000381469727,
-    "y": 751.7143239974976,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"53c38c61.a27c24",
+    "type":"block",
+    "name":"block : atomic",
+    "xml":"<block atomic=\"true\">",
+    "atomic":"true",
+    "outputs":1,
+    "x":864.6585159301758,
+    "y":675.1905641555786,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "5f1ca7c8.a0e358"
+        "a4cdd306.8c69b"
       ]
     ]
   },
   {
-    "id": "d03dcc77.2fc23",
-    "type": "other",
-    "name": "Other",
-    "xml": "<outcome value='Other'>",
-    "comments": "",
-    "outputs": 1,
-    "x": 624.0000381469727,
-    "y": 801.7143239974976,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"a4cdd306.8c69b",
+    "type":"for",
+    "name":"for each network-input-parameters",
+    "xml":"<for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\n",
+    "comments":"",
+    "outputs":1,
+    "x":686.6585159301758,
+    "y":830.1905641555786,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "4adf02c9.b520fc"
+        "864af6c.1a7ea08"
       ]
     ]
   },
   {
-    "id": "4adf02c9.b520fc",
-    "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=\"request-information.request-action is required to be CreateNetworkInstance for svc-action=assign\" />\n",
-    "comments": "",
-    "x": 793.0000381469727,
-    "y": 801.7143239974976,
-    "z": "41919c74.be6e64",
-    "wires": []
-  },
-  {
-    "id": "5f1ca7c8.a0e358",
-    "type": "block",
-    "name": "block : atomic",
-    "xml": "<block atomic=\"true\">",
-    "atomic": "true",
-    "outputs": 1,
-    "x": 895.0000381469727,
-    "y": 740.7143239974976,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"864af6c.1a7ea08",
+    "type":"block",
+    "name":"block",
+    "xml":"<block>\n",
+    "atomic":"false",
+    "comments":"",
+    "outputs":1,
+    "x":968.2299575805664,
+    "y":803.7619962692261,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "9aa1529a.655eb"
+        "d3a2495e.6d4c48"
       ]
     ]
   },
   {
-    "id": "9aa1529a.655eb",
-    "type": "for",
-    "name": "for each network-input-parameters",
-    "xml": "<for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 717.0000381469727,
-    "y": 895.7143239974976,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"d3a2495e.6d4c48",
+    "type":"switchNode",
+    "name":"switch id",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].id == 'id'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":984.0871505737305,
+    "y":859.6191473007202,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "9158dfcf.6ea72"
+        "bb342c57.b05fa"
       ]
     ]
   },
   {
-    "id": "9158dfcf.6ea72",
-    "type": "block",
-    "name": "block",
-    "xml": "<block>\n",
-    "atomic": "false",
-    "comments": "",
-    "outputs": 1,
-    "x": 998.5714797973633,
-    "y": 869.285756111145,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"bb342c57.b05fa",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":1165.0871505737305,
+    "y":858.6191473007202,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "ae5a6a7f.51a598"
+        "552390de.1e8c"
       ]
     ]
   },
   {
-    "id": "ae5a6a7f.51a598",
-    "type": "switchNode",
-    "name": "switch id",
-    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].id == 'id'`\">\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 1014.4286727905273,
-    "y": 925.1429071426392,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"552390de.1e8c",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1241.9442596435547,
+    "y":937.1905860900879,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "aea89c57.51576"
+        "6d879fa9.4e09f"
       ]
     ]
   },
   {
-    "id": "aea89c57.51576",
-    "type": "outcomeTrue",
-    "name": "true",
-    "xml": "<outcome value='true'>\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 1195.4286727905273,
-    "y": 924.1429071426392,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"6d879fa9.4e09f",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1150.9442024230957,
+    "y":1021.1905422210693,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "2c274bc2.d3d8b4"
+        "70a14092.36e2f"
       ]
     ]
   },
   {
-    "id": "2c274bc2.d3d8b4",
-    "type": "switchNode",
-    "name": "switch value",
-    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`\">\n",
-    "comments": "",
-    "outputs": 1,
-    "x": 1272.2857818603516,
-    "y": 1002.7143459320068,
-    "z": "41919c74.be6e64",
-    "wires": [
-      [
-        "d2cf8ac3.2d3078"
-      ]
+    "id":"70a14092.36e2f",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":1329.372917175293,
+    "y":1022.1905422210693,
+    "z":"bc976c53.f1a79",
+    "wires":[
+
     ]
   },
   {
-    "id": "d2cf8ac3.2d3078",
-    "type": "outcome",
-    "name": "NULL",
-    "xml": "<outcome value=''>",
-    "comments": "",
-    "outputs": 1,
-    "x": 1181.2857246398926,
-    "y": 1086.7143020629883,
-    "z": "41919c74.be6e64",
-    "wires": [
+    "id":"de9d0bad.f413c8",
+    "type":"call",
+    "name":"call validate-overlay-network-input-parameters",
+    "xml":"<call module='GENERIC-RESOURCE-API' rpc='validate-overlay-network-input-parameters' mode='sync' >\n",
+    "comments":"",
+    "outputs":1,
+    "x":1355.6666946411133,
+    "y":485.3333520889282,
+    "z":"bc976c53.f1a79",
+    "wires":[
       [
-        "3b17c4b7.c4e83c"
+
       ]
     ]
-  },
-  {
-    "id": "3b17c4b7.c4e83c",
-    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
-    "comments": "",
-    "x": 1359.7144393920898,
-    "y": 1087.7143020629883,
-    "z": "41919c74.be6e64",
-    "wires": []
   }
 ]
\ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_validate-overlay-network-input-parameters.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_validate-overlay-network-input-parameters.json
new file mode 100644 (file)
index 0000000..7ebf552
--- /dev/null
@@ -0,0 +1,1512 @@
+[
+  {
+    "id":"9fbc00bc.c5915",
+    "type":"for",
+    "name":"for each network-input-parameters",
+    "xml":"<for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\n\n",
+    "comments":"",
+    "outputs":1,
+    "x":692.6666564941406,
+    "y":154.83338117599487,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "a976418d.bf0e8"
+      ]
+    ]
+  },
+  {
+    "id":"bd4a5cad.24385",
+    "type":"block",
+    "name":"block",
+    "xml":"<block>\n",
+    "atomic":"false",
+    "comments":"",
+    "outputs":1,
+    "x":915.6666793823242,
+    "y":284.8333406448364,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "baeb18be.64e288",
+        "ebc31264.45c9c",
+        "6dd687c5.d25178",
+        "4aa7ce12.c2c5c",
+        "8d91f51f.010838",
+        "a564bd41.e58b8",
+        "dfd01ad4.2d6c58",
+        "9f877a62.41f918",
+        "a1c6afab.017d9",
+        "18c864fe.2d77ab",
+        "f8675cad.a9a8b",
+        "c93315a.3d905e8",
+        "5e4cd98f.ace3e8"
+      ]
+    ]
+  },
+  {
+    "id":"1f0e911e.e29fcf",
+    "type":"execute",
+    "name":"checkRequiredL2Parameters",
+    "xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='requiredParameters' >\n<parameter name=\"$validate.dci-connects.name\" value=\"\"/>\n<parameter name=\"$validate.dci-connects.site1_id\" value=\"\"/>\n<parameter name=\"$validate.dci-connects.site2_id\" value=\"\"/>\n<parameter name=\"$validate.dci-connects.site1_networkName\" value=\"\"/>\n<parameter name=\"$validate.dci-connects.site2_networkName\" value=\"\"/>\n<parameter name=\"$validate.dci-connects.site1_importRT1\" value=\"\"/>\n<parameter name=\"$validate.dci-connects.site2_importRT1\" value=\"\"/>\n<parameter name=\"$validate.dci-connects.site1_exportRT1\" value=\"\"/>\n<parameter name=\"$validate.dci-connects.site2_exportRT1\" value=\"\"/>\n<parameter name=\"$validate.dci-connects.site1_vni\" value=\"\"/>\n<parameter name=\"$validate.dci-connects.site2_vni\" value=\"\"/>\n<parameter name=\"$validate.dci-connects.tunnelType\" value=\"\"/>\n\n",
+    "comments":"",
+    "outputs":1,
+    "x":729.3334350585938,
+    "y":422.333349943161,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+
+      ]
+    ]
+  },
+  {
+    "id":"e94160.d414eea",
+    "type":"dgstart",
+    "name":"DGSTART",
+    "outputs":1,
+    "x":87.66666412353516,
+    "y":81.66666412353516,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "e29a088c.48c7f8"
+      ]
+    ]
+  },
+  {
+    "id":"e29a088c.48c7f8",
+    "type":"service-logic",
+    "name":"GENERIC-RESOURCE-API ${project.version}",
+    "module":"GENERIC-RESOURCE-API",
+    "version":"${project.version}",
+    "comments":"",
+    "xml":"<service-logic xmlns='http://www.openecomp.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
+    "outputs":1,
+    "x":332.95237731933594,
+    "y":80.90474319458008,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "5a029ef9.54fab"
+      ]
+    ]
+  },
+  {
+    "id":"5a029ef9.54fab",
+    "type":"method",
+    "name":"method validate-network-input-parameters",
+    "xml":"<method rpc='validate-overlay-network-input-parameters' mode='sync'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":290.5833511352539,
+    "y":155.91968154907227,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "9fbc00bc.c5915"
+      ]
+    ]
+  },
+  {
+    "id":"f2681b3f.65fb58",
+    "type":"execute",
+    "name":"checkAdditionalL3Parameters",
+    "xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='requiredParameters' >\n<parameter name=\"$network-topology-operation-input.network-request-input.network-input-parameters.site1_routerId\" value=\"\"/>\n<parameter name=\"$network-topology-operation-input.network-request-input.network-input-parameters.site2_routerId\" value=\"\"/>\n\n",
+    "comments":"",
+    "outputs":1,
+    "x":869.6666870117188,
+    "y":517.6666526794434,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+
+      ]
+    ]
+  },
+  {
+    "id":"23001689.a4dc8a",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$validate.dci-connects.tunnelType`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":468.6666717529297,
+    "y":580.666618347168,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "a5c0553.c8c39a8",
+        "a1b97140.efa03",
+        "49ee51a5.f039a"
+      ]
+    ]
+  },
+  {
+    "id":"a5c0553.c8c39a8",
+    "type":"outcome",
+    "name":"L3-DCI",
+    "xml":"<outcome value='L3-DCI'>",
+    "comments":"",
+    "outputs":1,
+    "x":649.0000076293945,
+    "y":516.6664600372314,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "f2681b3f.65fb58"
+      ]
+    ]
+  },
+  {
+    "id":"a1b97140.efa03",
+    "type":"outcome",
+    "name":"L2-DCI",
+    "xml":"<outcome value='L2-DCI'>",
+    "comments":"",
+    "outputs":1,
+    "x":646.9998931884766,
+    "y":589.6664056777954,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+
+      ]
+    ]
+  },
+  {
+    "id":"49ee51a5.f039a",
+    "type":"outcome",
+    "name":"other",
+    "xml":"<outcome value='other'>",
+    "comments":"",
+    "outputs":1,
+    "x":645.0000095367432,
+    "y":671.3330984115601,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "fba967af.e87968"
+      ]
+    ]
+  },
+  {
+    "id":"fba967af.e87968",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":858.4285316467285,
+    "y":671.3331251144409,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"baeb18be.64e288",
+    "type":"switchNode",
+    "name":"switch site1_id",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_id'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1202.6669235229492,
+    "y":170.83347511291504,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "2ad98395.e759ac"
+      ]
+    ]
+  },
+  {
+    "id":"ebc31264.45c9c",
+    "type":"switchNode",
+    "name":"switch site1_importRT1",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_importRT1'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1236.6191329956055,
+    "y":955.1194496154785,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "f0e05479.676558"
+      ]
+    ]
+  },
+  {
+    "id":"6dd687c5.d25178",
+    "type":"switchNode",
+    "name":"switch site1_exportRT1",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_exportRT1'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1234.619213104248,
+    "y":1197.119421005249,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "261269c8.cc3de6"
+      ]
+    ]
+  },
+  {
+    "id":"4aa7ce12.c2c5c",
+    "type":"switchNode",
+    "name":"switch site1_vni",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_vni'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1214.6191482543945,
+    "y":1446.1195335388184,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "8460bab.5cb4748"
+      ]
+    ]
+  },
+  {
+    "id":"2ad98395.e759ac",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":1417.6669235229492,
+    "y":169.83347511291504,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "4e98bbb2.6da394",
+        "7d1e7107.e98d7"
+      ]
+    ]
+  },
+  {
+    "id":"f0e05479.676558",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":1438.6191329956055,
+    "y":954.1194496154785,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "979386d3.b24028",
+        "26bcb080.9de85"
+      ]
+    ]
+  },
+  {
+    "id":"261269c8.cc3de6",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":1430.619213104248,
+    "y":1194.119421005249,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "7a713e79.f07e5",
+        "cc5ed7e8.5ea2b8"
+      ]
+    ]
+  },
+  {
+    "id":"8460bab.5cb4748",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":1413.6191444396973,
+    "y":1446.1195526123047,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "6a2f200.8e65de",
+        "4214073.a9e53f8"
+      ]
+    ]
+  },
+  {
+    "id":"8d91f51f.010838",
+    "type":"switchNode",
+    "name":"switch name",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1199.8334884643555,
+    "y":112.00010681152344,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "c02bf1f3.bbbf4"
+      ]
+    ]
+  },
+  {
+    "id":"c02bf1f3.bbbf4",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":1411.8334579467773,
+    "y":112.00010681152344,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "25b2958.f7a656a",
+        "9b6f27eb.9ced48"
+      ]
+    ]
+  },
+  {
+    "id":"25b2958.f7a656a",
+    "type":"set",
+    "name":"set name",
+    "xml":"<set>\n<parameter name='validate.dci-connects.name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments":"",
+    "x":1597.8335075378418,
+    "y":49.000104904174805,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"a564bd41.e58b8",
+    "type":"switchNode",
+    "name":"switch site1_networkName",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_networkName'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1239.9998664855957,
+    "y":450.00013637542725,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "fa867ada.bd0d38"
+      ]
+    ]
+  },
+  {
+    "id":"fa867ada.bd0d38",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":1437.9998664855957,
+    "y":450.00013637542725,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "431614dd.2bc43c",
+        "44ab7436.2e79fc"
+      ]
+    ]
+  },
+  {
+    "id":"9b6f27eb.9ced48",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$validate.dci-connects.name`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1608.3333549499512,
+    "y":108.66667079925537,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "a83b8d69.c7d06"
+      ]
+    ]
+  },
+  {
+    "id":"a83b8d69.c7d06",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1775.3334617614746,
+    "y":107.52376461029053,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "d8d1825d.06b8d"
+      ]
+    ]
+  },
+  {
+    "id":"d8d1825d.06b8d",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":1947.7621879577637,
+    "y":107.52376365661621,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"4e98bbb2.6da394",
+    "type":"set",
+    "name":"set site1_id",
+    "xml":"<set>\n<parameter name='validate.dci-connects.site1_id' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments":"",
+    "x":1599.6667251586914,
+    "y":173.66665601730347,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"7d1e7107.e98d7",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$validate.dci-connects.site1_id`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1604.6666259765625,
+    "y":239.66665649414062,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "fa0cb448.d0c078"
+      ]
+    ]
+  },
+  {
+    "id":"fa0cb448.d0c078",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1771.666732788086,
+    "y":238.52375030517578,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "41562682.d2bfb8"
+      ]
+    ]
+  },
+  {
+    "id":"41562682.d2bfb8",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":1944.095458984375,
+    "y":238.52374935150146,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"dfd01ad4.2d6c58",
+    "type":"switchNode",
+    "name":"switch site2_id",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_id'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1206.6666259765625,
+    "y":305.6666564941406,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "fcbf7abe.141ca8"
+      ]
+    ]
+  },
+  {
+    "id":"fcbf7abe.141ca8",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":1421.6666259765625,
+    "y":304.6666564941406,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "6b022b57.4ad064",
+        "8a3f337.89f0bd"
+      ]
+    ]
+  },
+  {
+    "id":"6b022b57.4ad064",
+    "type":"set",
+    "name":"set site2_id",
+    "xml":"<set>\n<parameter name='validate.dci-connects.site2_id' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments":"",
+    "x":1603.6664276123047,
+    "y":308.49983739852905,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"8a3f337.89f0bd",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$validate.dci-connects.site2_id`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1608.6663284301758,
+    "y":374.4998378753662,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "b06be411.9d3b28"
+      ]
+    ]
+  },
+  {
+    "id":"b06be411.9d3b28",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1775.6664352416992,
+    "y":373.35693168640137,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "64843880.ff2538"
+      ]
+    ]
+  },
+  {
+    "id":"64843880.ff2538",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":1948.0951614379883,
+    "y":373.35693073272705,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"431614dd.2bc43c",
+    "type":"set",
+    "name":"set site1_networkName",
+    "xml":"<set>\n<parameter name='validate.dci-connects.site1_networkName' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments":"",
+    "x":1641,
+    "y":450.6666564941406,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"44ab7436.2e79fc",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$validate.dci-connects.site1_networkName`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1605.999900817871,
+    "y":516.6666569709778,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "d2b45562.0c7fc8"
+      ]
+    ]
+  },
+  {
+    "id":"d2b45562.0c7fc8",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1773.0000076293945,
+    "y":515.5237507820129,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "61b1e1a0.11314"
+      ]
+    ]
+  },
+  {
+    "id":"61b1e1a0.11314",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":1945.4287338256836,
+    "y":515.5237498283386,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"9f877a62.41f918",
+    "type":"switchNode",
+    "name":"switch site2_networkName",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_networkName'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1240,
+    "y":578.6666259765625,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "f79dec8d.61c58"
+      ]
+    ]
+  },
+  {
+    "id":"f79dec8d.61c58",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":1438,
+    "y":578.6666259765625,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "1658307e.f7c1e",
+        "d3a1f175.6b3b3"
+      ]
+    ]
+  },
+  {
+    "id":"1658307e.f7c1e",
+    "type":"set",
+    "name":"set site1_networkName",
+    "xml":"<set>\n<parameter name='validate.dci-connects.site2_networkName' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments":"",
+    "x":1641.0001335144043,
+    "y":579.3331460952759,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"d3a1f175.6b3b3",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$validate.dci-connects.site2_networkName`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1606.0000343322754,
+    "y":645.333146572113,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "c14e96c.8f5af68"
+      ]
+    ]
+  },
+  {
+    "id":"c14e96c.8f5af68",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1773.0001411437988,
+    "y":644.1902403831482,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "d3b1b6c2.9459b8"
+      ]
+    ]
+  },
+  {
+    "id":"d3b1b6c2.9459b8",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":1945.428867340088,
+    "y":644.1902394294739,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"a1c6afab.017d9",
+    "type":"switchNode",
+    "name":"switch site1_routerId",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_routerId'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1225.3333282470703,
+    "y":710.83371925354,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "a9bc0844.f2eaf8"
+      ]
+    ]
+  },
+  {
+    "id":"a9bc0844.f2eaf8",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":1430.3333282470703,
+    "y":709.83371925354,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "5bbbca15.5f16f4",
+        "51615f09.7cd5"
+      ]
+    ]
+  },
+  {
+    "id":"5bbbca15.5f16f4",
+    "type":"set",
+    "name":"set site1_routerId",
+    "xml":"<set>\n<parameter name='validate.dci-connects.site1_routerId' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments":"",
+    "x":1618.333251953125,
+    "y":711,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"51615f09.7cd5",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$validate.dci-connects.site1_routerId`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1603.333152770996,
+    "y":777.0000004768372,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "5c8e20c7.731dc"
+      ]
+    ]
+  },
+  {
+    "id":"5c8e20c7.731dc",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1770.3332595825195,
+    "y":775.8570942878723,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "dc036fc4.b3148"
+      ]
+    ]
+  },
+  {
+    "id":"dc036fc4.b3148",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":1942.7619857788086,
+    "y":775.857093334198,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"ca9364d2.2f4418",
+    "type":"switchNode",
+    "name":"switch site2_routerId",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_routerId'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1231.333251953125,
+    "y":833,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "3ff6c495.85cb0c"
+      ]
+    ]
+  },
+  {
+    "id":"3ff6c495.85cb0c",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":1436.333251953125,
+    "y":832,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "22ffcf96.237c7",
+        "5abc130e.c8a7ec"
+      ]
+    ]
+  },
+  {
+    "id":"22ffcf96.237c7",
+    "type":"set",
+    "name":"set site2_routerId",
+    "xml":"<set>\n<parameter name='validate.dci-connects.site2_routerId' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments":"",
+    "x":1624.3331756591797,
+    "y":833.16628074646,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"5abc130e.c8a7ec",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$validate.dci-connects.site2_routerId`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1609.3330764770508,
+    "y":899.1662812232971,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "11b34474.2a006c"
+      ]
+    ]
+  },
+  {
+    "id":"11b34474.2a006c",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1776.3331832885742,
+    "y":898.0233750343323,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "3492baf9.c74166"
+      ]
+    ]
+  },
+  {
+    "id":"3492baf9.c74166",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":1948.7619094848633,
+    "y":898.023374080658,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"979386d3.b24028",
+    "type":"set",
+    "name":"set site2_routerId",
+    "xml":"<set>\n<parameter name='validate.dci-connects.site1_importRT1' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments":"",
+    "x":1622.333251953125,
+    "y":955,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"26bcb080.9de85",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$validate.dci-connects.site1_importRT1`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1607.333152770996,
+    "y":1021.0000004768372,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "ef415eca.43e4c"
+      ]
+    ]
+  },
+  {
+    "id":"ef415eca.43e4c",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1774.3332595825195,
+    "y":1019.8570942878723,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "86ecacf6.62cbf"
+      ]
+    ]
+  },
+  {
+    "id":"86ecacf6.62cbf",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":1946.7619857788086,
+    "y":1019.857093334198,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"18c864fe.2d77ab",
+    "type":"switchNode",
+    "name":"switch site2_importRT1",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_importRT1'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1234,
+    "y":1073.333251953125,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "ed82852f.fe5c18"
+      ]
+    ]
+  },
+  {
+    "id":"ed82852f.fe5c18",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":1436,
+    "y":1072.333251953125,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "d6046005.c3e8f",
+        "f99cbbe6.ae2498"
+      ]
+    ]
+  },
+  {
+    "id":"d6046005.c3e8f",
+    "type":"set",
+    "name":"set site2_importRT1",
+    "xml":"<set>\n<parameter name='validate.dci-connects.site2_importRT1' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments":"",
+    "x":1619.7141189575195,
+    "y":1073.2138023376465,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"f99cbbe6.ae2498",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$validate.dci-connects.site2_importRT1`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1604.7140197753906,
+    "y":1139.2138028144836,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "8c236b10.143bc8"
+      ]
+    ]
+  },
+  {
+    "id":"8c236b10.143bc8",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1771.714126586914,
+    "y":1138.0708966255188,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "bea6a75d.110d08"
+      ]
+    ]
+  },
+  {
+    "id":"bea6a75d.110d08",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":1944.1428527832031,
+    "y":1138.0708956718445,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"7a713e79.f07e5",
+    "type":"set",
+    "name":"set site1_exportRT1",
+    "xml":"<set>\n<parameter name='validate.dci-connects.site1_exportRT1' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments":"",
+    "x":1628,
+    "y":1194.6666259765625,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"cc5ed7e8.5ea2b8",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$validate.dci-connects.site1_exportRT1`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1612.999900817871,
+    "y":1260.6666264533997,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "86630450.14c6c8"
+      ]
+    ]
+  },
+  {
+    "id":"86630450.14c6c8",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1780.0000076293945,
+    "y":1259.5237202644348,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "468368dd.119d68"
+      ]
+    ]
+  },
+  {
+    "id":"468368dd.119d68",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":1952.4287338256836,
+    "y":1259.5237193107605,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"f8675cad.a9a8b",
+    "type":"switchNode",
+    "name":"switch site1_exportRT2",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_exportRT2'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1234,
+    "y":1322.6666259765625,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "7c5b768c.6c5ba8"
+      ]
+    ]
+  },
+  {
+    "id":"7c5b768c.6c5ba8",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":1430,
+    "y":1319.6666259765625,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "632409be.2fe268",
+        "ac332471.3b3248"
+      ]
+    ]
+  },
+  {
+    "id":"632409be.2fe268",
+    "type":"set",
+    "name":"set site1_exportRT2",
+    "xml":"<set>\n<parameter name='validate.dci-connects.site1_exportRT2' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments":"",
+    "x":1627.380786895752,
+    "y":1320.213830947876,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"ac332471.3b3248",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$validate.dci-connects.site1_exportRT2`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1612.380687713623,
+    "y":1386.2138314247131,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "aa9c2541.4a4bd8"
+      ]
+    ]
+  },
+  {
+    "id":"aa9c2541.4a4bd8",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1779.3807945251465,
+    "y":1385.0709252357483,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "b786e793.f56c18"
+      ]
+    ]
+  },
+  {
+    "id":"b786e793.f56c18",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":1951.8095207214355,
+    "y":1385.070924282074,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"6a2f200.8e65de",
+    "type":"set",
+    "name":"set site1_vni",
+    "xml":"<set>\n<parameter name='validate.dci-connects.site1_vni' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments":"",
+    "x":1621.333251953125,
+    "y":1451,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"4214073.a9e53f8",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$validate.dci-connects.site1_vni`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1606.333152770996,
+    "y":1517.0000004768372,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "83c7c713.88af68"
+      ]
+    ]
+  },
+  {
+    "id":"83c7c713.88af68",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1773.3332595825195,
+    "y":1515.8570942878723,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "a4f203d2.7ca8"
+      ]
+    ]
+  },
+  {
+    "id":"a4f203d2.7ca8",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":1945.7619857788086,
+    "y":1515.857093334198,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"c93315a.3d905e8",
+    "type":"switchNode",
+    "name":"switch site2_vni",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_vni'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1219.0001831054688,
+    "y":1579.0001740455627,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "ef47961a.8fd608"
+      ]
+    ]
+  },
+  {
+    "id":"ef47961a.8fd608",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":1418.0001792907715,
+    "y":1579.000193119049,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "7976c64e.576738",
+        "835fae91.9704a"
+      ]
+    ]
+  },
+  {
+    "id":"7976c64e.576738",
+    "type":"set",
+    "name":"set site2_vni",
+    "xml":"<set>\n<parameter name='validate.dci-connects.site2_vni' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments":"",
+    "x":1625.7142868041992,
+    "y":1583.8806405067444,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"835fae91.9704a",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$validate.dci-connects.site2_vni`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1610.7141876220703,
+    "y":1649.8806409835815,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "88d0a6fa.f7ddb8"
+      ]
+    ]
+  },
+  {
+    "id":"88d0a6fa.f7ddb8",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1777.7142944335938,
+    "y":1648.7377347946167,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "4e2d2d8e.6e8494"
+      ]
+    ]
+  },
+  {
+    "id":"4e2d2d8e.6e8494",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":1950.1430206298828,
+    "y":1648.7377338409424,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"5e4cd98f.ace3e8",
+    "type":"switchNode",
+    "name":"switch tunnelType",
+    "xml":"<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'tunnelType'`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1227.4997482299805,
+    "y":1704.5002737045288,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "60d09a1d.8eacd4"
+      ]
+    ]
+  },
+  {
+    "id":"60d09a1d.8eacd4",
+    "type":"outcomeTrue",
+    "name":"true",
+    "xml":"<outcome value='true'>\n",
+    "comments":"",
+    "outputs":1,
+    "x":1433.4997482299805,
+    "y":1704.5002737045288,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "39b6c0a.d67614",
+        "8a998b80.e315c8"
+      ]
+    ]
+  },
+  {
+    "id":"39b6c0a.d67614",
+    "type":"set",
+    "name":"set tunnelType",
+    "xml":"<set>\n<parameter name='prop.dci-connects.tunnelType' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments":"",
+    "x":1620.499771118164,
+    "y":1705.5004272460938,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"8a998b80.e315c8",
+    "type":"switchNode",
+    "name":"switch value",
+    "xml":"<switch test=\"`$validate.dci-connects.tunnelType`\">\n",
+    "comments":"",
+    "outputs":1,
+    "x":1613,
+    "y":1775,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "bdc574b6.8b53a8"
+      ]
+    ]
+  },
+  {
+    "id":"bdc574b6.8b53a8",
+    "type":"outcome",
+    "name":"NULL",
+    "xml":"<outcome value=''>",
+    "comments":"",
+    "outputs":1,
+    "x":1780.0001068115234,
+    "y":1773.8570938110352,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "97d6982d.d730f8"
+      ]
+    ]
+  },
+  {
+    "id":"97d6982d.d730f8",
+    "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=\"network-request-input.network-input-parameters.name is a required input\" />\n",
+    "comments":"",
+    "x":1952.4288330078125,
+    "y":1773.8570928573608,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"f21b1a5d.f4c3d8",
+    "type":"comment",
+    "name":"TODO: optimize the activate by using parameter assignment here",
+    "info":"",
+    "comments":"",
+    "x":1065.6666870117188,
+    "y":45.666683197021484,
+    "z":"47ab735d.a7360c",
+    "wires":[
+
+    ]
+  },
+  {
+    "id":"a976418d.bf0e8",
+    "type":"block",
+    "name":"block validate",
+    "xml":"<block atomic=\"true\">\n",
+    "atomic":"false",
+    "comments":"",
+    "outputs":1,
+    "x":540.6666793823242,
+    "y":287.666672706604,
+    "z":"47ab735d.a7360c",
+    "wires":[
+      [
+        "bd4a5cad.24385",
+        "1f0e911e.e29fcf",
+        "23001689.a4dc8a"
+      ]
+    ]
+  }
+]
\ No newline at end of file
index 620fe9c..56325af 100644 (file)
-<service-logic\r
-               xmlns='http://www.openecomp.org/sdnc/svclogic'\r
-               xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>\r
-       <method rpc='validate-network-input-parameters' mode='sync'>\r
+<?xml version="1.0" encoding="UTF-8"?>\r
+<service-logic xmlns="http://www.openecomp.org/sdnc/svclogic" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd" module="GENERIC-RESOURCE-API" version="${project.version}">\r
+       <method rpc="validate-network-input-parameters" mode="sync">\r
                <block atomic="true">\r
-                       <switch test='`$network-topology-operation-input.sdnc-request-header.svc-action`'>\r
-                               <outcome value=''>\r
-                                       <return status='failure'>\r
-                                               <parameter name='ack-final' value='Y'/>\r
+                       <switch test="`$network-topology-operation-input.sdnc-request-header.svc-action`">\r
+                               <outcome value="">\r
+                                       <return status="failure">\r
+                                               <parameter name="ack-final" value="Y" />\r
                                                <parameter name="error-code" value="500" />\r
                                                <parameter name="error-message" value="sdnc-request-header.svc-request-id is a required input" />\r
                                        </return>\r
                                </outcome>\r
                        </switch>\r
-                       <switch test='`$service-topology-operation-input.sdnc-request-header.svc-action`'>\r
-                               <outcome value='assign'>\r
+                       <switch test="`$service-topology-operation-input.sdnc-request-header.svc-action`">\r
+                               <outcome value="assign">\r
                                        <block atomic="true">\r
-                                               <switch test='`$network-topology-operation-input.request-information.request-action`'>\r
-                                                       <outcome value='CreateNetworkInstance'>\r
+                                               <switch test="`$network-topology-operation-input.request-information.request-action`">\r
+                                                       <outcome value="CreateNetworkInstance">\r
                                                                <block atomic="true">\r
                                                                        <for index="i" start="0" end="`$network-topology-information.network-request-input.network-input-parameters.param_length`">\r
                                                                                <block>\r
                                                                                        <set>\r
-                                                                                               <parameter name='tmp.name' value='' />\r
-                                                                                               <parameter name='tmp.value' value='' />\r
+                                                                                               <parameter name="tmp.name" value="" />\r
+                                                                                               <parameter name="tmp.value" value="" />\r
                                                                                        </set>\r
                                                                                        <set>\r
-                                                                                               <parameter name='tmp.name' value="'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].name'"/>\r
-                                                                                               <parameter name='tmp.value' value="'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].value'"/>\r
+                                                                                               <parameter name="tmp.name" value="'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].name'" />\r
+                                                                                               <parameter name="tmp.value" value="'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].value'" />\r
                                                                                        </set>\r
                                                                                        <switch test="'$tmp.name'">\r
-                                                                                               <outcome value='name'>\r
+                                                                                               <outcome value="name">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value='service-type'>\r
+                                                                                               <outcome value="service-type">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value='site1-name'>\r
+                                                                                               <outcome value="site1-name">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value='site2-name'>\r
+                                                                                               <outcome value="site2-name">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value='sna1_name'>\r
+                                                                                               <outcome value="sna1_name">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value='sna2_name'>\r
+                                                                                               <outcome value="sna2_name">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value='pe1_id'>\r
+                                                                                               <outcome value="pe1_id">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value='pe2_id'>\r
+                                                                                               <outcome value="pe2_id">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value='ac1-id'>\r
+                                                                                               <outcome value="ac1-id">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value='ac2-id'>\r
+                                                                                               <outcome value="ac2-id">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value='ac1-ip'>\r
+                                                                                               <outcome value="ac1-ip">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value='ac2-ip'>\r
+                                                                                               <outcome value="ac2-ip">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value='ac1_peer_ip'>\r
+                                                                                               <outcome value="ac1_peer_ip">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value='ac2_peer_ip'>\r
+                                                                                               <outcome value="ac2_peer_ip">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value='ac1_svlan'>\r
+                                                                                               <outcome value="ac1_svlan">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value='ac2_svlan'>\r
+                                                                                               <outcome value="ac2_svlan">\r
                                                                                                        <switch test="`$tmp.value`">\r
-                                                                                                               <outcome value=''>\r
-                                                                                                                       <return status='failure'>\r
-                                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                                               <outcome value="">\r
+                                                                                                                       <return status="failure">\r
+                                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                                <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                        </return>\r
                                                                                                                </outcome>\r
                                                                                                        </switch>\r
                                                                                                </outcome>\r
-                                                                                               <outcome value=''>\r
-                                                                                                       <return status='failure'>\r
-                                                                                                               <parameter name='ack-final' value='Y'/>\r
+                                                                                               <outcome value="">\r
+                                                                                                       <return status="failure">\r
+                                                                                                               <parameter name="ack-final" value="Y" />\r
                                                                                                                <parameter name="error-code" value="500" />\r
                                                                                                                <parameter name="error-message" value="`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" />\r
                                                                                                        </return>\r
                                                                        </for>\r
                                                                </block>\r
                                                        </outcome>\r
-                                                       <outcome value='Other'>\r
-                                                               <return status='failure'>\r
-                                                                       <parameter name='ack-final' value='Y'/>\r
+                                                       <outcome value="Other">\r
+                                                               <return status="failure">\r
+                                                                       <parameter name="ack-final" value="Y" />\r
                                                                        <parameter name="error-code" value="500" />\r
                                                                        <parameter name="error-message" value="request-information.request-action is required to be CreateNetworkInstance for svc-action=assign" />\r
                                                                </return>\r
                                                </switch>\r
                                        </block>\r
                                </outcome>\r
-                               <outcome value='activate'>\r
-                                       <switch test='`$network-topology-operation-input.request-information.request-action`'>\r
-                                               <outcome value='ActivateNetworkInstance'>\r
+                               <outcome value="activate">\r
+                                       <switch test="`$network-topology-operation-input.request-information.request-action`">\r
+                                               <outcome value="ActivateNetworkInstance">\r
                                                        <block atomic="true">\r
-                                                               <for index="i" start="0" end="`$network-topology-information.network-request-input.network-input-parameters.param_length`">\r
-                                                                       <block>\r
-                                                                               <set>\r
-                                                                                       <parameter name='tmp.name' value='' />\r
-                                                                                       <parameter name='tmp.value' value='' />\r
-                                                                               </set>\r
-                                                                               <set>\r
-                                                                                       <parameter name='tmp.name' value="'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].name'"/>\r
-                                                                                       <parameter name='tmp.value' value="'$network-topology-operation-input.network-request-input.network-input-parameters.param[i].value'"/>\r
-                                                                               </set>\r
-                                                                               <switch test="'$tmp.name'">\r
-                                                                                       <outcome value='name'>\r
-                                                                                               <switch test="`$tmp.value`">\r
-                                                                                                       <outcome value=''>\r
-                                                                                                               <return status='failure'>\r
-                                                                                                                       <parameter name='ack-final' value='Y'/>\r
-                                                                                                                       <parameter name="error-code" value="500" />\r
-                                                                                                                       <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                               </return>\r
-                                                                                                       </outcome>\r
-                                                                                               </switch>\r
-                                                                                       </outcome>\r
-                                                                                       <outcome value='description'>\r
-                                                                                               <switch test="`$tmp.value`">\r
-                                                                                                       <outcome value=''>\r
-                                                                                                               <return status='failure'>\r
-                                                                                                                       <parameter name='ack-final' value='Y'/>\r
-                                                                                                                       <parameter name="error-code" value="500" />\r
-                                                                                                                       <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                               </return>\r
-                                                                                                       </outcome>\r
-                                                                                               </switch>\r
-                                                                                       </outcome>\r
-                                                                                       <outcome value='router_id'>\r
-                                                                                               <switch test="`$tmp.value`">\r
-                                                                                                       <outcome value=''>\r
-                                                                                                               <return status='failure'>\r
-                                                                                                                       <parameter name='ack-final' value='Y'/>\r
-                                                                                                                       <parameter name="error-code" value="500" />\r
-                                                                                                                       <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                               </return>\r
-                                                                                                       </outcome>\r
-                                                                                               </switch>\r
-                                                                                       </outcome>\r
-                                                                                       <outcome value='local_networks'>\r
-                                                                                               <switch test="`$tmp.value`">\r
-                                                                                                       <outcome value=''>\r
-                                                                                                               <return status='failure'>\r
-                                                                                                                       <parameter name='ack-final' value='Y'/>\r
-                                                                                                                       <parameter name="error-code" value="500" />\r
-                                                                                                                       <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                               </return>\r
-                                                                                                       </outcome>\r
-                                                                                               </switch>\r
-                                                                                       </outcome>\r
-                                                                                       <outcome value='evpn_irts'>\r
-                                                                                               <switch test="`$tmp.value`">\r
-                                                                                                       <outcome value=''>\r
-                                                                                                               <return status='failure'>\r
-                                                                                                                       <parameter name='ack-final' value='Y'/>\r
-                                                                                                                       <parameter name="error-code" value="500" />\r
-                                                                                                                       <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                               </return>\r
-                                                                                                       </outcome>\r
-                                                                                               </switch>\r
-                                                                                       </outcome>\r
-                                                                                       <outcome value='evpn_erts'>\r
-                                                                                               <switch test="`$tmp.value`">\r
-                                                                                                       <outcome value=''>\r
-                                                                                                               <return status='failure'>\r
-                                                                                                                       <parameter name='ack-final' value='Y'/>\r
-                                                                                                                       <parameter name="error-code" value="500" />\r
-                                                                                                                       <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                               </return>\r
-                                                                                                       </outcome>\r
-                                                                                               </switch>\r
-                                                                                       </outcome>\r
-                                                                                       <outcome value='l3_vni'>\r
-                                                                                               <switch test="`$tmp.value`">\r
-                                                                                                       <outcome value=''>\r
-                                                                                                               <return status='failure'>\r
-                                                                                                                       <parameter name='ack-final' value='Y'/>\r
-                                                                                                                       <parameter name="error-code" value="500" />\r
-                                                                                                                       <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
-                                                                                                               </return>\r
-                                                                                                       </outcome>\r
-                                                                                               </switch>\r
-                                                                                       </outcome>\r
-                                                                               </switch>\r
-                                                                       </block>\r
-                                                               </for>\r
+                                                               <call module="GENERIC-RESOURCE-API" rpc="validate-overlay-network-input-parameters" mode="sync" />\r
                                                        </block>\r
                                                </outcome>\r
-                                               <outcome value='Other'>\r
-                                                       <return status='failure'>\r
-                                                               <parameter name='ack-final' value='Y'/>\r
+                                               <outcome value="Other">\r
+                                                       <return status="failure">\r
+                                                               <parameter name="ack-final" value="Y" />\r
                                                                <parameter name="error-code" value="500" />\r
                                                                <parameter name="error-message" value="request-information.request-action is required to be ActivateNetworkInstance for svc-action=activate" />\r
                                                        </return>\r
                                                </outcome>\r
                                        </switch>\r
                                </outcome>\r
-                               <outcome value='deactivate'>\r
+                               <outcome value="deactivate">\r
                                        <block atomic="true">\r
-                                               <outcome value='DeactivateNetworkInstance'>\r
+                                               <outcome value="DeactivateNetworkInstance">\r
                                                        <block atomic="true">\r
-                                                               <for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\r
+                                                               <for index="idx" start="0" end="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`">\r
                                                                        <block>\r
                                                                                <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].id == 'id'`">\r
-                                                                                       <outcome value='true'>\r
+                                                                                       <outcome value="true">\r
                                                                                                <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`">\r
-                                                                                                       <outcome value=''>\r
-                                                                                                               <return status='failure'>\r
-                                                                                                                       <parameter name='ack-final' value='Y'/>\r
+                                                                                                       <outcome value="">\r
+                                                                                                               <return status="failure">\r
+                                                                                                                       <parameter name="ack-final" value="Y" />\r
                                                                                                                        <parameter name="error-code" value="500" />\r
                                                                                                                        <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                </return>\r
                                                                </for>\r
                                                        </block>\r
                                                </outcome>\r
-                                               <outcome value='Other'>\r
-                                                       <return status='failure'>\r
-                                                               <parameter name='ack-final' value='Y'/>\r
+                                               <outcome value="Other">\r
+                                                       <return status="failure">\r
+                                                               <parameter name="ack-final" value="Y" />\r
                                                                <parameter name="error-code" value="500" />\r
                                                                <parameter name="error-message" value="request-information.request-action is required to be CreateNetworkInstance for svc-action=assign" />\r
                                                        </return>\r
                                                </outcome>\r
                                        </block>\r
                                </outcome>\r
-                               <outcome value='Other'>\r
-                                       <return status='failure'>\r
-                                               <parameter name='ack-final' value='Y'/>\r
+                               <outcome value="Other">\r
+                                       <return status="failure">\r
+                                               <parameter name="ack-final" value="Y" />\r
                                                <parameter name="error-code" value="500" />\r
                                                <parameter name="error-message" value="`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" />\r
                                        </return>\r
                                </outcome>\r
-                               <outcome value='delete'>\r
+                               <outcome value="delete">\r
                                        <block atomic="true">\r
-                                               <outcome value='DeleteNetworkInstance'>\r
+                                               <outcome value="DeleteNetworkInstance">\r
                                                        <block atomic="true">\r
-                                                               <for index='idx' start='0' end='`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`' >\r
+                                                               <for index="idx" start="0" end="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`">\r
                                                                        <block>\r
                                                                                <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`">\r
-                                                                                       <outcome value='true'>\r
+                                                                                       <outcome value="true">\r
                                                                                                <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`">\r
-                                                                                                       <outcome value=''>\r
-                                                                                                               <return status='failure'>\r
-                                                                                                                       <parameter name='ack-final' value='Y'/>\r
+                                                                                                       <outcome value="">\r
+                                                                                                               <return status="failure">\r
+                                                                                                                       <parameter name="ack-final" value="Y" />\r
                                                                                                                        <parameter name="error-code" value="500" />\r
                                                                                                                        <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
                                                                                                                </return>\r
                                                                </for>\r
                                                        </block>\r
                                                </outcome>\r
-                                               <outcome value='Other'>\r
-                                                       <return status='failure'>\r
-                                                               <parameter name='ack-final' value='Y'/>\r
+                                               <outcome value="Other">\r
+                                                       <return status="failure">\r
+                                                               <parameter name="ack-final" value="Y" />\r
                                                                <parameter name="error-code" value="500" />\r
                                                                <parameter name="error-message" value="request-information.request-action is required to be CreateNetworkInstance for svc-action=assign" />\r
                                                        </return>\r
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_validate-overlay-network-input-parameters.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_validate-overlay-network-input-parameters.xml
new file mode 100644 (file)
index 0000000..3867151
--- /dev/null
@@ -0,0 +1,249 @@
+<?xml version="1.0" encoding="UTF-8"?>\r
+<service-logic xmlns="http://www.openecomp.org/sdnc/svclogic" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd" module="GENERIC-RESOURCE-API" version="${project.version}">\r
+       <method rpc="validate-overlay-network-input-parameters" mode="sync">\r
+               <for index="idx" start="0" end="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`">\r
+                       <block atomic="true">\r
+                               <block>\r
+                                       <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'name'`">\r
+                                               <outcome value="true">\r
+                                                       <set>\r
+                                                               <parameter name="validate.dci-connects.name" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                                       </set>\r
+                                                       <switch test="`$validate.dci-connects.name`">\r
+                                                               <outcome value="">\r
+                                                                       <return status="failure">\r
+                                                                               <parameter name="ack-final" value="Y" />\r
+                                                                               <parameter name="error-code" value="500" />\r
+                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                                                       </return>\r
+                                                               </outcome>\r
+                                                       </switch>\r
+                                               </outcome>\r
+                                       </switch>\r
+                                       <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_id'`">\r
+                                               <outcome value="true">\r
+                                                       <set>\r
+                                                               <parameter name="validate.dci-connects.site1_id" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                                       </set>\r
+                                                       <switch test="`$validate.dci-connects.site1_id`">\r
+                                                               <outcome value="">\r
+                                                                       <return status="failure">\r
+                                                                               <parameter name="ack-final" value="Y" />\r
+                                                                               <parameter name="error-code" value="500" />\r
+                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                                                       </return>\r
+                                                               </outcome>\r
+                                                       </switch>\r
+                                               </outcome>\r
+                                       </switch>\r
+                                       <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_id'`">\r
+                                               <outcome value="true">\r
+                                                       <set>\r
+                                                               <parameter name="validate.dci-connects.site2_id" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                                       </set>\r
+                                                       <switch test="`$validate.dci-connects.site2_id`">\r
+                                                               <outcome value="">\r
+                                                                       <return status="failure">\r
+                                                                               <parameter name="ack-final" value="Y" />\r
+                                                                               <parameter name="error-code" value="500" />\r
+                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                                                       </return>\r
+                                                               </outcome>\r
+                                                       </switch>\r
+                                               </outcome>\r
+                                       </switch>\r
+                                       <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_networkName'`">\r
+                                               <outcome value="true">\r
+                                                       <set>\r
+                                                               <parameter name="validate.dci-connects.site1_networkName" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                                       </set>\r
+                                                       <switch test="`$validate.dci-connects.site1_networkName`">\r
+                                                               <outcome value="">\r
+                                                                       <return status="failure">\r
+                                                                               <parameter name="ack-final" value="Y" />\r
+                                                                               <parameter name="error-code" value="500" />\r
+                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                                                       </return>\r
+                                                               </outcome>\r
+                                                       </switch>\r
+                                               </outcome>\r
+                                       </switch>\r
+                                       <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_networkName'`">\r
+                                               <outcome value="true">\r
+                                                       <set>\r
+                                                               <parameter name="validate.dci-connects.site2_networkName" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                                       </set>\r
+                                                       <switch test="`$validate.dci-connects.site2_networkName`">\r
+                                                               <outcome value="">\r
+                                                                       <return status="failure">\r
+                                                                               <parameter name="ack-final" value="Y" />\r
+                                                                               <parameter name="error-code" value="500" />\r
+                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                                                       </return>\r
+                                                               </outcome>\r
+                                                       </switch>\r
+                                               </outcome>\r
+                                       </switch>\r
+                                       <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_routerId'`">\r
+                                               <outcome value="true">\r
+                                                       <set>\r
+                                                               <parameter name="validate.dci-connects.site1_routerId" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                                       </set>\r
+                                                       <switch test="`$validate.dci-connects.site1_routerId`">\r
+                                                               <outcome value="">\r
+                                                                       <return status="failure">\r
+                                                                               <parameter name="ack-final" value="Y" />\r
+                                                                               <parameter name="error-code" value="500" />\r
+                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                                                       </return>\r
+                                                               </outcome>\r
+                                                       </switch>\r
+                                               </outcome>\r
+                                       </switch>\r
+                                       <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_importRT1'`">\r
+                                               <outcome value="true">\r
+                                                       <set>\r
+                                                               <parameter name="validate.dci-connects.site1_importRT1" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                                       </set>\r
+                                                       <switch test="`$validate.dci-connects.site1_importRT1`">\r
+                                                               <outcome value="">\r
+                                                                       <return status="failure">\r
+                                                                               <parameter name="ack-final" value="Y" />\r
+                                                                               <parameter name="error-code" value="500" />\r
+                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                                                       </return>\r
+                                                               </outcome>\r
+                                                       </switch>\r
+                                               </outcome>\r
+                                       </switch>\r
+                                       <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_importRT1'`">\r
+                                               <outcome value="true">\r
+                                                       <set>\r
+                                                               <parameter name="validate.dci-connects.site2_importRT1" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                                       </set>\r
+                                                       <switch test="`$validate.dci-connects.site2_importRT1`">\r
+                                                               <outcome value="">\r
+                                                                       <return status="failure">\r
+                                                                               <parameter name="ack-final" value="Y" />\r
+                                                                               <parameter name="error-code" value="500" />\r
+                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                                                       </return>\r
+                                                               </outcome>\r
+                                                       </switch>\r
+                                               </outcome>\r
+                                       </switch>\r
+                                       <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_exportRT1'`">\r
+                                               <outcome value="true">\r
+                                                       <set>\r
+                                                               <parameter name="validate.dci-connects.site1_exportRT1" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                                       </set>\r
+                                                       <switch test="`$validate.dci-connects.site1_exportRT1`">\r
+                                                               <outcome value="">\r
+                                                                       <return status="failure">\r
+                                                                               <parameter name="ack-final" value="Y" />\r
+                                                                               <parameter name="error-code" value="500" />\r
+                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                                                       </return>\r
+                                                               </outcome>\r
+                                                       </switch>\r
+                                               </outcome>\r
+                                       </switch>\r
+                                       <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_exportRT2'`">\r
+                                               <outcome value="true">\r
+                                                       <set>\r
+                                                               <parameter name="validate.dci-connects.site1_exportRT2" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                                       </set>\r
+                                                       <switch test="`$validate.dci-connects.site1_exportRT2`">\r
+                                                               <outcome value="">\r
+                                                                       <return status="failure">\r
+                                                                               <parameter name="ack-final" value="Y" />\r
+                                                                               <parameter name="error-code" value="500" />\r
+                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                                                       </return>\r
+                                                               </outcome>\r
+                                                       </switch>\r
+                                               </outcome>\r
+                                       </switch>\r
+                                       <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_vni'`">\r
+                                               <outcome value="true">\r
+                                                       <set>\r
+                                                               <parameter name="validate.dci-connects.site1_vni" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                                       </set>\r
+                                                       <switch test="`$validate.dci-connects.site1_vni`">\r
+                                                               <outcome value="">\r
+                                                                       <return status="failure">\r
+                                                                               <parameter name="ack-final" value="Y" />\r
+                                                                               <parameter name="error-code" value="500" />\r
+                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                                                       </return>\r
+                                                               </outcome>\r
+                                                       </switch>\r
+                                               </outcome>\r
+                                       </switch>\r
+                                       <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site2_vni'`">\r
+                                               <outcome value="true">\r
+                                                       <set>\r
+                                                               <parameter name="validate.dci-connects.site2_vni" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                                       </set>\r
+                                                       <switch test="`$validate.dci-connects.site2_vni`">\r
+                                                               <outcome value="">\r
+                                                                       <return status="failure">\r
+                                                                               <parameter name="ack-final" value="Y" />\r
+                                                                               <parameter name="error-code" value="500" />\r
+                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                                                       </return>\r
+                                                               </outcome>\r
+                                                       </switch>\r
+                                               </outcome>\r
+                                       </switch>\r
+                                       <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'tunnelType'`">\r
+                                               <outcome value="true">\r
+                                                       <set>\r
+                                                               <parameter name="prop.dci-connects.tunnelType" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                                       </set>\r
+                                                       <switch test="`$validate.dci-connects.tunnelType`">\r
+                                                               <outcome value="">\r
+                                                                       <return status="failure">\r
+                                                                               <parameter name="ack-final" value="Y" />\r
+                                                                               <parameter name="error-code" value="500" />\r
+                                                                               <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                                                       </return>\r
+                                                               </outcome>\r
+                                                       </switch>\r
+                                               </outcome>\r
+                                       </switch>\r
+                               </block>\r
+                               <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="requiredParameters">\r
+                                       <parameter name="$validate.dci-connects.name" value="" />\r
+                                       <parameter name="$validate.dci-connects.site1_id" value="" />\r
+                                       <parameter name="$validate.dci-connects.site2_id" value="" />\r
+                                       <parameter name="$validate.dci-connects.site1_networkName" value="" />\r
+                                       <parameter name="$validate.dci-connects.site2_networkName" value="" />\r
+                                       <parameter name="$validate.dci-connects.site1_importRT1" value="" />\r
+                                       <parameter name="$validate.dci-connects.site2_importRT1" value="" />\r
+                                       <parameter name="$validate.dci-connects.site1_exportRT1" value="" />\r
+                                       <parameter name="$validate.dci-connects.site2_exportRT1" value="" />\r
+                                       <parameter name="$validate.dci-connects.site1_vni" value="" />\r
+                                       <parameter name="$validate.dci-connects.site2_vni" value="" />\r
+                                       <parameter name="$validate.dci-connects.tunnelType" value="" />\r
+                               </execute>\r
+                               <switch test="`$validate.dci-connects.tunnelType`">\r
+                                       <outcome value="L3-DCI">\r
+                                               <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="requiredParameters">\r
+                                                       <parameter name="$network-topology-operation-input.network-request-input.network-input-parameters.site1_routerId" value="" />\r
+                                                       <parameter name="$network-topology-operation-input.network-request-input.network-input-parameters.site2_routerId" value="" />\r
+                                               </execute>\r
+                                       </outcome>\r
+                                       <outcome value="L2-DCI" />\r
+                                       <outcome value="other">\r
+                                               <return status="failure">\r
+                                                       <parameter name="ack-final" value="Y" />\r
+                                                       <parameter name="error-code" value="500" />\r
+                                                       <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />\r
+                                               </return>\r
+                                       </outcome>\r
+                               </switch>\r
+                       </block>\r
+               </for>\r
+       </method>\r
+</service-logic>
\ No newline at end of file