Add DGs for VoLTE use case 23/16023/1
authorramu.n <ramu.n@huawei.com>
Wed, 27 Sep 2017 15:38:48 +0000 (21:08 +0530)
committerramu.n <ramu.n@huawei.com>
Wed, 27 Sep 2017 15:40:39 +0000 (21:10 +0530)
Add network-topology-operation-delete sub DG for delete underlay L3VPN configuration

Change-Id: Iba9380aaf33f48116fa46a416efff34c130cfc52
Issue-Id: SDNC-27
Signed-off-by: Ramu N <ramu.n@huawei.com>
Former-commit-id: 6cb45a1f39166566d0229e4dba430223a9877141

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

diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation-delete.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation-delete.json
new file mode 100644 (file)
index 0000000..998b1f6
--- /dev/null
@@ -0,0 +1,364 @@
+[
+  {
+    "id": "2db23fe0.b16e38",
+    "type": "dgstart",
+    "name": "DGSTART",
+    "outputs": 1,
+    "x": 100,
+    "y": 152,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "ef877c4e.31bde"
+      ]
+    ]
+  },
+  {
+    "id": "ef877c4e.31bde",
+    "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": 312.00000381469727,
+    "y": 224.0000171661377,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "b072980d.888498"
+      ]
+    ]
+  },
+  {
+    "id": "b072980d.888498",
+    "type": "method",
+    "name": "method network-topology-operation-delete",
+    "xml": "<method rpc='network-topology-operation-delete' mode='sync'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 300.0001220703125,
+    "y": 312,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "f8af1418.cc8ab"
+      ]
+    ]
+  },
+  {
+    "id": "f8af1418.cc8ab",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">\n",
+    "atomic": "false",
+    "comments": "",
+    "outputs": 1,
+    "x": 576.0000305175781,
+    "y": 320.00001335144043,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "17c4f39b.027bc4",
+        "e45c0fc3.d713c",
+        "627b018f.f2a78",
+        "54181c1f.692d04",
+        "8e12230b.25a0e"
+      ]
+    ]
+  },
+  {
+    "id": "17c4f39b.027bc4",
+    "type": "call",
+    "name": "call GENERIC-RESOURCE-API:validate-network-input-parameters",
+    "xml": "<call module='GENERIC-RESOURCE-API' rpc='validate-network-input-parameters' mode='sync' >\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 897,
+    "y": 146,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "e45c0fc3.d713c",
+    "type": "get-resource",
+    "name": "get-resource esr-thirdparty-sdnc",
+    "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"esr-thirdparty-sdnc\" \n\t\tkey=\"esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND \n\t\t     depth = '1'\"\n        pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\n\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 854,
+    "y": 446,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "ae751a67.af5318",
+        "286e1ce2.b1b734",
+        "381203c2.6a9ed4"
+      ]
+    ]
+  },
+  {
+    "id": "ae751a67.af5318",
+    "type": "success",
+    "name": "success",
+    "xml": "<outcome value='success'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1170,
+    "y": 390,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "1faac458.f1d3d4"
+      ]
+    ]
+  },
+  {
+    "id": "286e1ce2.b1b734",
+    "type": "not-found",
+    "name": "not-found",
+    "xml": "<outcome value='not-found'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1173.490966796875,
+    "y": 437.57403564453125,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "9ef4deef.91afd8"
+      ]
+    ]
+  },
+  {
+    "id": "381203c2.6a9ed4",
+    "type": "other",
+    "name": "other",
+    "xml": "<outcome value='Other'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1168.823974609375,
+    "y": 478.9073486328125,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "44d4a0f0.d6bf98"
+      ]
+    ]
+  },
+  {
+    "id": "9ef4deef.91afd8",
+    "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 model is_bound_to_vpn=true but no vpn_binding is present\" />\n\n",
+    "comments": "",
+    "x": 1350.0623779296875,
+    "y": 425.8597717285156,
+    "z": "e28e0974.bf7d98",
+    "wires": []
+  },
+  {
+    "id": "44d4a0f0.d6bf98",
+    "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=\"Unexpected error retrieving vpn binding\" />\n\n",
+    "comments": "",
+    "x": 1356.5965309143066,
+    "y": 474.3465414047241,
+    "z": "e28e0974.bf7d98",
+    "wires": []
+  },
+  {
+    "id": "1faac458.f1d3d4",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 1348.205322265625,
+    "y": 382.57403564453125,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "627b018f.f2a78",
+    "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": 859,
+    "y": 281,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "55bd9517.8a2a3c"
+      ]
+    ]
+  },
+  {
+    "id": "55bd9517.8a2a3c",
+    "type": "block",
+    "name": "block",
+    "xml": "<block>\n",
+    "atomic": "false",
+    "comments": "",
+    "outputs": 1,
+    "x": 1140.8333740234375,
+    "y": 259.3333435058594,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "aaca6566.847a28",
+        "58c4c980.63f76"
+      ]
+    ]
+  },
+  {
+    "id": "aaca6566.847a28",
+    "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": 1349,
+    "y": 220,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "e38f6b1e.d2dbc"
+      ]
+    ]
+  },
+  {
+    "id": "e38f6b1e.d2dbc",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1536,
+    "y": 220,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "ce711958.0f3dd8"
+      ]
+    ]
+  },
+  {
+    "id": "ce711958.0f3dd8",
+    "type": "set",
+    "name": "set name",
+    "xml": "<set>\n<parameter name='prop.l3vpn.name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1704,
+    "y": 220.60000610351562,
+    "z": "e28e0974.bf7d98",
+    "wires": []
+  },
+  {
+    "id": "58c4c980.63f76",
+    "type": "switchNode",
+    "name": "switch service-type",
+    "xml": "<switch test=\"`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'service-type'`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1352.9999389648438,
+    "y": 281.5999755859375,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "416447eb.c5c02"
+      ]
+    ]
+  },
+  {
+    "id": "416447eb.c5c02",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1537.9999389648438,
+    "y": 279.5999755859375,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "a89b0168.c64988"
+      ]
+    ]
+  },
+  {
+    "id": "a89b0168.c64988",
+    "type": "set",
+    "name": "set service-type",
+    "xml": "<set>\n<parameter name='prop.l3vpn.service-type' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+    "comments": "",
+    "x": 1706.9999389648438,
+    "y": 277.5999755859375,
+    "z": "e28e0974.bf7d98",
+    "wires": []
+  },
+  {
+    "id": "54181c1f.692d04",
+    "type": "set",
+    "name": "set controller data",
+    "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.url' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.serviceUrl`\" />\n<parameter name='prop.sdncRestApi.templateDir' value='/opt/onap/sdnc/data' />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.user' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.password' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.password`\" />\n",
+    "comments": "",
+    "x": 819,
+    "y": 557,
+    "z": "e28e0974.bf7d98",
+    "wires": []
+  },
+  {
+    "id": "cd353a.555cb2c8",
+    "type": "execute",
+    "name": "execute REST DELETE VPN",
+    "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"$prop.sdncRestApi.tempDir +'/l3smvpntemplate.json'\"/>\n<parameter name=\"restapiUrl\" value=\"$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services/vpnservice='+$prop.l3vpn.name'\"/>\n<parameter name=\"restapiUser\" value=\"$prop.sdncRestApi.thirdpartySdnc.user\"/>\n<parameter name=\"restapiPassword\" value=\"$prop.sdncRestApi.thirdpartySdnc.password\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"restapi-result\"/>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1330,
+    "y": 634,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "8e12230b.25a0e",
+    "type": "switchNode",
+    "name": "switch service-type",
+    "xml": "<switch test=\"`$prop.l3vpn.service-type`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 800,
+    "y": 652,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "ecc26c17.c6fc7"
+      ]
+    ]
+  },
+  {
+    "id": "ecc26c17.c6fc7",
+    "type": "outcomeTrue",
+    "name": "l3vpn-ipwan",
+    "xml": "<outcome value='l3vpn-ipwan'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1050,
+    "y": 636,
+    "z": "e28e0974.bf7d98",
+    "wires": [
+      [
+        "cd353a.555cb2c8"
+      ]
+    ]
+  }
+]
index 29ccea5..fe73cda 100644 (file)
@@ -1 +1,904 @@
-[{"id":"12b79dd.fcf1ae2","type":"dgstart","name":"DGSTART","outputs":1,"x":80,"y":85.76192092895508,"z":"c6f0d3f1.455d9","wires":[["45289095.8730c"]]},{"id":"45289095.8730c","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":325.2857131958008,"y":85,"z":"c6f0d3f1.455d9","wires":[["54e5c542.fd5504"]]},{"id":"54e5c542.fd5504","type":"method","name":"method validate-network-input-parameters","xml":"<method rpc='validate-network-input-parameters' mode='sync'>\n","comments":"","outputs":1,"x":282.91668701171875,"y":160.0149383544922,"z":"c6f0d3f1.455d9","wires":[["4aa39923.928d98"]]},{"id":"4aa39923.928d98","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":566.9166946411133,"y":148.0149631500244,"z":"c6f0d3f1.455d9","wires":[["588fd95a.bd649","3dc5112.e6e5c6e"]]},{"id":"588fd95a.bd649","type":"switchNode","name":"switch  svc-action","xml":"<switch test='`$network-topology-operation-input.sdnc-request-header.svc-action`'>\n","comments":"","outputs":1,"x":847.9166946411133,"y":143.01494884490967,"z":"c6f0d3f1.455d9","wires":[["bea9cc02.adf488"]]},{"id":"bea9cc02.adf488","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":1038.6309967041016,"y":144.01494979858398,"z":"c6f0d3f1.455d9","wires":[["c0743608.2f921"]]},{"id":"c0743608.2f921","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":1213.0595474243164,"y":143.01494216918945,"z":"c6f0d3f1.455d9","wires":[]},{"id":"3dc5112.e6e5c6e","type":"switchNode","name":"switch svc-action","xml":"<switch test='`$service-topology-operation-input.sdnc-request-header.svc-action`'>\n","comments":"","outputs":1,"x":148.91664123535156,"y":419.0149631500244,"z":"c6f0d3f1.455d9","wires":[["3acc66b9.f1e56a","69b2a932.e384a","48c30fe1.37ee2","3a0a08f8.ab065"]]},{"id":"3acc66b9.f1e56a","type":"outcome","name":"assign","xml":"<outcome value='assign'>\n","comments":"","outputs":1,"x":350.4167251586914,"y":419.0149631500244,"z":"c6f0d3f1.455d9","wires":[["3f05f182.7a112e"]]},{"id":"3f05f182.7a112e","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":516.4167327880859,"y":419.0149631500244,"z":"c6f0d3f1.455d9","wires":[["4000702f.bf217"]]},{"id":"b0353d83.d95fc8","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":839.9165649414062,"y":457.01495361328125,"z":"c6f0d3f1.455d9","wires":[["4b65836a.da71a4"]]},{"id":"314ef392.5c55f4","type":"switchNode","name":"switch value","xml":"<switch test=\"`$tmp.value`\">\n","comments":"","outputs":1,"x":1434.9166259765625,"y":831.0149536132812,"z":"c6f0d3f1.455d9","wires":[["43c9362d.7e85f8"]]},{"id":"43c9362d.7e85f8","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":1651.9165992736816,"y":830.0149593353271,"z":"c6f0d3f1.455d9","wires":[["ca90525c.72c9e"]]},{"id":"ca90525c.72c9e","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":1830.345314025879,"y":831.0149593353271,"z":"c6f0d3f1.455d9","wires":[]},{"id":"69b2a932.e384a","type":"outcome","name":"deactivate","xml":"<outcome value='deactivate'>\n","comments":"","outputs":1,"x":356.9999771118164,"y":495.76191806793213,"z":"c6f0d3f1.455d9","wires":[[]]},{"id":"48c30fe1.37ee2","type":"outcome","name":"delete","xml":"<outcome value='delete'>\n","comments":"","outputs":1,"x":343.5715103149414,"y":551.0478391647339,"z":"c6f0d3f1.455d9","wires":[[]]},{"id":"3a0a08f8.ab065","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":345.6190757751465,"y":606.9047303199768,"z":"c6f0d3f1.455d9","wires":[["1c01820.787e0fe"]]},{"id":"1c01820.787e0fe","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":499.1906509399414,"y":609.5238742828369,"z":"c6f0d3f1.455d9","wires":[]},{"id":"4b65836a.da71a4","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":717.9999389648438,"y":603.7619018554688,"z":"c6f0d3f1.455d9","wires":[["c0a12daa.de711","79c7c0f2.75db1","70c07e94.b958b"]]},{"id":"4000702f.bf217","type":"switchNode","name":"switch request-action","xml":"<switch test='`$network-topology-operation-input.request-information.request-action`'>\n","comments":"","outputs":1,"x":472,"y":307,"z":"c6f0d3f1.455d9","wires":[["7fc21ed9.84ecc","2b594f42.596858"]]},{"id":"7fc21ed9.84ecc","type":"other","name":"CreateNetworkInstance","xml":"<outcome value='CreateNetworkInstance'>","comments":"","outputs":1,"x":738,"y":266,"z":"c6f0d3f1.455d9","wires":[["b93efadc.2a7b98"]]},{"id":"2b594f42.596858","type":"other","name":"Other","xml":"<outcome value='Other'>","comments":"","outputs":1,"x":692,"y":316,"z":"c6f0d3f1.455d9","wires":[["38f5f946.300656"]]},{"id":"38f5f946.300656","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":861,"y":316,"z":"c6f0d3f1.455d9","wires":[]},{"id":"b93efadc.2a7b98","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":963,"y":255,"z":"c6f0d3f1.455d9","wires":[["b0353d83.d95fc8"]]},{"id":"2b9e6137.bb0cbe","type":"comment","name":"TODO: need to identify underlay or overlay","info":"","comments":"","x":969,"y":219,"z":"c6f0d3f1.455d9","wires":[]},{"id":"c0a12daa.de711","type":"set","name":"clear tmp-data","xml":"<set>\n<parameter name='tmp.name' value='' />\n<parameter name='tmp.value' value='' />\n","comments":"","x":910,"y":558,"z":"c6f0d3f1.455d9","wires":[]},{"id":"79c7c0f2.75db1","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":899,"y":648,"z":"c6f0d3f1.455d9","wires":[]},{"id":"70c07e94.b958b","type":"switchNode","name":"switch name","xml":"<switch test=\"'$tmp.name'\">\n","comments":"","outputs":1,"x":878,"y":742,"z":"c6f0d3f1.455d9","wires":[["b4dc69ff.a7ed1","bbb21dd0.0748a","646ea6b1.a2f9c8","439d167a.8c5ac","c1518ab4.108de8","b9d1292c.a326b","2a37f01.a563d1","1df27ff7.9e57b8","eb7c110.2f93df","f3eead68.9da5e","6b17cb91.28e614","3b3dd1c9.f1275e","6e7d7d1.8e50d04","e757b031.dd60f8","c7f4e328.7b4c7","55fe09c4.76bd78","5b95ca17.0b84a4"]]},{"id":"b4dc69ff.a7ed1","type":"outcome","name":"NULL","xml":"<outcome value=''>","comments":"","outputs":1,"x":1159,"y":1365,"z":"c6f0d3f1.455d9","wires":[["72bd50f1.643c"]]},{"id":"72bd50f1.643c","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":1334,"y":1364,"z":"c6f0d3f1.455d9","wires":[]},{"id":"bbb21dd0.0748a","type":"other","name":"name","xml":"<outcome value='name'>","comments":"","outputs":1,"x":1136,"y":487,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]},{"id":"646ea6b1.a2f9c8","type":"other","name":"service-type","xml":"<outcome value='service-type'>","comments":"","outputs":1,"x":1139,"y":554,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]},{"id":"2a37f01.a563d1","type":"other","name":"sna2_name","xml":"<outcome value='sna2_name'>","comments":"","outputs":1,"x":1143,"y":783,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]},{"id":"439d167a.8c5ac","type":"other","name":"site1-name","xml":"<outcome value='site1-name'>","comments":"","outputs":1,"x":1140,"y":615,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]},{"id":"c1518ab4.108de8","type":"other","name":"site2-name","xml":"<outcome value='site2-name'>","comments":"","outputs":1,"x":1136,"y":672,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]},{"id":"b9d1292c.a326b","type":"other","name":"sna1_name","xml":"<outcome value='sna1_name'>","comments":"","outputs":1,"x":1139,"y":729,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]},{"id":"1df27ff7.9e57b8","type":"other","name":"pe1_id","xml":"<outcome value='pe1_id'>","comments":"","outputs":1,"x":1143,"y":834,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]},{"id":"eb7c110.2f93df","type":"other","name":"pe2_id","xml":"<outcome value='pe2_id'>","comments":"","outputs":1,"x":1146,"y":882,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]},{"id":"f3eead68.9da5e","type":"other","name":"ac1-id","xml":"<outcome value='ac1-id'>","comments":"","outputs":1,"x":1151,"y":931,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]},{"id":"6b17cb91.28e614","type":"other","name":"ac2-id","xml":"<outcome value='ac2-id'>","comments":"","outputs":1,"x":1153,"y":986,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]},{"id":"3b3dd1c9.f1275e","type":"other","name":"ac1-ip","xml":"<outcome value='ac1-ip'>","comments":"","outputs":1,"x":1153,"y":1038,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]},{"id":"6e7d7d1.8e50d04","type":"other","name":"ac2-ip","xml":"<outcome value='ac2-ip'>","comments":"","outputs":1,"x":1155,"y":1099,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]},{"id":"e757b031.dd60f8","type":"other","name":"ac1_peer_ip","xml":"<outcome value='ac1_peer_ip'>","comments":"","outputs":1,"x":1157,"y":1149,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]},{"id":"c7f4e328.7b4c7","type":"other","name":"ac2_peer_ip","xml":"<outcome value='ac2_peer_ip'>","comments":"","outputs":1,"x":1153,"y":1197,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]},{"id":"55fe09c4.76bd78","type":"other","name":"ac1_svlan","xml":"<outcome value='ac1_svlan'>","comments":"","outputs":1,"x":1155,"y":1250,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]},{"id":"5b95ca17.0b84a4","type":"other","name":"ac2_svlan","xml":"<outcome value='ac2_svlan'>","comments":"","outputs":1,"x":1157,"y":1311,"z":"c6f0d3f1.455d9","wires":[["314ef392.5c55f4"]]}]
\ No newline at end of file
+[
+  {
+    "id": "12b79dd.fcf1ae2",
+    "type": "dgstart",
+    "name": "DGSTART",
+    "outputs": 1,
+    "x": 80,
+    "y": 85.76192092895508,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "45289095.8730c"
+      ]
+    ]
+  },
+  {
+    "id": "45289095.8730c",
+    "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": 325.2857131958008,
+    "y": 85,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "54e5c542.fd5504"
+      ]
+    ]
+  },
+  {
+    "id": "54e5c542.fd5504",
+    "type": "method",
+    "name": "method validate-network-input-parameters",
+    "xml": "<method rpc='validate-network-input-parameters' mode='sync'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 282.91668701171875,
+    "y": 160.0149383544922,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "4aa39923.928d98"
+      ]
+    ]
+  },
+  {
+    "id": "4aa39923.928d98",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 566.9166946411133,
+    "y": 148.0149631500244,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "588fd95a.bd649",
+        "3dc5112.e6e5c6e"
+      ]
+    ]
+  },
+  {
+    "id": "588fd95a.bd649",
+    "type": "switchNode",
+    "name": "switch  svc-action",
+    "xml": "<switch test='`$network-topology-operation-input.sdnc-request-header.svc-action`'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 847.9166946411133,
+    "y": 143.01494884490967,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "bea9cc02.adf488"
+      ]
+    ]
+  },
+  {
+    "id": "bea9cc02.adf488",
+    "type": "outcome",
+    "name": "NULL",
+    "xml": "<outcome value=''>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1038.6309967041016,
+    "y": 144.01494979858398,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "c0743608.2f921"
+      ]
+    ]
+  },
+  {
+    "id": "c0743608.2f921",
+    "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": 1213.0595474243164,
+    "y": 143.01494216918945,
+    "z": "c6f0d3f1.455d9",
+    "wires": []
+  },
+  {
+    "id": "3dc5112.e6e5c6e",
+    "type": "switchNode",
+    "name": "switch svc-action",
+    "xml": "<switch test='`$service-topology-operation-input.sdnc-request-header.svc-action`'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 148.91664123535156,
+    "y": 419.0149631500244,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "3acc66b9.f1e56a",
+        "69b2a932.e384a",
+        "48c30fe1.37ee2",
+        "3a0a08f8.ab065"
+      ]
+    ]
+  },
+  {
+    "id": "3acc66b9.f1e56a",
+    "type": "outcome",
+    "name": "assign",
+    "xml": "<outcome value='assign'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 350.4167251586914,
+    "y": 419.0149631500244,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "3f05f182.7a112e"
+      ]
+    ]
+  },
+  {
+    "id": "3f05f182.7a112e",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 516.4167327880859,
+    "y": 419.0149631500244,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "4000702f.bf217"
+      ]
+    ]
+  },
+  {
+    "id": "b0353d83.d95fc8",
+    "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": 839.9165649414062,
+    "y": 457.01495361328125,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "4b65836a.da71a4"
+      ]
+    ]
+  },
+  {
+    "id": "314ef392.5c55f4",
+    "type": "switchNode",
+    "name": "switch value",
+    "xml": "<switch test=\"`$tmp.value`\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1434.9166259765625,
+    "y": 831.0149536132812,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "43c9362d.7e85f8"
+      ]
+    ]
+  },
+  {
+    "id": "43c9362d.7e85f8",
+    "type": "outcome",
+    "name": "NULL",
+    "xml": "<outcome value=''>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1651.9165992736816,
+    "y": 830.0149593353271,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "ca90525c.72c9e"
+      ]
+    ]
+  },
+  {
+    "id": "ca90525c.72c9e",
+    "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": 1830.345314025879,
+    "y": 831.0149593353271,
+    "z": "c6f0d3f1.455d9",
+    "wires": []
+  },
+  {
+    "id": "69b2a932.e384a",
+    "type": "outcome",
+    "name": "deactivate",
+    "xml": "<outcome value='deactivate'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 356.9999771118164,
+    "y": 495.76191806793213,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "48c30fe1.37ee2",
+    "type": "outcome",
+    "name": "delete",
+    "xml": "<outcome value='delete'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 343.5715103149414,
+    "y": 551.0478391647339,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "519b9637.7e3388"
+      ]
+    ]
+  },
+  {
+    "id": "3a0a08f8.ab065",
+    "type": "other",
+    "name": "other",
+    "xml": "<outcome value='Other'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 345.6190757751465,
+    "y": 606.9047303199768,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "1c01820.787e0fe"
+      ]
+    ]
+  },
+  {
+    "id": "1c01820.787e0fe",
+    "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": 499.1906509399414,
+    "y": 609.5238742828369,
+    "z": "c6f0d3f1.455d9",
+    "wires": []
+  },
+  {
+    "id": "4b65836a.da71a4",
+    "type": "block",
+    "name": "block",
+    "xml": "<block>\n",
+    "atomic": "false",
+    "comments": "",
+    "outputs": 1,
+    "x": 717.9999389648438,
+    "y": 603.7619018554688,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "c0a12daa.de711",
+        "79c7c0f2.75db1",
+        "70c07e94.b958b"
+      ]
+    ]
+  },
+  {
+    "id": "4000702f.bf217",
+    "type": "switchNode",
+    "name": "switch request-action",
+    "xml": "<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 472,
+    "y": 307,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "7fc21ed9.84ecc",
+        "2b594f42.596858"
+      ]
+    ]
+  },
+  {
+    "id": "7fc21ed9.84ecc",
+    "type": "other",
+    "name": "CreateNetworkInstance",
+    "xml": "<outcome value='CreateNetworkInstance'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 738,
+    "y": 266,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "b93efadc.2a7b98"
+      ]
+    ]
+  },
+  {
+    "id": "2b594f42.596858",
+    "type": "other",
+    "name": "Other",
+    "xml": "<outcome value='Other'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 692,
+    "y": 316,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "38f5f946.300656"
+      ]
+    ]
+  },
+  {
+    "id": "38f5f946.300656",
+    "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": 861,
+    "y": 316,
+    "z": "c6f0d3f1.455d9",
+    "wires": []
+  },
+  {
+    "id": "b93efadc.2a7b98",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 963,
+    "y": 255,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "b0353d83.d95fc8"
+      ]
+    ]
+  },
+  {
+    "id": "2b9e6137.bb0cbe",
+    "type": "comment",
+    "name": "TODO: need to identify underlay or overlay",
+    "info": "",
+    "comments": "",
+    "x": 969,
+    "y": 219,
+    "z": "c6f0d3f1.455d9",
+    "wires": []
+  },
+  {
+    "id": "c0a12daa.de711",
+    "type": "set",
+    "name": "clear tmp-data",
+    "xml": "<set>\n<parameter name='tmp.name' value='' />\n<parameter name='tmp.value' value='' />\n",
+    "comments": "",
+    "x": 910,
+    "y": 558,
+    "z": "c6f0d3f1.455d9",
+    "wires": []
+  },
+  {
+    "id": "79c7c0f2.75db1",
+    "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": 899,
+    "y": 648,
+    "z": "c6f0d3f1.455d9",
+    "wires": []
+  },
+  {
+    "id": "70c07e94.b958b",
+    "type": "switchNode",
+    "name": "switch name",
+    "xml": "<switch test=\"'$tmp.name'\">\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 878,
+    "y": 742,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "b4dc69ff.a7ed1",
+        "bbb21dd0.0748a",
+        "646ea6b1.a2f9c8",
+        "439d167a.8c5ac",
+        "c1518ab4.108de8",
+        "b9d1292c.a326b",
+        "2a37f01.a563d1",
+        "1df27ff7.9e57b8",
+        "eb7c110.2f93df",
+        "f3eead68.9da5e",
+        "6b17cb91.28e614",
+        "3b3dd1c9.f1275e",
+        "6e7d7d1.8e50d04",
+        "e757b031.dd60f8",
+        "c7f4e328.7b4c7",
+        "55fe09c4.76bd78",
+        "5b95ca17.0b84a4"
+      ]
+    ]
+  },
+  {
+    "id": "b4dc69ff.a7ed1",
+    "type": "outcome",
+    "name": "NULL",
+    "xml": "<outcome value=''>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1159,
+    "y": 1365,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "72bd50f1.643c"
+      ]
+    ]
+  },
+  {
+    "id": "72bd50f1.643c",
+    "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": 1334,
+    "y": 1364,
+    "z": "c6f0d3f1.455d9",
+    "wires": []
+  },
+  {
+    "id": "bbb21dd0.0748a",
+    "type": "other",
+    "name": "name",
+    "xml": "<outcome value='name'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1136,
+    "y": 487,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "646ea6b1.a2f9c8",
+    "type": "other",
+    "name": "service-type",
+    "xml": "<outcome value='service-type'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1139,
+    "y": 554,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "2a37f01.a563d1",
+    "type": "other",
+    "name": "sna2_name",
+    "xml": "<outcome value='sna2_name'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1143,
+    "y": 783,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "439d167a.8c5ac",
+    "type": "other",
+    "name": "site1-name",
+    "xml": "<outcome value='site1-name'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1140,
+    "y": 615,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "c1518ab4.108de8",
+    "type": "other",
+    "name": "site2-name",
+    "xml": "<outcome value='site2-name'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1136,
+    "y": 672,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "b9d1292c.a326b",
+    "type": "other",
+    "name": "sna1_name",
+    "xml": "<outcome value='sna1_name'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1139,
+    "y": 729,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "1df27ff7.9e57b8",
+    "type": "other",
+    "name": "pe1_id",
+    "xml": "<outcome value='pe1_id'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1143,
+    "y": 834,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "eb7c110.2f93df",
+    "type": "other",
+    "name": "pe2_id",
+    "xml": "<outcome value='pe2_id'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1146,
+    "y": 882,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "f3eead68.9da5e",
+    "type": "other",
+    "name": "ac1-id",
+    "xml": "<outcome value='ac1-id'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1151,
+    "y": 931,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "6b17cb91.28e614",
+    "type": "other",
+    "name": "ac2-id",
+    "xml": "<outcome value='ac2-id'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1153,
+    "y": 986,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "3b3dd1c9.f1275e",
+    "type": "other",
+    "name": "ac1-ip",
+    "xml": "<outcome value='ac1-ip'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1153,
+    "y": 1038,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "6e7d7d1.8e50d04",
+    "type": "other",
+    "name": "ac2-ip",
+    "xml": "<outcome value='ac2-ip'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1155,
+    "y": 1099,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "e757b031.dd60f8",
+    "type": "other",
+    "name": "ac1_peer_ip",
+    "xml": "<outcome value='ac1_peer_ip'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1157,
+    "y": 1149,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "c7f4e328.7b4c7",
+    "type": "other",
+    "name": "ac2_peer_ip",
+    "xml": "<outcome value='ac2_peer_ip'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1153,
+    "y": 1197,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "55fe09c4.76bd78",
+    "type": "other",
+    "name": "ac1_svlan",
+    "xml": "<outcome value='ac1_svlan'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1155,
+    "y": 1250,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "5b95ca17.0b84a4",
+    "type": "other",
+    "name": "ac2_svlan",
+    "xml": "<outcome value='ac2_svlan'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1157,
+    "y": 1311,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "314ef392.5c55f4"
+      ]
+    ]
+  },
+  {
+    "id": "519b9637.7e3388",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 259,
+    "y": 787,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "6d7e792f.c1a048",
+        "39ec9624.c1c9f2"
+      ]
+    ]
+  },
+  {
+    "id": "6d7e792f.c1a048",
+    "type": "other",
+    "name": "DeleteNetworkInstance",
+    "xml": "<outcome value='DeleteNetworkInstance'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 269,
+    "y": 943,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "7a441aab.52e274"
+      ]
+    ]
+  },
+  {
+    "id": "39ec9624.c1c9f2",
+    "type": "other",
+    "name": "Other",
+    "xml": "<outcome value='Other'>",
+    "comments": "",
+    "outputs": 1,
+    "x": 223,
+    "y": 993,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "a475643c.1d776"
+      ]
+    ]
+  },
+  {
+    "id": "a475643c.1d776",
+    "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": 392,
+    "y": 993,
+    "z": "c6f0d3f1.455d9",
+    "wires": []
+  },
+  {
+    "id": "7a441aab.52e274",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 494,
+    "y": 932,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "b0dc9dd7.cd7488"
+      ]
+    ]
+  },
+  {
+    "id": "b0dc9dd7.cd7488",
+    "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": 316,
+    "y": 1087,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "89793fd8.cbbfd8"
+      ]
+    ]
+  },
+  {
+    "id": "89793fd8.cbbfd8",
+    "type": "block",
+    "name": "block",
+    "xml": "<block>\n",
+    "atomic": "false",
+    "comments": "",
+    "outputs": 1,
+    "x": 309,
+    "y": 1172,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "43f4742.1d37e0c"
+      ]
+    ]
+  },
+  {
+    "id": "43f4742.1d37e0c",
+    "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": 492,
+    "y": 1165,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "a693d56e.072fb"
+      ]
+    ]
+  },
+  {
+    "id": "a693d56e.072fb",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 673,
+    "y": 1164,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "41bb92ce.69dfe4"
+      ]
+    ]
+  },
+  {
+    "id": "41bb92ce.69dfe4",
+    "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": 837,
+    "y": 1164,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "659b92d9.633a14"
+      ]
+    ]
+  },
+  {
+    "id": "659b92d9.633a14",
+    "type": "outcome",
+    "name": "NULL",
+    "xml": "<outcome value=''>",
+    "comments": "",
+    "outputs": 1,
+    "x": 706,
+    "y": 1288,
+    "z": "c6f0d3f1.455d9",
+    "wires": [
+      [
+        "7bbbb2a1.5d8cb4"
+      ]
+    ]
+  },
+  {
+    "id": "7bbbb2a1.5d8cb4",
+    "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": 884.4287147521973,
+    "y": 1289,
+    "z": "c6f0d3f1.455d9",
+    "wires": []
+  }
+]
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation-delete.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation-delete.xml
new file mode 100644 (file)
index 0000000..ca5fa9d
--- /dev/null
@@ -0,0 +1,47 @@
+<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}'><method rpc='network-topology-operation-delete' mode='sync'>\r
+<block atomic="true">\r
+<call module='GENERIC-RESOURCE-API' rpc='validate-network-input-parameters' mode='sync' >\r
+</call><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
+<set>\r
+<parameter name='prop.l3vpn.name' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
+</set></outcome></switch><switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'service-type'`">\r
+<outcome value='true'>\r
+<set>\r
+<parameter name='prop.l3vpn.service-type' value='`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`' />\r
+</set></outcome></switch></block></for><get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" \r
+               resource="esr-thirdparty-sdnc" \r
+               key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND \r
+                    depth = '1'"\r
+        pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\r
+\r
+<outcome value='success'>\r
+<block atomic="true"></block></outcome><outcome value='not-found'>\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 model is_bound_to_vpn=true but no vpn_binding is present" />\r
+\r
+</return></outcome><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="Unexpected error retrieving vpn binding" />\r
+\r
+</return></outcome></get-resource><set>\r
+<parameter name='prop.sdncRestApi.thirdpartySdnc.url' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.serviceUrl`" />\r
+<parameter name='prop.sdncRestApi.templateDir' value='/opt/onap/sdnc/data' />\r
+<parameter name='prop.sdncRestApi.thirdpartySdnc.user' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.user-name`" />\r
+<parameter name='prop.sdncRestApi.thirdpartySdnc.password' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list[0].esr-system-info.password`" />\r
+</set><switch test="`$prop.l3vpn.service-type`">\r
+<outcome value='l3vpn-ipwan'>\r
+<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
+<parameter name="templateFileName" value="$prop.sdncRestApi.tempDir +'/l3smvpntemplate.json'"/>\r
+<parameter name="restapiUrl" value="$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services/vpnservice='+$prop.l3vpn.name'"/>\r
+<parameter name="restapiUser" value="$prop.sdncRestApi.thirdpartySdnc.user"/>\r
+<parameter name="restapiPassword" value="$prop.sdncRestApi.thirdpartySdnc.password"/>\r
+<parameter name="format" value="json"/>\r
+<parameter name="httpMethod" value="delete"/>\r
+<parameter name="responsePrefix" value="restapi-result"/></execute></outcome></switch></block></method></service-logic>
\ No newline at end of file
index e865258..07d717a 100644 (file)
     <parameter name="error-message" value="request-information.request-action is required to be CreateNetworkInstance for svc-action=assign" />\r
 </return></outcome></switch></block></outcome><outcome value='deactivate'>\r
 </outcome><outcome value='delete'>\r
-</outcome><outcome value='Other'>\r
+<block atomic="true"><outcome value='DeleteNetworkInstance'><block atomic="true"><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
+<switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`">\r
+<outcome value=''><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></outcome></switch></outcome></switch></block></for></block></outcome><outcome value='Other'><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></outcome></block></outcome><outcome value='Other'>\r
 <return status='failure'>\r
        <parameter name='ack-final' value='Y'/>\r
        <parameter name="error-code" value="500" />\r