summaryrefslogtreecommitdiffstats
path: root/platform-logic/generic-resource-api/src
diff options
context:
space:
mode:
Diffstat (limited to 'platform-logic/generic-resource-api/src')
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation.json3287
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-activate.json890
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-create.json360
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-deactivate.json890
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-delete.json286
-rwxr-xr-xplatform-logic/generic-resource-api/src/main/resources/graph.versions4
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation.xml825
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-activate.xml217
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-create.xml68
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-deactivate.xml215
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-delete.xml81
11 files changed, 5005 insertions, 2118 deletions
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation.json
index 9b4c70e3..0a979d10 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation.json
@@ -1,1717 +1,1570 @@
-[
- {
- "id": "4e8e1695.988a28",
- "type": "dgstart",
- "name": "DGSTART",
- "outputs": 1,
- "x": 123.01040649414062,
- "y": 97.77774596214294,
- "z": "2db908be.484d28",
- "wires": [
- [
- "3d7adacf.e37b26"
- ]
- ]
- },
- {
- "id": "3d7adacf.e37b26",
- "type": "service-logic",
- "name": "GENERIC-RESOURCE-API ${project.version}",
- "module": "GENERIC-RESOURCE-API",
- "version": "${project.version}",
- "comments": "",
- "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
- "outputs": 1,
- "x": 204.9627685546875,
- "y": 138.01585841178894,
- "z": "2db908be.484d28",
- "wires": [
- [
- "99936fad.eb5a8"
- ]
- ]
- },
- {
- "id": "99936fad.eb5a8",
- "type": "method",
- "name": "network-topology-operation",
- "xml": "<method rpc='network-topology-operation' mode='sync'>\n",
- "comments": "",
- "outputs": 1,
- "x": 184.4390411376953,
- "y": 188.77775168418884,
- "z": "2db908be.484d28",
- "wires": [
- [
- "fa94a458.153ec8"
- ]
- ]
- },
- {
- "id": "e85a20e2.1a6f",
- "type": "comment",
- "name": " NETWORK-TOPOLOGY-OPERATION ",
- "info": "",
- "comments": "",
- "x": 517.3552627563477,
- "y": 45.36408972740173,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "fa94a458.153ec8",
- "type": "block",
- "name": "block : atomic",
- "xml": "<block atomic=\"true\">",
- "atomic": "true",
- "outputs": 1,
- "x": 237.01043701171875,
- "y": 261.2212293148041,
- "z": "2db908be.484d28",
- "wires": [
- [
- "74a7b33e.25ccac",
- "e6a39d58.fa5d7",
- "94b2997f.90f198",
- "2ccd4cf4.cd1224"
- ]
- ]
- },
- {
- "id": "74a7b33e.25ccac",
- "type": "returnSuccess",
- "name": "return success",
- "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n",
- "comments": "",
- "x": 441.09381103515625,
- "y": 1287.3138825893402,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "e6a39d58.fa5d7",
- "type": "switchNode",
- "name": "switch svc-action",
- "xml": "<switch test='`$network-topology-operation-input.sdnc-request-header.svc-action`'>\n",
- "comments": "",
- "outputs": 1,
- "x": 463.72467041015625,
- "y": 491.63492369651794,
- "z": "2db908be.484d28",
- "wires": [
- [
- "ad7b4573.ffb848",
- "2a4dd65a.9a82ea",
- "a50cf8ad.598a18",
- "f1232753.705208",
- "de92e919.3dfbf8",
- "7130c8aa.c3e608",
- "1591e42d.e2cabc",
- "d1b59f6c.66aa3",
- "3a527742.291048"
- ]
- ]
- },
- {
- "id": "ad7b4573.ffb848",
- "type": "other",
- "name": "assign",
- "xml": "<outcome value='assign'>\n",
- "comments": "",
- "outputs": 1,
- "x": 678.2009086608887,
- "y": 263.92060256004333,
- "z": "2db908be.484d28",
- "wires": [
- [
- "341de51.f64001a"
- ]
- ]
- },
- {
- "id": "341de51.f64001a",
- "type": "block",
- "name": "block : atomic",
- "xml": "<block atomic=\"true\">",
- "atomic": "true",
- "outputs": 1,
- "x": 850.439079284668,
- "y": 261.92073130607605,
- "z": "2db908be.484d28",
- "wires": [
- [
- "b2a344c1.b2b118"
- ]
- ]
- },
- {
- "id": "94b2997f.90f198",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:validate-network-input",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='validate-network-input' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 574.0103950500488,
- "y": 201.77775287628174,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "2a4dd65a.9a82ea",
- "type": "other",
- "name": "activate",
- "xml": "<outcome value='activate'>\n",
- "comments": "",
- "outputs": 1,
- "x": 681.0104484558105,
- "y": 353.77774024009705,
- "z": "2db908be.484d28",
- "wires": [
- [
- "28e87a49.f59c96"
- ]
- ]
- },
- {
- "id": "389876cb.1e467a",
- "type": "block",
- "name": "block : atomic",
- "xml": "<block atomic=\"true\">",
- "atomic": "true",
- "outputs": 1,
- "x": 1057.2486991882324,
- "y": 430.7779223918915,
- "z": "2db908be.484d28",
- "wires": [
- [
- "62930298.0b2a1c",
- "d3301b58.914a58",
- "fb007c4b.5179"
- ]
- ]
- },
- {
- "id": "c9165975.2c8ce8",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:network-topology-operation-activate",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-activate' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 2328.0703353881836,
- "y": 942.3849885463715,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "a50cf8ad.598a18",
- "type": "other",
- "name": "deactivate",
- "xml": "<outcome value='deactivate'>\n",
- "comments": "",
- "outputs": 1,
- "x": 675.010440826416,
- "y": 585.7777383327484,
- "z": "2db908be.484d28",
- "wires": [
- [
- "8e1c520d.d2576"
- ]
- ]
- },
- {
- "id": "c28aa9c7.571d18",
- "type": "block",
- "name": "block : atomic",
- "xml": "<block atomic=\"true\">",
- "atomic": "true",
- "outputs": 1,
- "x": 1077.248664855957,
- "y": 780.7780282497406,
- "z": "2db908be.484d28",
- "wires": [
- [
- "62930298.0b2a1c",
- "9d5d0700.ed8698",
- "fb007c4b.5179"
- ]
- ]
- },
- {
- "id": "9d5d0700.ed8698",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:network-topology-operation-deactivate",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-deactivate' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1656.2369384765625,
- "y": 1030.6350362300873,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "f1232753.705208",
- "type": "other",
- "name": "unassign",
- "xml": "<outcome value='unassign'>\n",
- "comments": "",
- "outputs": 1,
- "x": 672.0104598999023,
- "y": 837.7777879238129,
- "z": "2db908be.484d28",
- "wires": [
- [
- "a735954b.9ab908"
- ]
- ]
- },
- {
- "id": "a735954b.9ab908",
- "type": "block",
- "name": "block : atomic",
- "xml": "<block atomic=\"true\">",
- "atomic": "true",
- "outputs": 1,
- "x": 853.2486190795898,
- "y": 838.7779099941254,
- "z": "2db908be.484d28",
- "wires": [
- [
- "62930298.0b2a1c",
- "21cf404.360a8c",
- "fb007c4b.5179"
- ]
- ]
- },
- {
- "id": "c95f430.de215c",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:network-topology-operation-unassign",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-unassign' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 2323.820198059082,
- "y": 1135.8849580287933,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "de92e919.3dfbf8",
- "type": "other",
- "name": "other",
- "xml": "<outcome value='Other'>\n",
- "comments": "",
- "outputs": 1,
- "x": 645.0104370117188,
- "y": 1163.77783203125,
- "z": "2db908be.484d28",
- "wires": [
- [
- "88ae8f90.f87f8"
- ]
- ]
- },
- {
- "id": "88ae8f90.f87f8",
- "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-action is a required input\" />\n",
- "comments": "",
- "x": 827.0104331970215,
- "y": 1162.7778415679932,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "2ccd4cf4.cd1224",
- "type": "set",
- "name": "Set final indicator to Y",
- "xml": "<set>\n<parameter name=\"ack-final\" value=\"Y\"/>",
- "comments": "",
- "x": 460.1215057373047,
- "y": 1246.4722211360931,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "487e294c.601868",
- "type": "for",
- "name": "for nidx..service-data.networks.network[]",
- "xml": "<for index='nidx' start='0' end='`$service-data.networks.network_length`' >\n",
- "comments": "",
- "outputs": 1,
- "x": 2192.740863800049,
- "y": 480.53969740867615,
- "z": "2db908be.484d28",
- "wires": [
- [
- "d951934c.04645"
- ]
- ]
- },
- {
- "id": "62930298.0b2a1c",
- "type": "switchNode",
- "name": "switch service-data.networks.network_length",
- "xml": "<switch test='`$service-data.networks.network_length`'>\n",
- "comments": "",
- "outputs": 1,
- "x": 1470.205020904541,
- "y": 448.8610894680023,
- "z": "2db908be.484d28",
- "wires": [
- [
- "4ffb7265.aead1c",
- "e7073ffc.39cd9"
- ]
- ]
- },
- {
- "id": "4ffb7265.aead1c",
- "type": "other",
- "name": "outcome Null",
- "xml": "<outcome value=''>\n",
- "comments": "",
- "outputs": 1,
- "x": 1769.4548988342285,
- "y": 447.1110875606537,
- "z": "2db908be.484d28",
- "wires": [
- [
- "81b94f7b.60cfe"
- ]
- ]
- },
- {
- "id": "e7073ffc.39cd9",
- "type": "other",
- "name": "other",
- "xml": "<outcome value='Other'>\n",
- "comments": "",
- "outputs": 1,
- "x": 1723.4549293518066,
- "y": 480.11110854148865,
- "z": "2db908be.484d28",
- "wires": [
- [
- "b0120e6d.fd62b"
- ]
- ]
- },
- {
- "id": "d951934c.04645",
- "type": "switchNode",
- "name": "switch networkid found",
- "xml": "<switch test=\"`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`\">\n\n",
- "comments": "",
- "outputs": 1,
- "x": 2483.1694145202637,
- "y": 479.789781332016,
- "z": "2db908be.484d28",
- "wires": [
- [
- "c85e865f.6c4118"
- ]
- ]
- },
- {
- "id": "c85e865f.6c4118",
- "type": "outcomeTrue",
- "name": "true",
- "xml": "<outcome value='true'>\n",
- "comments": "",
- "outputs": 1,
- "x": 2672.121768951416,
- "y": 480.68251967430115,
- "z": "2db908be.484d28",
- "wires": [
- [
- "28d9a085.7b353"
- ]
- ]
- },
- {
- "id": "28d9a085.7b353",
- "type": "set",
- "name": "set tmp.nidx and network-data",
- "xml": "<set>\n<parameter name='tmp.nidx' value='`$nidx`' />\n<parameter name='network-data.' value='`$service-data.networks.network[$nidx].`' />\n",
- "comments": "",
- "x": 2905.653537750244,
- "y": 479.4325273036957,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "5286bff0.28cfd",
- "type": "comment",
- "name": "Find the index to service data for this network - save id in tmp.nidx, save service-data",
- "info": "",
- "comments": "",
- "x": 1649.5660438537598,
- "y": 414.1111009120941,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "94a02e8f.672a9",
- "type": "comment",
- "name": "service-data will not be stored until we have a network-id",
- "info": "",
- "comments": "",
- "x": 1188.6772003173828,
- "y": 42.99999976158142,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "81b94f7b.60cfe",
- "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.network-request-input.network-id not found in service-data\" />\n",
- "comments": "",
- "x": 1961.2324562072754,
- "y": 445.0000855922699,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "b0120e6d.fd62b",
- "type": "block",
- "name": "block : atomic",
- "xml": "<block atomic=\"true\">",
- "atomic": "true",
- "outputs": 1,
- "x": 1890.724895477295,
- "y": 479.66568541526794,
- "z": "2db908be.484d28",
- "wires": [
- [
- "487e294c.601868",
- "8b184c42.8ea"
- ]
- ]
- },
- {
- "id": "8b184c42.8ea",
- "type": "switchNode",
- "name": "switch tmp.nidx ",
- "xml": "<switch test=\"`$tmp.nidx`\">\n\n",
- "comments": "",
- "outputs": 1,
- "x": 2119.792407989502,
- "y": 530.022896528244,
- "z": "2db908be.484d28",
- "wires": [
- [
- "6f1188e.df71378",
- "4941aa7.ba31254"
- ]
- ]
- },
- {
- "id": "5f4d6f01.eacb6",
- "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.network-request-input.network-id not found in service-data\" />\n",
- "comments": "",
- "x": 2472.6493911743164,
- "y": 525.7371385097504,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "6f1188e.df71378",
- "type": "outcome",
- "name": "NULL",
- "xml": "<outcome value=''>\n",
- "comments": "",
- "outputs": 1,
- "x": 2291.2209434509277,
- "y": 528.59428191185,
- "z": "2db908be.484d28",
- "wires": [
- [
- "5f4d6f01.eacb6"
- ]
- ]
- },
- {
- "id": "d3301b58.914a58",
- "type": "switchNode",
- "name": "switch network-level-oper-status",
- "xml": "<switch test='`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`'>\n",
- "comments": "",
- "outputs": 1,
- "x": 1541.0385665893555,
- "y": 942.3363893032074,
- "z": "2db908be.484d28",
- "wires": [
- [
- "df23fde1.eee29",
- "e3ffbfd1.5bf58"
- ]
- ]
- },
- {
- "id": "df23fde1.eee29",
- "type": "outcome",
- "name": "outcome PendingCreate",
- "xml": "<outcome value='PendingCreate'>\n",
- "comments": "",
- "outputs": 1,
- "x": 1906.0385462443028,
- "y": 942.3363740444183,
- "z": "2db908be.484d28",
- "wires": [
- [
- "c9165975.2c8ce8"
- ]
- ]
- },
- {
- "id": "e3ffbfd1.5bf58",
- "type": "other",
- "name": "other",
- "xml": "<outcome value='Other'>\n",
- "comments": "",
- "outputs": 1,
- "x": 1856.0385932922363,
- "y": 982.3364045619965,
- "z": "2db908be.484d28",
- "wires": [
- [
- "e72a7431.e545a8"
- ]
- ]
- },
- {
- "id": "e72a7431.e545a8",
- "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 is not in appropriate state for activate. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`\" />",
- "comments": "",
- "x": 2026.0385932922363,
- "y": 982.3364045619965,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "21cf404.360a8c",
- "type": "switchNode",
- "name": "switch network-level-oper-status",
- "xml": "<switch test='`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`'>\n",
- "comments": "",
- "outputs": 1,
- "x": 1530.6415786743164,
- "y": 1137.4891602993011,
- "z": "2db908be.484d28",
- "wires": [
- [
- "7d4ba4c2.0667bc",
- "4d4bd64c.75d9f8",
- "3e2015ec.34c4aa"
- ]
- ]
- },
- {
- "id": "7d4ba4c2.0667bc",
- "type": "outcome",
- "name": "outcome PendingCreate",
- "xml": "<outcome value='PendingCreate'>\n",
- "comments": "",
- "outputs": 1,
- "x": 1890.6415481567383,
- "y": 1137.4891908168793,
- "z": "2db908be.484d28",
- "wires": [
- [
- "c95f430.de215c"
- ]
- ]
- },
- {
- "id": "4d4bd64c.75d9f8",
- "type": "other",
- "name": "other",
- "xml": "<outcome value='Other'>\n",
- "comments": "",
- "outputs": 1,
- "x": 1846.391471862793,
- "y": 1208.9892537593842,
- "z": "2db908be.484d28",
- "wires": [
- [
- "7523d96d.5d1058"
- ]
- ]
- },
- {
- "id": "7523d96d.5d1058",
- "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 is not in appropriate state for unassign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`\" />",
- "comments": "",
- "x": 2037.7248916625977,
- "y": 1207.6558825969696,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "3e2015ec.34c4aa",
- "type": "outcome",
- "name": "outcome PendingDelete",
- "xml": "<outcome value='PendingDelete'>\n",
- "comments": "",
- "outputs": 1,
- "x": 1893.8717727661133,
- "y": 1175.3363587856293,
- "z": "2db908be.484d28",
- "wires": [
- [
- "c95f430.de215c"
- ]
- ]
- },
- {
- "id": "7130c8aa.c3e608",
- "type": "other",
- "name": "changeassign",
- "xml": "<outcome value='changeassign'>",
- "comments": "",
- "outputs": 1,
- "x": 683.0104789733887,
- "y": 488.77777075767517,
- "z": "2db908be.484d28",
- "wires": [
- [
- "8681ccd2.61776"
- ]
- ]
- },
- {
- "id": "8681ccd2.61776",
- "type": "block",
- "name": "block : atomic",
- "xml": "<block atomic=\"true\">",
- "atomic": "true",
- "outputs": 1,
- "x": 1055.2604179382324,
- "y": 485.7777621746063,
- "z": "2db908be.484d28",
- "wires": [
- [
- "62930298.0b2a1c",
- "755b61e1.5599c"
- ]
- ]
- },
- {
- "id": "8551ad66.6b965",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:network-topology-operation-assign",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-assign' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1824.0106010437012,
- "y": 183.77776312828064,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "b2a344c1.b2b118",
- "type": "switchNode",
- "name": "switch network-level-oper-status",
- "xml": "<switch test='`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`'>\n",
- "comments": "",
- "outputs": 1,
- "x": 1119.9786567687988,
- "y": 121.72915434837341,
- "z": "2db908be.484d28",
- "wires": [
- [
- "3cdc8b88.b67114",
- "9df378e0.5934d8",
- "6224bc8a.6b7094",
- "bdfd9d9f.89385"
- ]
- ]
- },
- {
- "id": "3cdc8b88.b67114",
- "type": "outcome",
- "name": "outcome PendingCreate",
- "xml": "<outcome value='PendingCreate'>\n",
- "comments": "",
- "outputs": 1,
- "x": 1505.978702545166,
- "y": 141.7291362285614,
- "z": "2db908be.484d28",
- "wires": [
- [
- "903012af.85f85"
- ]
- ]
- },
- {
- "id": "9df378e0.5934d8",
- "type": "other",
- "name": "other",
- "xml": "<outcome value='Other'>\n",
- "comments": "",
- "outputs": 1,
- "x": 1453.9786987304688,
- "y": 183.72916769981384,
- "z": "2db908be.484d28",
- "wires": [
- [
- "8551ad66.6b965"
- ]
- ]
- },
- {
- "id": "903012af.85f85",
- "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 is not in appropriate state for assign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`\" />",
- "comments": "",
- "x": 1780.9789237976074,
- "y": 137.72918486595154,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "bdfd9d9f.89385",
- "type": "outcome",
- "name": "outcome PendingDelete",
- "xml": "<outcome value='PendingDelete'>\n",
- "comments": "",
- "outputs": 1,
- "x": 1504.010440826416,
- "y": 106.77775168418884,
- "z": "2db908be.484d28",
- "wires": [
- [
- "903012af.85f85"
- ]
- ]
- },
- {
- "id": "6224bc8a.6b7094",
- "type": "outcome",
- "name": "outcome Created",
- "xml": "<outcome value='Created'>\n",
- "comments": "",
- "outputs": 1,
- "x": 1484.0104789733887,
- "y": 71.77775359153748,
- "z": "2db908be.484d28",
- "wires": [
- [
- "903012af.85f85"
- ]
- ]
- },
- {
- "id": "755b61e1.5599c",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:network-topology-operation-changeassign",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-changeassign' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1633.2568130493164,
- "y": 874.2738797664642,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "c908bff.a5def4",
- "type": "set",
- "name": "set object-path",
- "xml": "<set>\n<parameter name='network-object-path' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $network-topology-operation-input.service-information.service-instance-id\n + '/service-data/networks/network/'\n + $networkId\n + '/network-data/network-topology/'` \" />\n \n",
- "comments": "",
- "x": 469.5113830566406,
- "y": 1152.5287148952484,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "7e1abfb0.77caa",
- "type": "set",
- "name": "set networkId",
- "xml": "<set>\n<parameter name='networkId' value='`$network-topology-operation-input.network-information.network-id`' />\n",
- "comments": "",
- "x": 463.7970161437988,
- "y": 1115.3858230113983,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "57827229.6b2abc",
- "type": "set",
- "name": "set network-level-oper-status",
- "xml": "<set>\n<parameter name='service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status' value='Created' />\n<parameter name='service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.last-rpc-action' value='`$network-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.last-action' value='`$network-topology-operation-input.request-information.request-action`' />\n",
- "comments": "",
- "x": 511.7970771789551,
- "y": 1197.9571883678436,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "fb007c4b.5179",
- "type": "switchNode",
- "name": "switch network-information.network-instance-group-id",
- "xml": "<switch test='`$network-topology-operation-input.network-information.network-instance-group-id`'>\n\n",
- "comments": "",
- "outputs": 1,
- "x": 1545.4490547180176,
- "y": 706.2787663936615,
- "z": "2db908be.484d28",
- "wires": [
- [
- "9d79b615.01e948",
- "249b5309.c2bf1c"
- ]
- ]
- },
- {
- "id": "9d79b615.01e948",
- "type": "other",
- "name": "Other",
- "xml": "<outcome value='Other'>",
- "comments": "",
- "outputs": 1,
- "x": 1832.1989364624023,
- "y": 744.4454333782196,
- "z": "2db908be.484d28",
- "wires": [
- [
- "6a373b7d.6814a4"
- ]
- ]
- },
- {
- "id": "249b5309.c2bf1c",
- "type": "other",
- "name": "NULL",
- "xml": "<outcome value=''>",
- "comments": "",
- "outputs": 1,
- "x": 1829.8658332824707,
- "y": 711.4453074932098,
- "z": "2db908be.484d28",
- "wires": [
- [
- "a9c385b1.781fe8"
- ]
- ]
- },
- {
- "id": "a9c385b1.781fe8",
- "type": "returnSuccess",
- "name": "return success",
- "xml": "<return status='success'>\n<parameter name='' value='' />\n",
- "comments": "",
- "x": 1990.199062347412,
- "y": 708.4453647136688,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "c0c595e2.aa8d28",
- "type": "switchNode",
- "name": "service-data.network-instance-groups.network-instance-group_length",
- "xml": "<switch test='`$service-data.network-instance-groups.network-instance-group_length`'>\n",
- "comments": "",
- "outputs": 1,
- "x": 2325.2746772766113,
- "y": 737.7111823558807,
- "z": "2db908be.484d28",
- "wires": [
- [
- "f9db9f35.7e7",
- "581dba4.d6ec244"
- ]
- ]
- },
- {
- "id": "f9db9f35.7e7",
- "type": "other",
- "name": "outcome Null",
- "xml": "<outcome value=''>\n",
- "comments": "",
- "outputs": 1,
- "x": 2684.524368286133,
- "y": 694.7111852169037,
- "z": "2db908be.484d28",
- "wires": [
- [
- "5de331e2.b21f2"
- ]
- ]
- },
- {
- "id": "581dba4.d6ec244",
- "type": "other",
- "name": "other",
- "xml": "<outcome value='Other'>\n",
- "comments": "",
- "outputs": 1,
- "x": 2664.524368286133,
- "y": 729.7111852169037,
- "z": "2db908be.484d28",
- "wires": [
- [
- "c0ff470a.8d1c68"
- ]
- ]
- },
- {
- "id": "6a373b7d.6814a4",
- "type": "block",
- "name": "block",
- "xml": "<block>\n",
- "atomic": "false",
- "comments": "",
- "outputs": 1,
- "x": 1966.3101921081543,
- "y": 744.8898379802704,
- "z": "2db908be.484d28",
- "wires": [
- [
- "c0c595e2.aa8d28"
- ]
- ]
- },
- {
- "id": "7d8245f1.d453ec",
- "type": "outcomeTrue",
- "name": "true",
- "xml": "<outcome value='true'>\n",
- "comments": "",
- "outputs": 1,
- "x": 4088.5181846618652,
- "y": 672.921788930893,
- "z": "2db908be.484d28",
- "wires": [
- [
- "1e1e6239.fb4e8e"
- ]
- ]
- },
- {
- "id": "fbc8dfca.d5c4e",
- "type": "set",
- "name": "set tmp.ngidx and ctx.network-instance-group-data",
- "xml": "<set>\n<parameter name='tmp.ngidx' value='`$ngidx`' />\n<parameter name='ctx.network-instance-group-data.' value='`$service-data.network-instance-groups.network-instance-group[$ngidx].`' />\n",
- "comments": "",
- "x": 4531.050151824951,
- "y": 672.6718137264252,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "1e1e6239.fb4e8e",
- "type": "block",
- "name": "block : atomic",
- "xml": "<block atomic=\"true\">",
- "atomic": "true",
- "outputs": 1,
- "x": 4237.136623382568,
- "y": 672.7789742946625,
- "z": "2db908be.484d28",
- "wires": [
- [
- "fbc8dfca.d5c4e"
- ]
- ]
- },
- {
- "id": "c50d7ac.b94b688",
- "type": "for",
- "name": "for ngidx..service-data.network-instance-groups.network-instance-group[]",
- "xml": "<for index='ngidx' start='0' end='`$service-data.network-instance-groups.network-instance-_length`' >\n",
- "comments": "",
- "outputs": 1,
- "x": 3271.386589050293,
- "y": 733.0287616252899,
- "z": "2db908be.484d28",
- "wires": [
- [
- "6bc50ed2.e98f"
- ]
- ]
- },
- {
- "id": "6bc50ed2.e98f",
- "type": "switchNode",
- "name": "switch network-instance-group-id found",
- "xml": "<switch test=\"`$service-data.network-instance-groups.network-instance-group[$nidx].network-instance-group-id == $network-topology-operation-input.network-information.network-instance-group-id`\">\n\n",
- "comments": "",
- "outputs": 1,
- "x": 3716.815185546875,
- "y": 732.7789304256439,
- "z": "2db908be.484d28",
- "wires": [
- [
- "7d8245f1.d453ec"
- ]
- ]
- },
- {
- "id": "c0ff470a.8d1c68",
- "type": "block",
- "name": "block : atomic",
- "xml": "<block atomic=\"true\">",
- "atomic": "true",
- "outputs": 1,
- "x": 2883.3704681396484,
- "y": 730.9046866893768,
- "z": "2db908be.484d28",
- "wires": [
- [
- "c50d7ac.b94b688"
- ]
- ]
- },
- {
- "id": "5de331e2.b21f2",
- "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.network-request-input.network-instance-group-id not found in service-data\" />\n",
- "comments": "",
- "x": 2876.074020385742,
- "y": 694.2787520885468,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "4941aa7.ba31254",
- "type": "other",
- "name": "other",
- "xml": "<outcome value='Other'>\n",
- "comments": "",
- "outputs": 1,
- "x": 2290.7565956115723,
- "y": 559.5238645076752,
- "z": "2db908be.484d28",
- "wires": [
- [
- "c2ba8bb7.5d1488"
- ]
- ]
- },
- {
- "id": "c2ba8bb7.5d1488",
- "type": "set",
- "name": "set nidx",
- "xml": "<set>\n<parameter name='nidx' value='`$tmp.nidx`' />\n",
- "comments": "",
- "x": 2447.7565956115723,
- "y": 560.5238645076752,
- "z": "2db908be.484d28",
- "wires": []
- },
- {
- "id": "28e87a49.f59c96",
- "type": "switchNode",
- "name": "switch request-action",
- "xml": "<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
- "comments": "",
- "outputs": 1,
- "x": 872.1215934753418,
- "y": 346.2326762676239,
- "z": "2db908be.484d28",
- "wires": [
- [
- "32d531df.85499e",
- "4bb6e988.fe7c58",
- "e792c2b8.ea131",
- "960249a0.73e4e8"
- ]
- ]
- },
- {
- "id": "32d531df.85499e",
- "type": "outcome",
- "name": "ActivateDCINetworkInstance",
- "xml": "<outcome value='ActivateDCINetworkInstance'>",
- "comments": "",
- "outputs": 1,
- "x": 1132.4548149108887,
- "y": 291.23249220848083,
- "z": "2db908be.484d28",
- "wires": [
- [
- "b83bfcdc.13d1a"
- ]
- ]
- },
- {
- "id": "b83bfcdc.13d1a",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:dci-connects-network-topology-operation-activate",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='dci-connects-network-topology-operation-activate' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1578.4549140930176,
- "y": 292.89932227134705,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "4bb6e988.fe7c58",
- "type": "outcome",
- "name": "other",
- "xml": "<outcome value='other'>",
- "comments": "",
- "outputs": 1,
- "x": 1068.454833984375,
- "y": 384.89923071861267,
- "z": "2db908be.484d28",
- "wires": [
- [
- "389876cb.1e467a"
- ]
- ]
- },
- {
- "id": "8e1c520d.d2576",
- "type": "switchNode",
- "name": "switch request-action",
- "xml": "<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
- "comments": "",
- "outputs": 1,
- "x": 876.6771430969238,
- "y": 587.6770570278168,
- "z": "2db908be.484d28",
- "wires": [
- [
- "5eb403c4.8c424c",
- "124ca478.59aa4c",
- "49021010.79466",
- "2ff099ca.196ee6"
- ]
- ]
- },
- {
- "id": "5eb403c4.8c424c",
- "type": "outcome",
- "name": "DeactivateSOTNConnectivityInstance",
- "xml": "<outcome value='DeactivateSOTNConnectivityInstance'>",
- "comments": "",
- "outputs": 1,
- "x": 1166.455020904541,
- "y": 531.8991944789886,
- "z": "2db908be.484d28",
- "wires": [
- [
- "152c7bc7.994c24"
- ]
- ]
- },
- {
- "id": "124ca478.59aa4c",
- "type": "other",
- "name": "other",
- "xml": "<outcome value='Other'>\n",
- "comments": "",
- "outputs": 1,
- "x": 1074.8999862670898,
- "y": 679.5907685756683,
- "z": "2db908be.484d28",
- "wires": [
- [
- "c28aa9c7.571d18"
- ]
- ]
- },
- {
- "id": "152c7bc7.994c24",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:sotn-network-topology-operation-deactivate",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-deactivate' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1626.8121376037598,
- "y": 533.1825215816498,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "1591e42d.e2cabc",
- "type": "other",
- "name": "create",
- "xml": "<outcome value='create'>\n",
- "comments": "",
- "outputs": 1,
- "x": 662.3439102172852,
- "y": 927.010596036911,
- "z": "2db908be.484d28",
- "wires": [
- [
- "a09e2b38.714a58"
- ]
- ]
- },
- {
- "id": "a09e2b38.714a58",
- "type": "switchNode",
- "name": "switch request-action",
- "xml": "<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
- "comments": "",
- "outputs": 1,
- "x": 862.6577301025391,
- "y": 926.7882688045502,
- "z": "2db908be.484d28",
- "wires": [
- [
- "123388e8.cc22d7",
- "e823c269.0d884",
- "fe173c3b.37ab5"
- ]
- ]
- },
- {
- "id": "d1b59f6c.66aa3",
- "type": "other",
- "name": "delete",
- "xml": "<outcome value='delete'>\n",
- "comments": "",
- "outputs": 1,
- "x": 660.3439140319824,
- "y": 1004.0105998516083,
- "z": "2db908be.484d28",
- "wires": [
- [
- "f91ae971.a2f4f8"
- ]
- ]
- },
- {
- "id": "f91ae971.a2f4f8",
- "type": "switchNode",
- "name": "switch request-action",
- "xml": "<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
- "comments": "",
- "outputs": 1,
- "x": 862.6321716308594,
- "y": 1005.0714004039764,
- "z": "2db908be.484d28",
- "wires": [
- [
- "81ef432e.c5cd2",
- "dac05fa.465e7a",
- "ad7b9fb5.8def5"
- ]
- ]
- },
- {
- "id": "4debc446.71044c",
- "type": "block",
- "name": "block : atomic",
- "xml": "<block atomic=\"true\">",
- "atomic": "true",
- "outputs": 1,
- "x": 1606.4551811218262,
- "y": 1361.8993880748749,
- "z": "2db908be.484d28",
- "wires": [
- [
- "a33b166a.24fd28"
- ]
- ]
- },
- {
- "id": "21f7416d.44262e",
- "type": "block",
- "name": "block : atomic",
- "xml": "<block atomic=\"true\">",
- "atomic": "true",
- "outputs": 1,
- "x": 1578.8996543884277,
- "y": 1560.4549124240875,
- "z": "2db908be.484d28",
- "wires": [
- [
- "c3e850c.08aaab"
- ]
- ]
- },
- {
- "id": "a33b166a.24fd28",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:network-topology-operation-create",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-create' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1971.1216773986816,
- "y": 1361.3440101146698,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "c3e850c.08aaab",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:network-topology-operation-delete",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-delete' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1943.8995780944824,
- "y": 1559.4548408985138,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "123388e8.cc22d7",
- "type": "outcome",
- "name": "other",
- "xml": "<outcome value='other'>",
- "comments": "",
- "outputs": 1,
- "x": 1424.65771484375,
- "y": 1363.6770017147064,
- "z": "2db908be.484d28",
- "wires": [
- [
- "4debc446.71044c"
- ]
- ]
- },
- {
- "id": "e823c269.0d884",
- "type": "outcome",
- "name": "CreateSOTNConnectivityInstance",
- "xml": "<outcome value='CreateSOTNConnectivityInstance'>",
- "comments": "",
- "outputs": 1,
- "x": 1504.3244438171387,
- "y": 1264.4549030223861,
- "z": "2db908be.484d28",
- "wires": [
- [
- "f75de23d.a281"
- ]
- ]
- },
- {
- "id": "f75de23d.a281",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:sotn-network-topology-operation-create",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-create' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1983.2132606506348,
- "y": 1266.6770852962509,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "dac05fa.465e7a",
- "type": "outcome",
- "name": "DeleteSOTNConnectivityInstance",
- "xml": "<outcome value='DeleteSOTNConnectivityInstance'>",
- "comments": "",
- "outputs": 1,
- "x": 1501.7435417175293,
- "y": 1457.6269524097443,
- "z": "2db908be.484d28",
- "wires": [
- [
- "37fda84e.b42608"
- ]
- ]
- },
- {
- "id": "37fda84e.b42608",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:sotn-network-topology-operation-delete",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-delete' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1968.6323585510254,
- "y": 1459.849134683609,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "81ef432e.c5cd2",
- "type": "outcome",
- "name": "other",
- "xml": "<outcome value='other'>",
- "comments": "",
- "outputs": 1,
- "x": 1421.0767822265625,
- "y": 1564.848998785019,
- "z": "2db908be.484d28",
- "wires": [
- [
- "21f7416d.44262e"
- ]
- ]
- },
- {
- "id": "e792c2b8.ea131",
- "type": "outcome",
- "name": "ActivateSOTNConnectivityInstance",
- "xml": "<outcome value='ActivateSOTNConnectivityInstance'>",
- "comments": "",
- "outputs": 1,
- "x": 1155.4548530578613,
- "y": 246.01040053367615,
- "z": "2db908be.484d28",
- "wires": [
- [
- "284dd097.c8e25"
- ]
- ]
- },
- {
- "id": "284dd097.c8e25",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:sotn-network-topology-operation-activate",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-activate' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1580.6770095825195,
- "y": 242.24494303856045,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "49021010.79466",
- "type": "outcome",
- "name": "DeActivateDCINetworkInstance",
- "xml": "<outcome value='DeActivateDCINetworkInstance'>",
- "comments": "",
- "outputs": 1,
- "x": 1146.5555610656738,
- "y": 574.9999940395355,
- "z": "2db908be.484d28",
- "wires": [
- [
- "8f0d395a.fe6d58"
- ]
- ]
- },
- {
- "id": "8f0d395a.fe6d58",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:dci-connects-network-topology-operation-deactivate",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='dci-connects-network-topology-operation-deactivate' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1621.5557823181152,
- "y": 573.6668121814728,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "960249a0.73e4e8",
- "type": "outcome",
- "name": "ActivateSDWANConnectivityInstance",
- "xml": "<outcome value='ActivateSDWANConnectivityInstance'>",
- "comments": "",
- "outputs": 1,
- "x": 1152.0000228881836,
- "y": 341.00001883506775,
- "z": "2db908be.484d28",
- "wires": [
- [
- "8e724d0c.12ad"
- ]
- ]
- },
- {
- "id": "8e724d0c.12ad",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:sdwan-network-topology-operation-activate",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-activate' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1595.0002136230469,
- "y": 338.6668474674225,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "2ff099ca.196ee6",
- "type": "outcome",
- "name": "DeactivateSDWANConnectivityInstance",
- "xml": "<outcome value='DeactivateSDWANConnectivityInstance'>",
- "comments": "",
- "outputs": 1,
- "x": 1164,
- "y": 627.9999997615814,
- "z": "2db908be.484d28",
- "wires": [
- [
- "5313db5b.ba3784"
- ]
- ]
- },
- {
- "id": "5313db5b.ba3784",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:sdwan-network-topology-operation-deactivate",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-deactivate' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1607.0001907348633,
- "y": 625.6668283939362,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "fe173c3b.37ab5",
- "type": "outcome",
- "name": "CreateSDWANConnectivityInstance",
- "xml": "<outcome value='CreateSDWANConnectivityInstance'>",
- "comments": "",
- "outputs": 1,
- "x": 1510,
- "y": 1312.9999997615814,
- "z": "2db908be.484d28",
- "wires": [
- [
- "55f558b0.f98bd8"
- ]
- ]
- },
- {
- "id": "55f558b0.f98bd8",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:sdwan-network-topology-operation-create",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-create' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1953.0001907348633,
- "y": 1310.6668283939362,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "ad7b9fb5.8def5",
- "type": "outcome",
- "name": "DeleteSDWANConnectivityInstance",
- "xml": "<outcome value='DeleteSDWANConnectivityInstance'>",
- "comments": "",
- "outputs": 1,
- "x": 1503,
- "y": 1507.9999997615814,
- "z": "2db908be.484d28",
- "wires": [
- [
- "483a39e2.dfbcc8"
- ]
- ]
- },
- {
- "id": "483a39e2.dfbcc8",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:sdwan-network-topology-operation-delete",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-delete' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1969.888816833496,
- "y": 1510.2221820354462,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- },
- {
- "id": "3a527742.291048",
- "type": "other",
- "name": "reoptimize",
- "xml": "<outcome value='reoptimize'>\n",
- "comments": "",
- "outputs": 1,
- "x": 653,
- "y": 1074,
- "z": "2db908be.484d28",
- "wires": [
- [
- "8989e10f.fcf5f"
- ]
- ]
- },
- {
- "id": "8989e10f.fcf5f",
- "type": "switchNode",
- "name": "switch request-action",
- "xml": "<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
- "comments": "",
- "outputs": 1,
- "x": 842,
- "y": 1076,
- "z": "2db908be.484d28",
- "wires": [
- [
- "c0517ae5.fea898"
- ]
- ]
- },
- {
- "id": "c0517ae5.fea898",
- "type": "outcome",
- "name": "ReoptimizeSOTNInstance",
- "xml": "<outcome value='ReoptimizeSOTNInstance'>",
- "comments": "",
- "outputs": 1,
- "x": 1472,
- "y": 1641,
- "z": "2db908be.484d28",
- "wires": [
- [
- "70bb459.77727bc"
- ]
- ]
- },
- {
- "id": "70bb459.77727bc",
- "type": "call",
- "name": "call GENERIC-RESOURCE-API:sotn-network-topology-operation-reoptimize",
- "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-reoptimize' mode='sync' >\n",
- "comments": "",
- "outputs": 1,
- "x": 1913,
- "y": 1636,
- "z": "2db908be.484d28",
- "wires": [
- []
- ]
- }
-]
+[{
+ "id": "cda9cb25.008878",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 116.00390625,
+ "y": 127.00390625,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["62bd4bd7.3ee3c4"]
+ ]
+}, {
+ "id": "62bd4bd7.3ee3c4",
+ "type": "service-logic",
+ "name": "GENERIC-RESOURCE-API ${project.version}",
+ "module": "GENERIC-RESOURCE-API",
+ "version": "${project.version}",
+ "comments": "",
+ "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
+ "outputs": 1,
+ "x": 197.95626831054688,
+ "y": 167.242018699646,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["92bec9ff.3ca028"]
+ ]
+}, {
+ "id": "92bec9ff.3ca028",
+ "type": "method",
+ "name": "network-topology-operation",
+ "xml": "<method rpc='network-topology-operation' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 177.4325408935547,
+ "y": 218.0039119720459,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["787d9954.38bba8"]
+ ]
+}, {
+ "id": "648b626a.56b11c",
+ "type": "comment",
+ "name": " NETWORK-TOPOLOGY-OPERATION ",
+ "info": "",
+ "comments": "",
+ "x": 510.34876251220703,
+ "y": 74.59025001525879,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "787d9954.38bba8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 230.00393676757812,
+ "y": 290.44738960266113,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["fa0c17ce.6e7bc8", "fadbb13.7d2dd5", "dc48dc75.75815", "7270aff7.976ff"]
+ ]
+}, {
+ "id": "fa0c17ce.6e7bc8",
+ "type": "returnSuccess",
+ "name": "return success",
+ "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n",
+ "comments": "",
+ "x": 434.0873107910156,
+ "y": 1316.5400428771973,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "fadbb13.7d2dd5",
+ "type": "switchNode",
+ "name": "switch svc-action",
+ "xml": "<switch test='`$network-topology-operation-input.sdnc-request-header.svc-action`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 456.7181701660156,
+ "y": 520.861083984375,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["c05cc8a9.a87538", "8c9c980d.ccc4f8", "8bf526ae.923e18", "7de8f4ae.cff8ac", "26afc371.40355c", "bb05b811.ebde68", "1a44c3fe.115f5c", "315bf1cb.32141e"]
+ ]
+}, {
+ "id": "c05cc8a9.a87538",
+ "type": "other",
+ "name": "assign",
+ "xml": "<outcome value='assign'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 671.194408416748,
+ "y": 293.1467628479004,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["5bf1acae.be9164"]
+ ]
+}, {
+ "id": "5bf1acae.be9164",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 843.4325790405273,
+ "y": 291.1468915939331,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["e342989e.94fd28"]
+ ]
+}, {
+ "id": "dc48dc75.75815",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:validate-network-input",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='validate-network-input' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 567.0038948059082,
+ "y": 231.0039131641388,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "8c9c980d.ccc4f8",
+ "type": "other",
+ "name": "activate",
+ "xml": "<outcome value='activate'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 674.0039482116699,
+ "y": 383.0039005279541,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["e028738c.44a5e"]
+ ]
+}, {
+ "id": "647e7eaa.31279",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1129.2422637939453,
+ "y": 468.00415229797363,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["794617b.1131ce8", "ba635494.f7cda8", "5f3efec5.a1f4d"]
+ ]
+}, {
+ "id": "b8d794c5.efea38",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:network-topology-operation-activate",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-activate' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2321.063835144043,
+ "y": 971.6111488342285,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "8bf526ae.923e18",
+ "type": "other",
+ "name": "deactivate",
+ "xml": "<outcome value='deactivate'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 668.0039405822754,
+ "y": 615.0038986206055,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["cf3c1895.618e38"]
+ ]
+}, {
+ "id": "55cb30ff.95ca3",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1105.2422409057617,
+ "y": 855.0042123794556,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["794617b.1131ce8", "7bec74e2.e8459c", "5f3efec5.a1f4d"]
+ ]
+}, {
+ "id": "7bec74e2.e8459c",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:network-topology-operation-deactivate",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-deactivate' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1649.2304382324219,
+ "y": 1059.8611965179443,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "7de8f4ae.cff8ac",
+ "type": "other",
+ "name": "unassign",
+ "xml": "<outcome value='unassign'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 665.0039596557617,
+ "y": 867.0039482116699,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["cc00dd86.d7918"]
+ ]
+}, {
+ "id": "cc00dd86.d7918",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 846.2421188354492,
+ "y": 868.0040702819824,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["794617b.1131ce8", "8d92f87.3b71108", "5f3efec5.a1f4d"]
+ ]
+}, {
+ "id": "7ba153c5.8b3f2c",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:network-topology-operation-unassign",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-unassign' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2316.8136978149414,
+ "y": 1165.1111183166504,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "26afc371.40355c",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 649.0039596557617,
+ "y": 1122.0039448738098,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["14623740.584dd9"]
+ ]
+}, {
+ "id": "14623740.584dd9",
+ "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-action is a required input\" />\n",
+ "comments": "",
+ "x": 831.0039558410645,
+ "y": 1121.003954410553,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "7270aff7.976ff",
+ "type": "set",
+ "name": "Set final indicator to Y",
+ "xml": "<set>\n<parameter name=\"ack-final\" value=\"Y\"/>",
+ "comments": "",
+ "x": 453.11500549316406,
+ "y": 1275.6983814239502,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "c06efb45.ffaa78",
+ "type": "for",
+ "name": "for nidx..service-data.networks.network[]",
+ "xml": "<for index='nidx' start='0' end='`$service-data.networks.network_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2185.734363555908,
+ "y": 509.7658576965332,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["c1a437ff.1b7718"]
+ ]
+}, {
+ "id": "794617b.1131ce8",
+ "type": "switchNode",
+ "name": "switch service-data.networks.network_length",
+ "xml": "<switch test='`$service-data.networks.network_length`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1463.1985206604004,
+ "y": 478.0872497558594,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["26994831.0e1298", "ecf2ea88.0ee378"]
+ ]
+}, {
+ "id": "26994831.0e1298",
+ "type": "other",
+ "name": "outcome Null",
+ "xml": "<outcome value=''>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1762.448398590088,
+ "y": 476.33724784851074,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["55f21fbf.094db"]
+ ]
+}, {
+ "id": "ecf2ea88.0ee378",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1716.448429107666,
+ "y": 509.3372688293457,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["b06a60a0.ec18c"]
+ ]
+}, {
+ "id": "c1a437ff.1b7718",
+ "type": "switchNode",
+ "name": "switch networkid found",
+ "xml": "<switch test=\"`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2476.162914276123,
+ "y": 509.01594161987305,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["dc253be8.d2cc08"]
+ ]
+}, {
+ "id": "dc253be8.d2cc08",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2665.1152687072754,
+ "y": 509.9086799621582,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["db34e276.b7ef7"]
+ ]
+}, {
+ "id": "db34e276.b7ef7",
+ "type": "set",
+ "name": "set tmp.nidx and network-data",
+ "xml": "<set>\n<parameter name='tmp.nidx' value='`$nidx`' />\n<parameter name='network-data.' value='`$service-data.networks.network[$nidx].`' />\n",
+ "comments": "",
+ "x": 2898.6470375061035,
+ "y": 508.65868759155273,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "810ee0f6.12029",
+ "type": "comment",
+ "name": "Find the index to service data for this network - save id in tmp.nidx, save service-data",
+ "info": "",
+ "comments": "",
+ "x": 1613.559814453125,
+ "y": 443.33726978302,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "faca6d42.ad164",
+ "type": "comment",
+ "name": "service-data will not be stored until we have a network-id",
+ "info": "",
+ "comments": "",
+ "x": 1181.6707000732422,
+ "y": 72.22616004943848,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "55f21fbf.094db",
+ "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.network-request-input.network-id not found in service-data\" />\n",
+ "comments": "",
+ "x": 1954.2259559631348,
+ "y": 474.22624588012695,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "b06a60a0.ec18c",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1883.7183952331543,
+ "y": 508.891845703125,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["c06efb45.ffaa78", "56e75e01.1337c"]
+ ]
+}, {
+ "id": "56e75e01.1337c",
+ "type": "switchNode",
+ "name": "switch tmp.nidx ",
+ "xml": "<switch test=\"`$tmp.nidx`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2112.7859077453613,
+ "y": 559.2490568161011,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["c0593450.c30c98", "2cfecf83.4d66"]
+ ]
+}, {
+ "id": "38dfaef5.ab0d82",
+ "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.network-request-input.network-id not found in service-data\" />\n",
+ "comments": "",
+ "x": 2465.642890930176,
+ "y": 554.9632987976074,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "c0593450.c30c98",
+ "type": "outcome",
+ "name": "NULL",
+ "xml": "<outcome value=''>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2284.214443206787,
+ "y": 557.820442199707,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["38dfaef5.ab0d82"]
+ ]
+}, {
+ "id": "ba635494.f7cda8",
+ "type": "switchNode",
+ "name": "switch network-level-oper-status",
+ "xml": "<switch test='`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1534.0320663452148,
+ "y": 971.5625495910645,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["f777a5ff.1ff918", "65fed18b.d3691"]
+ ]
+}, {
+ "id": "f777a5ff.1ff918",
+ "type": "outcome",
+ "name": "outcome PendingCreate",
+ "xml": "<outcome value='PendingCreate'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1899.0320460001622,
+ "y": 971.5625343322754,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["b8d794c5.efea38"]
+ ]
+}, {
+ "id": "65fed18b.d3691",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1849.0320930480957,
+ "y": 1011.5625648498535,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["ad2b7f81.8f2fa"]
+ ]
+}, {
+ "id": "ad2b7f81.8f2fa",
+ "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 is not in appropriate state for activate. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`\" />",
+ "comments": "",
+ "x": 2019.0320930480957,
+ "y": 1011.5625648498535,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "8d92f87.3b71108",
+ "type": "switchNode",
+ "name": "switch network-level-oper-status",
+ "xml": "<switch test='`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1523.6350784301758,
+ "y": 1166.7153205871582,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["2bf6a461.e029dc", "1dc42825.9e33e8", "3c21ea48.9e0a06"]
+ ]
+}, {
+ "id": "2bf6a461.e029dc",
+ "type": "outcome",
+ "name": "outcome PendingCreate",
+ "xml": "<outcome value='PendingCreate'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1883.6350479125977,
+ "y": 1166.7153511047363,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["7ba153c5.8b3f2c"]
+ ]
+}, {
+ "id": "1dc42825.9e33e8",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1839.3849716186523,
+ "y": 1238.2154140472412,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["77f1e70c.bfe408"]
+ ]
+}, {
+ "id": "77f1e70c.bfe408",
+ "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 is not in appropriate state for unassign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`\" />",
+ "comments": "",
+ "x": 2030.718391418457,
+ "y": 1236.8820428848267,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "3c21ea48.9e0a06",
+ "type": "outcome",
+ "name": "outcome PendingDelete",
+ "xml": "<outcome value='PendingDelete'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1886.8652725219727,
+ "y": 1204.5625190734863,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["7ba153c5.8b3f2c"]
+ ]
+}, {
+ "id": "bb05b811.ebde68",
+ "type": "other",
+ "name": "changeassign",
+ "xml": "<outcome value='changeassign'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 676.003978729248,
+ "y": 518.0039310455322,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["8f942ed8.86388"]
+ ]
+}, {
+ "id": "8f942ed8.86388",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1048.2539176940918,
+ "y": 515.0039224624634,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["794617b.1131ce8", "66843091.29a36"]
+ ]
+}, {
+ "id": "42b0a6db.432d98",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:network-topology-operation-assign",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-assign' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1817.0041007995605,
+ "y": 213.0039234161377,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "e342989e.94fd28",
+ "type": "switchNode",
+ "name": "switch network-level-oper-status",
+ "xml": "<switch test='`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1112.9721565246582,
+ "y": 150.95531463623047,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["40bb733e.dd6f7c", "b0f9b859.068648", "593782df.da509c", "387e750f.af463a"]
+ ]
+}, {
+ "id": "40bb733e.dd6f7c",
+ "type": "outcome",
+ "name": "outcome PendingCreate",
+ "xml": "<outcome value='PendingCreate'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1498.9722023010254,
+ "y": 170.95529651641846,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["511a23b5.730e6c"]
+ ]
+}, {
+ "id": "b0f9b859.068648",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1446.9721984863281,
+ "y": 212.9553279876709,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["42b0a6db.432d98"]
+ ]
+}, {
+ "id": "511a23b5.730e6c",
+ "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 is not in appropriate state for assign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`\" />",
+ "comments": "",
+ "x": 1773.9724235534668,
+ "y": 166.9553451538086,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "387e750f.af463a",
+ "type": "outcome",
+ "name": "outcome PendingDelete",
+ "xml": "<outcome value='PendingDelete'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1497.0039405822754,
+ "y": 136.0039119720459,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["511a23b5.730e6c"]
+ ]
+}, {
+ "id": "593782df.da509c",
+ "type": "outcome",
+ "name": "outcome Created",
+ "xml": "<outcome value='Created'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1477.003978729248,
+ "y": 101.00391387939453,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["511a23b5.730e6c"]
+ ]
+}, {
+ "id": "66843091.29a36",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:network-topology-operation-changeassign",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-changeassign' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1626.2503128051758,
+ "y": 903.5000400543213,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "5f3efec5.a1f4d",
+ "type": "switchNode",
+ "name": "switch network-information.network-instance-group-id",
+ "xml": "<switch test='`$network-topology-operation-input.network-information.network-instance-group-id`'>\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1538.442554473877,
+ "y": 735.5049266815186,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["284c8b6d.7f3634", "7a92615c.c2127"]
+ ]
+}, {
+ "id": "284c8b6d.7f3634",
+ "type": "other",
+ "name": "Other",
+ "xml": "<outcome value='Other'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1825.1924362182617,
+ "y": 773.6715936660767,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["a50032f5.72a83"]
+ ]
+}, {
+ "id": "7a92615c.c2127",
+ "type": "other",
+ "name": "NULL",
+ "xml": "<outcome value=''>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1822.85933303833,
+ "y": 740.6714677810669,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["b4f37512.d70bb8"]
+ ]
+}, {
+ "id": "b4f37512.d70bb8",
+ "type": "returnSuccess",
+ "name": "return success",
+ "xml": "<return status='success'>\n",
+ "comments": "",
+ "x": 1983.1925621032715,
+ "y": 737.6715250015259,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "fe324586.0b55a8",
+ "type": "switchNode",
+ "name": "service-data.network-instance-groups.network-instance-group_length",
+ "xml": "<switch test='`$service-data.network-instance-groups.network-instance-group_length`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2318.2681770324707,
+ "y": 766.9373426437378,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["e21d92d1.3db16", "3beb03c.3e8d3fc"]
+ ]
+}, {
+ "id": "e21d92d1.3db16",
+ "type": "other",
+ "name": "outcome Null",
+ "xml": "<outcome value=''>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2677.517868041992,
+ "y": 723.9373455047607,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["b8fb72eb.e727c"]
+ ]
+}, {
+ "id": "3beb03c.3e8d3fc",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2657.517868041992,
+ "y": 758.9373455047607,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["48f28981.9aa598"]
+ ]
+}, {
+ "id": "a50032f5.72a83",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1959.3036918640137,
+ "y": 774.1159982681274,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["fe324586.0b55a8"]
+ ]
+}, {
+ "id": "7d5793c9.a9443c",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4081.5116844177246,
+ "y": 702.14794921875,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["a95997cc.c83c08"]
+ ]
+}, {
+ "id": "15a71d4.a9638e3",
+ "type": "set",
+ "name": "set tmp.ngidx and ctx.network-instance-group-data",
+ "xml": "<set>\n<parameter name='tmp.ngidx' value='`$ngidx`' />\n<parameter name='ctx.network-instance-group-data.' value='`$service-data.network-instance-groups.network-instance-group[$ngidx].`' />\n",
+ "comments": "",
+ "x": 4524.043651580811,
+ "y": 701.8979740142822,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "a95997cc.c83c08",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4230.130123138428,
+ "y": 702.0051345825195,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["15a71d4.a9638e3"]
+ ]
+}, {
+ "id": "a82beca.188501",
+ "type": "for",
+ "name": "for ngidx..service-data.network-instance-groups.network-instance-group[]",
+ "xml": "<for index='ngidx' start='0' end='`$service-data.network-instance-groups.network-instance-_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3264.3800888061523,
+ "y": 762.254921913147,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["14adc4b7.e22c9b"]
+ ]
+}, {
+ "id": "14adc4b7.e22c9b",
+ "type": "switchNode",
+ "name": "switch network-instance-group-id found",
+ "xml": "<switch test=\"`$service-data.network-instance-groups.network-instance-group[$nidx].network-instance-group-id == $network-topology-operation-input.network-information.network-instance-group-id`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3709.8086853027344,
+ "y": 762.005090713501,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["7d5793c9.a9443c"]
+ ]
+}, {
+ "id": "48f28981.9aa598",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2876.363967895508,
+ "y": 760.1308469772339,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["a82beca.188501"]
+ ]
+}, {
+ "id": "b8fb72eb.e727c",
+ "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.network-request-input.network-instance-group-id not found in service-data\" />\n",
+ "comments": "",
+ "x": 2869.0675201416016,
+ "y": 723.5049123764038,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "2cfecf83.4d66",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2283.7500953674316,
+ "y": 588.7500247955322,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["46a8714e.72c73"]
+ ]
+}, {
+ "id": "46a8714e.72c73",
+ "type": "set",
+ "name": "set nidx",
+ "xml": "<set>\n<parameter name='nidx' value='`$tmp.nidx`' />\n",
+ "comments": "",
+ "x": 2440.7500953674316,
+ "y": 589.7500247955322,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "e028738c.44a5e",
+ "type": "switchNode",
+ "name": "switch request-action",
+ "xml": "<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 865.1150932312012,
+ "y": 375.45883655548096,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["4b5ff3a1.79dd3c", "7a80b9c3.a5dcb8", "c5dccdb2.4a1d2", "6dd58869.b5c168"]
+ ]
+}, {
+ "id": "4b5ff3a1.79dd3c",
+ "type": "outcome",
+ "name": "ActivateDCINetworkInstance",
+ "xml": "<outcome value='ActivateDCINetworkInstance'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1161.4483184814453,
+ "y": 320.4586658477783,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["67b5a7fb.45ef88"]
+ ]
+}, {
+ "id": "67b5a7fb.45ef88",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:dci-connects-network-topology-operation-activate",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='dci-connects-network-topology-operation-activate' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1676.4483947753906,
+ "y": 320.12549781799316,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "7a80b9c3.a5dcb8",
+ "type": "outcome",
+ "name": "other",
+ "xml": "<outcome value='other'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 998.4484367370605,
+ "y": 425.12542152404785,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["bf8db20a.91bed"]
+ ]
+}, {
+ "id": "cf3c1895.618e38",
+ "type": "switchNode",
+ "name": "switch request-action",
+ "xml": "<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 869.6706428527832,
+ "y": 616.9032173156738,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["cbdbb0cc.f0331", "5badbdc.f46d244", "7e6d0610.2563c8", "13b9136d.b8ff1d"]
+ ]
+}, {
+ "id": "cbdbb0cc.f0331",
+ "type": "outcome",
+ "name": "DeactivateSOTNConnectivityInstance",
+ "xml": "<outcome value='DeactivateSOTNConnectivityInstance'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1159.4485206604004,
+ "y": 561.1253547668457,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["49a424cb.12dbec"]
+ ]
+}, {
+ "id": "5badbdc.f46d244",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1018.8936080932617,
+ "y": 707.8169631958008,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["e396e5dc.9253f8"]
+ ]
+}, {
+ "id": "49a424cb.12dbec",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:sotn-network-topology-operation-deactivate",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-deactivate' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1650.8057861328125,
+ "y": 559.408727645874,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "1a44c3fe.115f5c",
+ "type": "other",
+ "name": "create",
+ "xml": "<outcome value='create'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 655.3374099731445,
+ "y": 956.2367563247681,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["45693d0f.b52f34"]
+ ]
+}, {
+ "id": "45693d0f.b52f34",
+ "type": "switchNode",
+ "name": "switch request-action",
+ "xml": "<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 855.6512298583984,
+ "y": 956.0144290924072,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["779b6195.9f707", "620d8e1f.fb138", "3ab6b5e.164cc4a"]
+ ]
+}, {
+ "id": "315bf1cb.32141e",
+ "type": "other",
+ "name": "delete",
+ "xml": "<outcome value='delete'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 653.3374137878418,
+ "y": 1033.2367601394653,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["93e17ab4.f42768"]
+ ]
+}, {
+ "id": "93e17ab4.f42768",
+ "type": "switchNode",
+ "name": "switch request-action",
+ "xml": "<switch test='`$network-topology-operation-input.request-information.request-action`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 855.6256713867188,
+ "y": 1034.2975606918335,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["bead6e63.0cea2", "2c6e7786.59c9d8", "dd8b829c.98de2"]
+ ]
+}, {
+ "id": "f074082c.642148",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1587.4487915039062,
+ "y": 1447.1256427764893,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["e2f268db.e09cb8"]
+ ]
+}, {
+ "id": "273eee3d.625232",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1553.8930892944336,
+ "y": 1742.681453704834,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["26e1cb1f.5ee944"]
+ ]
+}, {
+ "id": "e2f268db.e09cb8",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:network-topology-operation-create",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-create' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1953.115234375,
+ "y": 1443.5702953338623,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "26e1cb1f.5ee944",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:network-topology-operation-delete",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-delete' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1918.8930130004883,
+ "y": 1741.6813821792603,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "779b6195.9f707",
+ "type": "outcome",
+ "name": "other",
+ "xml": "<outcome value='other'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1417.6512145996094,
+ "y": 1392.9031620025635,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["2bb8422a.2e625e"]
+ ]
+}, {
+ "id": "620d8e1f.fb138",
+ "type": "outcome",
+ "name": "CreateSOTNConnectivityInstance",
+ "xml": "<outcome value='CreateSOTNConnectivityInstance'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1497.317943572998,
+ "y": 1293.6810633102432,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["cd4e7eb6.ff6ff"]
+ ]
+}, {
+ "id": "cd4e7eb6.ff6ff",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:sotn-network-topology-operation-create",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-create' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1976.2067604064941,
+ "y": 1295.903245584108,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "2c6e7786.59c9d8",
+ "type": "outcome",
+ "name": "DeleteSOTNConnectivityInstance",
+ "xml": "<outcome value='DeleteSOTNConnectivityInstance'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1490.7371063232422,
+ "y": 1550.85329246521,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["19f1388e.0fadf7"]
+ ]
+}, {
+ "id": "19f1388e.0fadf7",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:sotn-network-topology-operation-delete",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-delete' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1957.6259231567383,
+ "y": 1553.0754747390747,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "bead6e63.0cea2",
+ "type": "outcome",
+ "name": "other",
+ "xml": "<outcome value='other'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1409.0702438354492,
+ "y": 1662.0754313468933,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["1fe426ab.fd1089"]
+ ]
+}, {
+ "id": "c5dccdb2.4a1d2",
+ "type": "outcome",
+ "name": "ActivateSOTNConnectivityInstance",
+ "xml": "<outcome value='ActivateSOTNConnectivityInstance'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1181.4484100341797,
+ "y": 271.23657417297363,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["2dd1b08b.8bc5e"]
+ ]
+}, {
+ "id": "2dd1b08b.8bc5e",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:sotn-network-topology-operation-activate",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-activate' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1635.6706237792969,
+ "y": 272.4711055755615,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "7e6d0610.2563c8",
+ "type": "outcome",
+ "name": "DeActivateDCINetworkInstance",
+ "xml": "<outcome value='DeActivateDCINetworkInstance'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1139.5490608215332,
+ "y": 604.2261543273926,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["39e58430.1a297c"]
+ ]
+}, {
+ "id": "39e58430.1a297c",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:dci-connects-network-topology-operation-deactivate",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='dci-connects-network-topology-operation-deactivate' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1679.5494384765625,
+ "y": 607.8929653167725,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "6dd58869.b5c168",
+ "type": "outcome",
+ "name": "ActivateSDWANConnectivityInstance",
+ "xml": "<outcome value='ActivateSDWANConnectivityInstance'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1182.9935455322266,
+ "y": 371.2261791229248,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["9662796.a381e88"]
+ ]
+}, {
+ "id": "9662796.a381e88",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:sdwan-network-topology-operation-activate",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-activate' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1702.9937438964844,
+ "y": 365.89303398132324,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "13b9136d.b8ff1d",
+ "type": "outcome",
+ "name": "DeactivateSDWANConnectivityInstance",
+ "xml": "<outcome value='DeactivateSDWANConnectivityInstance'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1156.9934997558594,
+ "y": 657.2261600494385,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["407f818a.a3f1e"]
+ ]
+}, {
+ "id": "407f818a.a3f1e",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:sdwan-network-topology-operation-deactivate",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-deactivate' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1670.9937744140625,
+ "y": 654.893012046814,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "3ab6b5e.164cc4a",
+ "type": "outcome",
+ "name": "CreateSDWANConnectivityInstance",
+ "xml": "<outcome value='CreateSDWANConnectivityInstance'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1502.9934997558594,
+ "y": 1342.2261600494385,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["26a8274b.85d1f8"]
+ ]
+}, {
+ "id": "26a8274b.85d1f8",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:sdwan-network-topology-operation-create",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-create' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1945.9936904907227,
+ "y": 1339.8929886817932,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "dd8b829c.98de2",
+ "type": "outcome",
+ "name": "DeleteSDWANConnectivityInstance",
+ "xml": "<outcome value='DeleteSDWANConnectivityInstance'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1491.993564605713,
+ "y": 1601.2263398170471,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["a36aa3d0.1a854"]
+ ]
+}, {
+ "id": "a36aa3d0.1a854",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:sdwan-network-topology-operation-delete",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-delete' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1958.882381439209,
+ "y": 1603.4485220909119,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "bf8db20a.91bed",
+ "type": "execute",
+ "name": "contains wan-connection",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n <parameter name=\"source\" value=\"`$network-topology-operation-input.service-information.onap-model-information.model-name`\"/>\n <parameter name=\"target\" value=\"wan-connection\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1188.8993453979492,
+ "y": 410.2326798439026,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["a4b8222c.37fd2", "f38dc6c7.31f8f8"]
+ ]
+}, {
+ "id": "a4b8222c.37fd2",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1394.899398803711,
+ "y": 405.34375190734863,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["cfa31.bc3ac5cf8"]
+ ]
+}, {
+ "id": "cfa31.bc3ac5cf8",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:wan-connection-topology-operation-activate",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='wan-connection-topology-operation-activate' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1779.8994979858398,
+ "y": 407.34376525878906,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "f38dc6c7.31f8f8",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 967.1215209960938,
+ "y": 472.2326354980469,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["647e7eaa.31279"]
+ ]
+}, {
+ "id": "e396e5dc.9253f8",
+ "type": "execute",
+ "name": "contains wan-connection",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n <parameter name=\"source\" value=\"`$network-topology-operation-input.service-information.onap-model-information.model-name`\"/>\n <parameter name=\"target\" value=\"wan-connection\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1204.6771087646484,
+ "y": 698.4548931121826,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["16dbb839.f33278", "5d50fb2f.744eb4"]
+ ]
+}, {
+ "id": "16dbb839.f33278",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1405.6772651672363,
+ "y": 697.5659255981445,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["db483123.c7a64"]
+ ]
+}, {
+ "id": "db483123.c7a64",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:wan-connection-topology-operation-deactivate",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='wan-connection-topology-operation-deactivate' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1771.677230834961,
+ "y": 694.5659408569336,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "5d50fb2f.744eb4",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1051.677158355713,
+ "y": 761.3437719345093,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["55cb30ff.95ca3"]
+ ]
+}, {
+ "id": "2bb8422a.2e625e",
+ "type": "execute",
+ "name": "contains wan-connection",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n <parameter name=\"source\" value=\"`$network-topology-operation-input.service-information.onap-model-information.model-name`\"/>\n <parameter name=\"target\" value=\"wan-connection\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1602.899398803711,
+ "y": 1398.899284362793,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["f0fc160f.719fc8", "19b66d7a.3c5d03"]
+ ]
+}, {
+ "id": "19b66d7a.3c5d03",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1409.8993377685547,
+ "y": 1445.7882862091064,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["f074082c.642148"]
+ ]
+}, {
+ "id": "f0fc160f.719fc8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1808.899471282959,
+ "y": 1391.010341644287,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["b831c9c0.001f08"]
+ ]
+}, {
+ "id": "b831c9c0.001f08",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:wan-connection-topology-operation-create",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='wan-connection-topology-operation-create' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2167.899398803711,
+ "y": 1392.0103950500488,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "1fe426ab.fd1089",
+ "type": "execute",
+ "name": "contains wan-connection",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n <parameter name=\"source\" value=\"`$network-topology-operation-input.service-information.onap-model-information.model-name`\"/>\n <parameter name=\"target\" value=\"wan-connection\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1615.56591796875,
+ "y": 1670.232666015625,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["ff1ea989.df69b8", "d8afda97.54c288"]
+ ]
+}, {
+ "id": "d8afda97.54c288",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1400.565933227539,
+ "y": 1746.1215896606445,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["273eee3d.625232"]
+ ]
+}, {
+ "id": "ff1ea989.df69b8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1816.566074371338,
+ "y": 1669.343698501587,
+ "z": "6262cf90.82826",
+ "wires": [
+ ["bae544d2.711e28"]
+ ]
+}, {
+ "id": "bae544d2.711e28",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:wan-connection-topology-operation-deactivate",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='wan-connection-topology-operation-deactivate' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2182.5660400390625,
+ "y": 1666.343713760376,
+ "z": "6262cf90.82826",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "8343f26d.19336",
+ "type": "set",
+ "name": "set network-level-oper-status",
+ "xml": "<set>\n<parameter name='service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status' value='Created' />\n<parameter name='service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.last-rpc-action' value='`$network-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.last-action' value='`$network-topology-operation-input.request-information.request-action`' />\n",
+ "comments": "",
+ "x": 504.79057693481445,
+ "y": 1227.1833486557007,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "fc4f404.28de9c",
+ "type": "set",
+ "name": "set object-path",
+ "xml": "<set>\n<parameter name='network-object-path' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $network-topology-operation-input.service-information.service-instance-id\n + '/service-data/networks/network/'\n + $networkId\n + '/network-data/network-topology/'` \" />\n \n",
+ "comments": "",
+ "x": 462.5048828125,
+ "y": 1181.7548751831055,
+ "z": "6262cf90.82826",
+ "wires": []
+}, {
+ "id": "b8117e21.6ea85",
+ "type": "set",
+ "name": "set networkId",
+ "xml": "<set>\n<parameter name='networkId' value='`$network-topology-operation-input.network-information.network-id`' />\n",
+ "comments": "",
+ "x": 456.7905158996582,
+ "y": 1144.6119832992554,
+ "z": "6262cf90.82826",
+ "wires": []
+}] \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-activate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-activate.json
new file mode 100644
index 00000000..5fd9bb3c
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-activate.json
@@ -0,0 +1,890 @@
+[{
+ "id": "17edfd48.067fb3",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 100.01040649414062,
+ "y": 68.01041412353516,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["e615e2a2.ccf4f"]
+ ]
+}, {
+ "id": "e615e2a2.ccf4f",
+ "type": "service-logic",
+ "name": "GENERIC-RESOURCE-API ${project.version}",
+ "module": "GENERIC-RESOURCE-API",
+ "version": "${project.version}",
+ "comments": "",
+ "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
+ "outputs": 1,
+ "x": 312.0104103088379,
+ "y": 140.01043128967285,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["759cd8cf.a97478"]
+ ]
+}, {
+ "id": "759cd8cf.a97478",
+ "type": "method",
+ "name": "wan-connection-topology-operation-activate",
+ "xml": "<method rpc='wan-connection-topology-operation-activate' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 300.0105285644531,
+ "y": 228.01041412353516,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["6de8279c.d96f18"]
+ ]
+}, {
+ "id": "edd7fd49.09b45",
+ "type": "execute",
+ "name": "execute Properties",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\n <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />\n <parameter name='contextPrefix' value='prop' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 687.0106887817383,
+ "y": 312.0104856491089,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "e02df58.543ea08",
+ "type": "returnSuccess",
+ "name": "return success",
+ "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n",
+ "comments": "",
+ "x": 287.0104217529297,
+ "y": 1177.010627746582,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "6de8279c.d96f18",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 212.51060485839844,
+ "y": 669.0105495452881,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["c3c817be.4ef968", "ad2c5957.526e98", "ee7ba6fd.384b18", "569cdb0d.3aa8c4", "336b6524.04896a", "edd7fd49.09b45", "e02df58.543ea08"]
+ ]
+}, {
+ "id": "c3c817be.4ef968",
+ "type": "execute",
+ "name": "generate services url",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$prop.network-provided-resource`\"/>\n <parameter name=\"outputPath\" value=\"tmp.services-url\"/>\n <parameter name=\"target\" value=\"{service-instance-id}\"/>\n <parameter name=\"replacement\" value=\"`$network-topology-operation-input.service-information.service-id`\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 673.0106735229492,
+ "y": 383.0105857849121,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "ad2c5957.526e98",
+ "type": "execute",
+ "name": "execute RestApiCallNode - get-resource parent service data",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.services-url`' />\n <parameter name='restapiUser' value='`$prop.controller.user`' />\n <parameter name='restapiPassword' value='`$prop.controller.pwd`' />\n <parameter name='format' value='json' />\n <parameter name='httpMethod' value='GET' />\n <parameter name=\"responsePrefix\" value=\"mdsal-psd\" />\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 799.0106735229492,
+ "y": 460.0105857849121,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["649fc773.be7288", "2c3dd512.e7091a"]
+ ]
+}, {
+ "id": "649fc773.be7288",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1146.010856628418,
+ "y": 411.0105857849121,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["27ee6d28.0b0992"]
+ ]
+}, {
+ "id": "27ee6d28.0b0992",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1313.0109329223633,
+ "y": 445.0106463432312,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "2c3dd512.e7091a",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1151.8626289367676,
+ "y": 494.07674503326416,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["a4f3ebc3.28d808"]
+ ]
+}, {
+ "id": "a4f3ebc3.28d808",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: Parent service data not available\" />\n \n",
+ "comments": "",
+ "x": 1322.2607803344727,
+ "y": 510.01057529449463,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "ee7ba6fd.384b18",
+ "type": "for",
+ "name": "for pidx..mdsal-psd.service-data.networks.network[]",
+ "xml": "<for index='pidx' start='0' end='`$mdsal-psd.service-data.networks.network_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 859.5107116699219,
+ "y": 611.0105295181274,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["5178f9b4.19b7c8"]
+ ]
+}, {
+ "id": "5178f9b4.19b7c8",
+ "type": "switchNode",
+ "name": "switch model-name",
+ "xml": "<switch test=\"`$mdsal-psd.service-data.networks.network[$pidx].network-data.network-information.onap-model-information.model-name == $network-topology-operation-input.network-information.onap-model-information.model-name`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 807.5106887817383,
+ "y": 688.0105800628662,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["d017d8d9.0843a8"]
+ ]
+}, {
+ "id": "d017d8d9.0843a8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 989.7607917785645,
+ "y": 690.0106735229492,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["b549c649.6ef3f8"]
+ ]
+}, {
+ "id": "b549c649.6ef3f8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1160.5214195251465,
+ "y": 694.867790222168,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["90347753.f53c58"]
+ ]
+}, {
+ "id": "90347753.f53c58",
+ "type": "set",
+ "name": "set tmp.pidx and tmp.network-input-parameters",
+ "xml": "<set>\n<parameter name='tmp.pidx' value='`$pidx`' />\n<parameter name='tmp.network.' value='`$mdsal-psd.service-data.networks.network[$pidx].`' />\n<parameter name='tmp.network-input-parameters' value='`$mdsal-psd.service-data.networks.network[$pidx].network-data.network-request-input.network-input-parameters`' />\n<parameter name='tmp.found-network-input' value='true' />",
+ "comments": "",
+ "x": 1107.3788032531738,
+ "y": 768.4393863677979,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "569cdb0d.3aa8c4",
+ "type": "set",
+ "name": "set tmp.found-network-input",
+ "xml": "<set>\n<parameter name='tmp.found-network-input' value='false' />",
+ "comments": "",
+ "x": 741.5106582641602,
+ "y": 540.0105857849121,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "336b6524.04896a",
+ "type": "switchNode",
+ "name": "switch found-network-input",
+ "xml": "<switch test=\"`$found-network-input`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 572.5107040405273,
+ "y": 879.0107097625732,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["616108fb.092f18", "40e56e53.4077e"]
+ ]
+}, {
+ "id": "616108fb.092f18",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 804.5107955932617,
+ "y": 923.010908126831,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["a846a4bd.9956b8"]
+ ]
+}, {
+ "id": "40e56e53.4077e",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 805.2607345581055,
+ "y": 881.010799407959,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["8273b3b3.844e2"]
+ ]
+}, {
+ "id": "8273b3b3.844e2",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: Network input parameters not found\" />\n \n",
+ "comments": "",
+ "x": 976.2607345581055,
+ "y": 889.0107688903809,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "a846a4bd.9956b8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 542.0105819702148,
+ "y": 1035.0106945037842,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["a938b787.7c82b8", "2becb5c8.f5838a", "fec72c37.99e8b"]
+ ]
+}, {
+ "id": "a938b787.7c82b8",
+ "type": "for",
+ "name": "for cidx..tmp.network.network-data.network-topology.network-parameters.network-parameter[]",
+ "xml": "<for index='cidx' start='0' end='`$tmp.network.network-data.network-topology.network-parameters.network-parameter_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 991.0104217529297,
+ "y": 1121.0105504989624,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["a608965c.57ec78"]
+ ]
+}, {
+ "id": "21b22ac0.8b6036",
+ "type": "switchNode",
+ "name": "switch network-parameter-name == 'restapiUrl'",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUrl'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1105.010482788086,
+ "y": 1191.010612487793,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["b3b8f491.b604a8"]
+ ]
+}, {
+ "id": "b3b8f491.b604a8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1356.0105361938477,
+ "y": 1194.0106182098389,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["f19676be.7dd8e8"]
+ ]
+}, {
+ "id": "f19676be.7dd8e8",
+ "type": "set",
+ "name": "set tmp.thirdparty-sdnc-url",
+ "xml": "<set>\n<parameter name='tmp.restapiUrl' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.restapiUrl-found' value='true' />",
+ "comments": "",
+ "x": 1557.0105667114258,
+ "y": 1192.0106191635132,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "5e9a3d4b.faee04",
+ "type": "execute",
+ "name": "execute RestApiCallNode Create wan-connection",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$tmp.templateFileName`\" />\n<parameter name=\"restapiUrl\" value=\"`$tmp.restapiUrl`\" />\n<parameter name=\"restapiUser\" value=\"`$tmp.restapiUser`\" />\n<parameter name=\"restapiPassword\" value=\"`$tmp.restapiPassword`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"restApi-result\"/>",
+ "comments": "",
+ "outputs": 1,
+ "x": 879.2604522705078,
+ "y": 1923.0111656188965,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["6cfa08fc.d58438", "35b532e4.67c04e", "456722ac.35f45c"]
+ ]
+}, {
+ "id": "482305da.d57c9c",
+ "type": "switchNode",
+ "name": "switch network-parameter-name == 'restapiUser'",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUser'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1108.2604751586914,
+ "y": 1242.0105876922607,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["bfa7b41.e85df48"]
+ ]
+}, {
+ "id": "bfa7b41.e85df48",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1374.2605895996094,
+ "y": 1244.0106649398804,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["431e7704.816128"]
+ ]
+}, {
+ "id": "431e7704.816128",
+ "type": "set",
+ "name": "set tmp.restapiUser",
+ "xml": "<set>\n<parameter name='tmp.restapiUser' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.restapiUser-found' value='true' />",
+ "comments": "",
+ "x": 1575.2606201171875,
+ "y": 1242.0106658935547,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "d87dc5c6.9f2d38",
+ "type": "switchNode",
+ "name": "switch network-parameter-name == 'restapiPassword'",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiPassword'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1116.2605438232422,
+ "y": 1296.010513305664,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["32c617c3.6666a8"]
+ ]
+}, {
+ "id": "32c617c3.6666a8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1393.260555267334,
+ "y": 1294.0105457305908,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["7965a848.b113a8"]
+ ]
+}, {
+ "id": "7965a848.b113a8",
+ "type": "set",
+ "name": "set tmp.restapiPassword",
+ "xml": "<set>\n<parameter name='tmp.restapiPassword' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.restapiPassword-found' value='true' />",
+ "comments": "",
+ "x": 1594.260585784912,
+ "y": 1292.0105466842651,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "8c362f3b.3ca69",
+ "type": "switchNode",
+ "name": "switch network-parameter-name == 'templateFileName'",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'templateFileName'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1125.2605743408203,
+ "y": 1351.0105781555176,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["c074d65e.325f18"]
+ ]
+}, {
+ "id": "c074d65e.325f18",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1413.2607078552246,
+ "y": 1354.0106735229492,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["c839c2e5.daaf"]
+ ]
+}, {
+ "id": "c839c2e5.daaf",
+ "type": "set",
+ "name": "set tmp.templateFileName",
+ "xml": "<set>\n<parameter name='tmp.templateFileName' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.templateFileName-found' value='true' />",
+ "comments": "",
+ "x": 1614.2607383728027,
+ "y": 1352.0106744766235,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "2becb5c8.f5838a",
+ "type": "set",
+ "name": "set paras flags",
+ "xml": "<set>\n<parameter name='tmp.restapiUrl-found' value='false' />\n<parameter name='tmp.restapiUser-found' value='false' />\n<parameter name='tmp.restapiPassword-found' value='false' />\n<parameter name='tmp.templateFileName-found' value='false' />\n<parameter name='tmp.thirdPartyAdaptorRpc-found' value='false' />",
+ "comments": "",
+ "x": 778.0105895996094,
+ "y": 1036.0105476379395,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "fec72c37.99e8b",
+ "type": "switchNode",
+ "name": "switch thirdPartyAdaptorRpc-found == 'true'",
+ "xml": "<switch test=\"`$tmp.thirdPartyAdaptorRpc-found == 'true'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 820.0104217529297,
+ "y": 1531.0105934143066,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["761c7f6a.1e156", "fc5cb76b.242648"]
+ ]
+}, {
+ "id": "a608965c.57ec78",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 762.0104217529297,
+ "y": 1302.0104637145996,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["21b22ac0.8b6036", "482305da.d57c9c", "d87dc5c6.9f2d38", "8c362f3b.3ca69", "2c7884dd.9d5eac"]
+ ]
+}, {
+ "id": "761c7f6a.1e156",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1082.010440826416,
+ "y": 1493.0105304718018,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["abb14bbc.08d3c8"]
+ ]
+}, {
+ "id": "fc5cb76b.242648",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1083.0103912353516,
+ "y": 1559.010495185852,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["7e672194.b5093"]
+ ]
+}, {
+ "id": "abb14bbc.08d3c8",
+ "type": "call",
+ "name": "call thirdPartyAdaptorRpc",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='`$tmp.thirdPartyAdaptorRpc`' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1302.010482788086,
+ "y": 1494.0105895996094,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["97bbf68a.23df28", "54cba094.60db8", "40b8aaf.3584554"]
+ ]
+}, {
+ "id": "7e672194.b5093",
+ "type": "switchNode",
+ "name": "switch restapiUrl-found == 'true'",
+ "xml": "<switch test=\"`$tmp.restapiUrl-found == 'true'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 844.461311340332,
+ "y": 1643.0172395706177,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["8b58f6f.b1e3208", "94431bfa.4e9a48"]
+ ]
+}, {
+ "id": "8b58f6f.b1e3208",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1095.461296081543,
+ "y": 1641.017035484314,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["fed700d7.65be7"]
+ ]
+}, {
+ "id": "fed700d7.65be7",
+ "type": "switchNode",
+ "name": "switch restapiUser-found == 'true'",
+ "xml": "<switch test=\"`$tmp.restapiUser-found == 'true'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 822.4614105224609,
+ "y": 1710.2393379211426,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["9051a6d0.545648", "52bc5ad7.e75954"]
+ ]
+}, {
+ "id": "9051a6d0.545648",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1089.4613037109375,
+ "y": 1711.2390508651733,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["558122b6.d2e6dc"]
+ ]
+}, {
+ "id": "558122b6.d2e6dc",
+ "type": "switchNode",
+ "name": "switch restapiPassword-found == 'true'",
+ "xml": "<switch test=\"`$tmp.restapiPassword-found == 'true'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 837.4613037109375,
+ "y": 1780.239260673523,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["107aae8d.403771", "3e643f4d.27a45"]
+ ]
+}, {
+ "id": "107aae8d.403771",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1097.4613037109375,
+ "y": 1780.2390508651733,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["3e959559.67274a"]
+ ]
+}, {
+ "id": "2c7884dd.9d5eac",
+ "type": "switchNode",
+ "name": "switch network-parameter-name == 'thirdPartyAdaptorRpc'",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'thirdPartyAdaptorRpc'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1125.0168762207031,
+ "y": 1405.0168838500977,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["14544bfa.4af374"]
+ ]
+}, {
+ "id": "14544bfa.4af374",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1413.0170097351074,
+ "y": 1408.0169792175293,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["2d59e0f.1af282"]
+ ]
+}, {
+ "id": "2d59e0f.1af282",
+ "type": "set",
+ "name": "set tmp.thirdPartyAdaptorRpc",
+ "xml": "<set>\n<parameter name='tmp.thirdPartyAdaptorRpc' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.thirdPartyAdaptorRpc-found' value='true' />",
+ "comments": "",
+ "x": 1614.0170402526855,
+ "y": 1406.0169801712036,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "3e959559.67274a",
+ "type": "switchNode",
+ "name": "switch templateFileName-found == 'true'",
+ "xml": "<switch test=\"`$tmp.templateFileName-found == 'true'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 835.0168762207031,
+ "y": 1840.3502979278564,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["5a8246c3.86d3d8", "e9a7f173.e33ea"]
+ ]
+}, {
+ "id": "5a8246c3.86d3d8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1095.0168762207031,
+ "y": 1840.3500881195068,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["5e9a3d4b.faee04"]
+ ]
+}, {
+ "id": "40b8aaf.3584554",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1568.0168762207031,
+ "y": 1533.3502578735352,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["10f2c69f.8e3de9"]
+ ]
+}, {
+ "id": "54cba094.60db8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1559.0169258117676,
+ "y": 1501.8502836227417,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["10f2c69f.8e3de9"]
+ ]
+}, {
+ "id": "97bbf68a.23df28",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1562.7669639587402,
+ "y": 1472.207388497889,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["9b5e3e39.e0053"]
+ ]
+}, {
+ "id": "10f2c69f.8e3de9",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'Error calling ' + $tmp.thirdPartyAdaptorRpc`\" />\n",
+ "comments": "",
+ "x": 1725.766990661621,
+ "y": 1518.6003561019897,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "9b5e3e39.e0053",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1704.4229316711426,
+ "y": 1468.3995576873422,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "456722ac.35f45c",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1209.0168762207031,
+ "y": 1958.3502578735352,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["504edb98.e54e24"]
+ ]
+}, {
+ "id": "35b532e4.67c04e",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1200.0169258117676,
+ "y": 1926.8502836227417,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["504edb98.e54e24"]
+ ]
+}, {
+ "id": "6cfa08fc.d58438",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1203.7669639587402,
+ "y": 1897.207388497889,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["e5f43bf1.ad3d38"]
+ ]
+}, {
+ "id": "504edb98.e54e24",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'Error calling ' + $tmp.restapiUrl`\" />\n",
+ "comments": "",
+ "x": 1366.766990661621,
+ "y": 1943.6003561019897,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "e5f43bf1.ad3d38",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1345.4229316711426,
+ "y": 1893.3995576873422,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "94431bfa.4e9a48",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1246.6835021972656,
+ "y": 1608.4613418579102,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["79546287.78b3ac"]
+ ]
+}, {
+ "id": "79546287.78b3ac",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: 3rd party controller restapiUrl not found\" />\n \n",
+ "comments": "",
+ "x": 1417.6835021972656,
+ "y": 1616.461311340332,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "52bc5ad7.e75954",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1251.6835021972656,
+ "y": 1687.4613418579102,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["e7175614.0bbb18"]
+ ]
+}, {
+ "id": "e7175614.0bbb18",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: 3rd party controller restapiUser not found\" />\n \n",
+ "comments": "",
+ "x": 1422.6835021972656,
+ "y": 1695.461311340332,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "3e643f4d.27a45",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1242.6835021972656,
+ "y": 1758.4613418579102,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["eab97fcc.763a6"]
+ ]
+}, {
+ "id": "eab97fcc.763a6",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: 3rd party controller restapiPassword not found\" />\n \n",
+ "comments": "",
+ "x": 1413.6835021972656,
+ "y": 1766.461311340332,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}, {
+ "id": "e9a7f173.e33ea",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1241.6835021972656,
+ "y": 1819.4613418579102,
+ "z": "e09ddcb4.62be2",
+ "wires": [
+ ["4679556f.41babc"]
+ ]
+}, {
+ "id": "4679556f.41babc",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: 3rd party controller templateFileName not found\" />\n \n",
+ "comments": "",
+ "x": 1412.6835021972656,
+ "y": 1827.461311340332,
+ "z": "e09ddcb4.62be2",
+ "wires": []
+}] \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-create.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-create.json
new file mode 100644
index 00000000..5660246c
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-create.json
@@ -0,0 +1,360 @@
+[{
+ "id": "6ac67ae1.a0aa44",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 175.00390625,
+ "y": 106.00390625,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["a7166f73.c3b7d"]
+ ]
+}, {
+ "id": "a7166f73.c3b7d",
+ "type": "service-logic",
+ "name": "GENERIC-RESOURCE-API ${project.version}",
+ "module": "GENERIC-RESOURCE-API",
+ "version": "${project.version}",
+ "comments": "",
+ "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
+ "outputs": 1,
+ "x": 387.00391006469727,
+ "y": 178.0039234161377,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["28d122a6.3dff6e"]
+ ]
+}, {
+ "id": "28d122a6.3dff6e",
+ "type": "method",
+ "name": "wan-connection-topology-operation-create",
+ "xml": "<method rpc='wan-connection-topology-operation-create' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 375.0040283203125,
+ "y": 266.00390625,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["5e728e05.d58"]
+ ]
+}, {
+ "id": "9cfd5628.0461f8",
+ "type": "execute",
+ "name": "contains specification",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n <parameter name=\"target\" value=\"specification\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 571.0351867675781,
+ "y": 443.03515338897705,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["880d63dc.b5a38", "f32a417.139a7c"]
+ ]
+}, {
+ "id": "fecacce0.e773",
+ "type": "execute",
+ "name": "contains FC",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n <parameter name=\"target\" value=\"FC\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 542.0352630615234,
+ "y": 541.0352182388306,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["e31d6f4d.a6b8a", "3a9f16f2.1de22a"]
+ ]
+}, {
+ "id": "328d5a5f.8b3686",
+ "type": "execute",
+ "name": "contains FD",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n <parameter name=\"target\" value=\"FD\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 540.0351867675781,
+ "y": 619.0352191925049,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["95036d7b.e76b7", "a957c80c.629788"]
+ ]
+}, {
+ "id": "8ced5ada.6dacc8",
+ "type": "execute",
+ "name": "contains Link",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n <parameter name=\"target\" value=\"Link\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 545.0352325439453,
+ "y": 699.0353374481201,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["3306f585.d6ad4a", "f7a1c197.52e9b"]
+ ]
+}, {
+ "id": "880d63dc.b5a38",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 807.0352210998535,
+ "y": 441.03514528274536,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["4a720633.6d38d8"]
+ ]
+}, {
+ "id": "f32a417.139a7c",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 336.03525161743164,
+ "y": 541.0352182388306,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["fecacce0.e773"]
+ ]
+}, {
+ "id": "e31d6f4d.a6b8a",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 723.035270690918,
+ "y": 543.0352516174316,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["e96c15e0.5108b8"]
+ ]
+}, {
+ "id": "95036d7b.e76b7",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 735.035270690918,
+ "y": 621.0352516174316,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["e96c15e0.5108b8"]
+ ]
+}, {
+ "id": "3a9f16f2.1de22a",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 331.03519439697266,
+ "y": 622.0351905822754,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["328d5a5f.8b3686"]
+ ]
+}, {
+ "id": "a957c80c.629788",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 336.03526306152344,
+ "y": 705.0353965759277,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["8ced5ada.6dacc8"]
+ ]
+}, {
+ "id": "3306f585.d6ad4a",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 736.035343170166,
+ "y": 698.0353984832764,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["ff5b5810.5ac2a8"]
+ ]
+}, {
+ "id": "914afff2.c348e",
+ "type": "execute",
+ "name": "execute Properties",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\n <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />\n <parameter name='contextPrefix' value='prop' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 566.0039978027344,
+ "y": 386.0039253234863,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "5e728e05.d58",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 281.00392150878906,
+ "y": 366.00390243530273,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["914afff2.c348e", "9cfd5628.0461f8", "d08cdbfc.d46288", "8af933b4.c5208"]
+ ]
+}, {
+ "id": "d08cdbfc.d46288",
+ "type": "switchNode",
+ "name": "switch network-id",
+ "xml": "<switch test='`$network-topology-operation-input.network-information.network-id`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 566.0039291381836,
+ "y": 324.00391578674316,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["13cbf19b.fc4f5e", "163e4527.d3d54b"]
+ ]
+}, {
+ "id": "13cbf19b.fc4f5e",
+ "type": "outcome",
+ "name": "NULL",
+ "xml": "<outcome value=''>",
+ "comments": "",
+ "outputs": 1,
+ "x": 815.0040054321289,
+ "y": 263.00391578674316,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["600a4007.612e"]
+ ]
+}, {
+ "id": "600a4007.612e",
+ "type": "execute",
+ "name": "generate tmp.ar.allotted-resource-id",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"network-topology-operation-input.network-information.network-id\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1030.0039825439453,
+ "y": 264.00392150878906,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["224d0a6c.fd47b6"]
+ ]
+}, {
+ "id": "224d0a6c.fd47b6",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1248.0040245056152,
+ "y": 264.00388526916504,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["c61d540b.7cf0a8"]
+ ]
+}, {
+ "id": "c61d540b.7cf0a8",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while generation allotted resource ID\" />\n",
+ "comments": "",
+ "x": 1414.003978729248,
+ "y": 264.0038995742798,
+ "z": "7d848bad.6cea14",
+ "wires": []
+}, {
+ "id": "163e4527.d3d54b",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 812.5039024353027,
+ "y": 311.00391006469727,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "4a720633.6d38d8",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:wan-connection-save-specification",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='wan-connection-save-specification' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1129.0039367675781,
+ "y": 441.00395679473877,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "e96c15e0.5108b8",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:wan-connection-find-specifications",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='wan-connection-find-specifications' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1125.5040283203125,
+ "y": 586.0039100646973,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "8af933b4.c5208",
+ "type": "returnSuccess",
+ "name": "return success",
+ "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n",
+ "comments": "",
+ "x": 341.00391387939453,
+ "y": 827.0039396286011,
+ "z": "7d848bad.6cea14",
+ "wires": []
+}, {
+ "id": "ff5b5810.5ac2a8",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:wan-connection-route-calculation",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='wan-connection-route-calculation' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1105.003921508789,
+ "y": 701.0039482116699,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "f7a1c197.52e9b",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 741.00390625,
+ "y": 765.00390625,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ ["7ef91d7a.861074"]
+ ]
+}, {
+ "id": "7ef91d7a.861074",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 909.00390625,
+ "y": 771.0039482116699,
+ "z": "7d848bad.6cea14",
+ "wires": [
+ []
+ ]
+}] \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-deactivate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-deactivate.json
new file mode 100644
index 00000000..3b0b0fb3
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-deactivate.json
@@ -0,0 +1,890 @@
+[{
+ "id": "dc5daae1.4b2b68",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 136.01040649414062,
+ "y": 88.01041412353516,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["f86fe308.85c13"]
+ ]
+}, {
+ "id": "f86fe308.85c13",
+ "type": "service-logic",
+ "name": "GENERIC-RESOURCE-API ${project.version}",
+ "module": "GENERIC-RESOURCE-API",
+ "version": "${project.version}",
+ "comments": "",
+ "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
+ "outputs": 1,
+ "x": 348.0104103088379,
+ "y": 160.01043128967285,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["c94e70a1.1a9f8"]
+ ]
+}, {
+ "id": "c94e70a1.1a9f8",
+ "type": "method",
+ "name": "wan-connection-topology-operation-deactivate",
+ "xml": "<method rpc='wan-connection-topology-operation-deactivate' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 336.0105285644531,
+ "y": 248.01041412353516,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["2779c46a.0d3bfc"]
+ ]
+}, {
+ "id": "57a97cf3.f011a4",
+ "type": "execute",
+ "name": "execute Properties",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\n <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />\n <parameter name='contextPrefix' value='prop' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 723.0106887817383,
+ "y": 332.0104856491089,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "ea250cc1.d5382",
+ "type": "returnSuccess",
+ "name": "return success",
+ "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n",
+ "comments": "",
+ "x": 323.0104217529297,
+ "y": 1197.010627746582,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "2779c46a.0d3bfc",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 248.51060485839844,
+ "y": 689.0105495452881,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["ed99019f.1977", "7dda64d7.a5a00c", "f7ff6068.4e95b", "3266b2a4.654dfe", "5f4320a1.8de1c", "57a97cf3.f011a4", "ea250cc1.d5382"]
+ ]
+}, {
+ "id": "ed99019f.1977",
+ "type": "execute",
+ "name": "generate services url",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$prop.network-provided-resource`\"/>\n <parameter name=\"outputPath\" value=\"tmp.services-url\"/>\n <parameter name=\"target\" value=\"{service-instance-id}\"/>\n <parameter name=\"replacement\" value=\"`$network-topology-operation-input.service-information.service-id`\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 709.0106735229492,
+ "y": 403.0105857849121,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "7dda64d7.a5a00c",
+ "type": "execute",
+ "name": "execute RestApiCallNode - get-resource parent service data",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.services-url`' />\n <parameter name='restapiUser' value='`$prop.controller.user`' />\n <parameter name='restapiPassword' value='`$prop.controller.pwd`' />\n <parameter name='format' value='json' />\n <parameter name='httpMethod' value='GET' />\n <parameter name=\"responsePrefix\" value=\"mdsal-psd\" />\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 835.0106735229492,
+ "y": 480.0105857849121,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["1a420eef.b4ab81", "758b4d6.827c5b4"]
+ ]
+}, {
+ "id": "1a420eef.b4ab81",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1182.010856628418,
+ "y": 431.0105857849121,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["f55029d2.253db8"]
+ ]
+}, {
+ "id": "f55029d2.253db8",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1349.0109329223633,
+ "y": 465.0106463432312,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "758b4d6.827c5b4",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1187.8626289367676,
+ "y": 514.0767450332642,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["1418c003.c3bc4"]
+ ]
+}, {
+ "id": "1418c003.c3bc4",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: Parent service data not available\" />\n \n",
+ "comments": "",
+ "x": 1358.2607803344727,
+ "y": 530.0105752944946,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "f7ff6068.4e95b",
+ "type": "for",
+ "name": "for pidx..mdsal-psd.service-data.networks.network[]",
+ "xml": "<for index='pidx' start='0' end='`$mdsal-psd.service-data.networks.network_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 895.5107116699219,
+ "y": 631.0105295181274,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["492dcfc8.84723"]
+ ]
+}, {
+ "id": "492dcfc8.84723",
+ "type": "switchNode",
+ "name": "switch model-name",
+ "xml": "<switch test=\"`$mdsal-psd.service-data.networks.network[$pidx].network-id == $network-topology-operation-input.network-information.network-id`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 843.5106887817383,
+ "y": 708.0105800628662,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["27343179.181b8e"]
+ ]
+}, {
+ "id": "27343179.181b8e",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1025.7607917785645,
+ "y": 710.0106735229492,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["63f3970f.a34118"]
+ ]
+}, {
+ "id": "63f3970f.a34118",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1196.5214195251465,
+ "y": 714.867790222168,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["a56f8acd.7498b8"]
+ ]
+}, {
+ "id": "a56f8acd.7498b8",
+ "type": "set",
+ "name": "set tmp.pidx and tmp.network-input-parameters",
+ "xml": "<set>\n<parameter name='tmp.pidx' value='`$pidx`' />\n<parameter name='tmp.network.' value='`$mdsal-psd.service-data.networks.network[$pidx].`' />\n<parameter name='tmp.network-input-parameters' value='`$mdsal-psd.service-data.networks.network[$pidx].network-data.network-request-input.network-input-parameters`' />\n<parameter name='tmp.found-network-input' value='true' />",
+ "comments": "",
+ "x": 1143.3788032531738,
+ "y": 788.4393863677979,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "3266b2a4.654dfe",
+ "type": "set",
+ "name": "set tmp.found-network-input",
+ "xml": "<set>\n<parameter name='tmp.found-network-input' value='false' />",
+ "comments": "",
+ "x": 777.5106582641602,
+ "y": 560.0105857849121,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "5f4320a1.8de1c",
+ "type": "switchNode",
+ "name": "switch found-network-input",
+ "xml": "<switch test=\"`$found-network-input`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 608.5107040405273,
+ "y": 899.0107097625732,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["8d8a4cba.9e184", "b9d9fb0b.7db9b8"]
+ ]
+}, {
+ "id": "8d8a4cba.9e184",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 840.5107955932617,
+ "y": 943.010908126831,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["d6f87580.2dc1d8"]
+ ]
+}, {
+ "id": "b9d9fb0b.7db9b8",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 841.2607345581055,
+ "y": 901.010799407959,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["cd109ebd.9e8f9"]
+ ]
+}, {
+ "id": "cd109ebd.9e8f9",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: Network input parameters not found\" />\n \n",
+ "comments": "",
+ "x": 1012.2607345581055,
+ "y": 909.0107688903809,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "d6f87580.2dc1d8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 578.0105819702148,
+ "y": 1055.0106945037842,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["9089330c.7c429", "f7517eb4.eccef", "c4ea6652.9fa878"]
+ ]
+}, {
+ "id": "9089330c.7c429",
+ "type": "for",
+ "name": "for cidx..tmp.network.network-data.network-topology.network-parameters.network-parameter[]",
+ "xml": "<for index='cidx' start='0' end='`$tmp.network.network-data.network-topology.network-parameters.network-parameter_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1027.0104217529297,
+ "y": 1141.0105504989624,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["91a2217e.0aa36"]
+ ]
+}, {
+ "id": "44bbe120.7255",
+ "type": "switchNode",
+ "name": "switch network-parameter-name == 'restapiUrl-deactivate'",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUrl-deactivate'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1141.010482788086,
+ "y": 1211.010612487793,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["ae0bda70.be78d8"]
+ ]
+}, {
+ "id": "ae0bda70.be78d8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1414.0106048583984,
+ "y": 1210.010570526123,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["866f7c3c.d7349"]
+ ]
+}, {
+ "id": "866f7c3c.d7349",
+ "type": "set",
+ "name": "set tmp.thirdparty-sdnc-url",
+ "xml": "<set>\n<parameter name='tmp.restapiUrl' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.restapiUrl-found' value='true' />",
+ "comments": "",
+ "x": 1593.0105667114258,
+ "y": 1212.0106191635132,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "2a83ab2c.a5f774",
+ "type": "execute",
+ "name": "execute RestApiCallNode delete wan-connection",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$tmp.restapiUrl + $tmp.actualId`\" />\n<parameter name=\"restapiUser\" value=\"`$tmp.restapiUser`\" />\n<parameter name=\"restapiPassword\" value=\"`$tmp.restapiPassword`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>",
+ "comments": "",
+ "outputs": 1,
+ "x": 915.2604522705078,
+ "y": 1943.0111656188965,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["5eb1697e.075858", "dd1f30f9.8bae3", "bd716a80.bf8068"]
+ ]
+}, {
+ "id": "9154a660.674bb8",
+ "type": "switchNode",
+ "name": "switch network-parameter-name == 'restapiUser'",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUser'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1144.2604751586914,
+ "y": 1262.0105876922607,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["dcf17939.4e7148"]
+ ]
+}, {
+ "id": "dcf17939.4e7148",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1410.2605895996094,
+ "y": 1264.0106649398804,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["de64ea4d.ab18b8"]
+ ]
+}, {
+ "id": "de64ea4d.ab18b8",
+ "type": "set",
+ "name": "set tmp.restapiUser",
+ "xml": "<set>\n<parameter name='tmp.restapiUser' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.restapiUser-found' value='true' />",
+ "comments": "",
+ "x": 1611.2606201171875,
+ "y": 1262.0106658935547,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "6d3fee98.40477",
+ "type": "switchNode",
+ "name": "switch network-parameter-name == 'restapiPassword'",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiPassword'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1152.2605438232422,
+ "y": 1316.010513305664,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["e3d0d091.7555a"]
+ ]
+}, {
+ "id": "e3d0d091.7555a",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1429.260555267334,
+ "y": 1314.0105457305908,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["4b4e91b6.1741a"]
+ ]
+}, {
+ "id": "4b4e91b6.1741a",
+ "type": "set",
+ "name": "set tmp.restapiPassword",
+ "xml": "<set>\n<parameter name='tmp.restapiPassword' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.restapiPassword-found' value='true' />",
+ "comments": "",
+ "x": 1630.260585784912,
+ "y": 1312.0105466842651,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "f7517eb4.eccef",
+ "type": "set",
+ "name": "set paras flags",
+ "xml": "<set>\n<parameter name='tmp.restapiUrl-found' value='false' />\n<parameter name='tmp.restapiUser-found' value='false' />\n<parameter name='tmp.restapiPassword-found' value='false' />\n<parameter name='tmp.thirdPartyAdaptorRpc-found' value='false' />\n<parameter name='tmp.actualId-found' value='false' />",
+ "comments": "",
+ "x": 814.0105895996094,
+ "y": 1056.0105476379395,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "c4ea6652.9fa878",
+ "type": "switchNode",
+ "name": "switch thirdPartyAdaptorRpc-found == 'true'",
+ "xml": "<switch test=\"`$tmp.thirdPartyAdaptorRpc-found == 'true'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 856.0104217529297,
+ "y": 1551.0105934143066,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["a1470852.fbe9a8", "44560421.b5783c"]
+ ]
+}, {
+ "id": "91a2217e.0aa36",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 798.0104217529297,
+ "y": 1322.0104637145996,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["44bbe120.7255", "9154a660.674bb8", "6d3fee98.40477", "fe9a117b.1f532", "9e6c08bf.a2fe88"]
+ ]
+}, {
+ "id": "a1470852.fbe9a8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1118.010440826416,
+ "y": 1513.0105304718018,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["87499e3e.8efd7"]
+ ]
+}, {
+ "id": "44560421.b5783c",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1119.0103912353516,
+ "y": 1579.010495185852,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["1d000250.ddb41e"]
+ ]
+}, {
+ "id": "87499e3e.8efd7",
+ "type": "call",
+ "name": "call thirdPartyAdaptorRpc",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='`$tmp.thirdPartyAdaptorRpc`' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1338.010482788086,
+ "y": 1514.0105895996094,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["be1c43cd.6c6d5", "36f2fa8b.9ff576", "9830e901.9d2aa8"]
+ ]
+}, {
+ "id": "1d000250.ddb41e",
+ "type": "switchNode",
+ "name": "switch restapiUrl-found == 'true'",
+ "xml": "<switch test=\"`$tmp.restapiUrl-found == 'true'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 880.461311340332,
+ "y": 1663.0172395706177,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["e6d9ab3.015a858", "20fb14a8.faab2c"]
+ ]
+}, {
+ "id": "e6d9ab3.015a858",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1131.461296081543,
+ "y": 1661.017035484314,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["481b171e.ab37e8"]
+ ]
+}, {
+ "id": "481b171e.ab37e8",
+ "type": "switchNode",
+ "name": "switch restapiUser-found == 'true'",
+ "xml": "<switch test=\"`$tmp.restapiUser-found == 'true'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 858.4614105224609,
+ "y": 1730.2393379211426,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["3742155.0c254ea", "6f396aea.673404"]
+ ]
+}, {
+ "id": "3742155.0c254ea",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1125.4613037109375,
+ "y": 1731.2390508651733,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["2df75511.30eb8a"]
+ ]
+}, {
+ "id": "2df75511.30eb8a",
+ "type": "switchNode",
+ "name": "switch restapiPassword-found == 'true'",
+ "xml": "<switch test=\"`$tmp.restapiPassword-found == 'true'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 873.4613037109375,
+ "y": 1800.239260673523,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["6e3c4b77.f76d04", "79b92f2b.ec99"]
+ ]
+}, {
+ "id": "6e3c4b77.f76d04",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1133.4613037109375,
+ "y": 1800.2390508651733,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["e4613219.7da05"]
+ ]
+}, {
+ "id": "fe9a117b.1f532",
+ "type": "switchNode",
+ "name": "switch network-parameter-name == 'thirdPartyAdaptorRpc-deactivate'",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'thirdPartyAdaptorRpc-deactivate'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1170.0169410705566,
+ "y": 1409.0168914794922,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["3b34faa8.496266"]
+ ]
+}, {
+ "id": "3b34faa8.496266",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1481.0171585083008,
+ "y": 1413.0167961120605,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["89a96064.90193"]
+ ]
+}, {
+ "id": "89a96064.90193",
+ "type": "set",
+ "name": "set tmp.thirdPartyAdaptorRpc",
+ "xml": "<set>\n<parameter name='tmp.thirdPartyAdaptorRpc' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.thirdPartyAdaptorRpc-found' value='true' />",
+ "comments": "",
+ "x": 1676.0171127319336,
+ "y": 1407.0169868469238,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "9830e901.9d2aa8",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1604.0168762207031,
+ "y": 1553.3502578735352,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["e00f6454.dddf68"]
+ ]
+}, {
+ "id": "36f2fa8b.9ff576",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1595.0169258117676,
+ "y": 1521.8502836227417,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["e00f6454.dddf68"]
+ ]
+}, {
+ "id": "be1c43cd.6c6d5",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1598.7669639587402,
+ "y": 1492.207388497889,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["6355ce7d.fb42b"]
+ ]
+}, {
+ "id": "e00f6454.dddf68",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'Error calling ' + $tmp.thirdPartyAdaptorRpc`\" />\n",
+ "comments": "",
+ "x": 1761.766990661621,
+ "y": 1538.6003561019897,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "6355ce7d.fb42b",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1740.4229316711426,
+ "y": 1488.3995576873422,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "bd716a80.bf8068",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1245.0168762207031,
+ "y": 1978.3502578735352,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["593817ce.8c6458"]
+ ]
+}, {
+ "id": "dd1f30f9.8bae3",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1236.0169258117676,
+ "y": 1946.8502836227417,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["593817ce.8c6458"]
+ ]
+}, {
+ "id": "5eb1697e.075858",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1239.7669639587402,
+ "y": 1917.207388497889,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["33a4cba3.45a344"]
+ ]
+}, {
+ "id": "593817ce.8c6458",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'Error calling ' + $tmp.restapiUrl`\" />\n",
+ "comments": "",
+ "x": 1402.766990661621,
+ "y": 1963.6003561019897,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "33a4cba3.45a344",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1381.4229316711426,
+ "y": 1913.3995576873422,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "20fb14a8.faab2c",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1282.6835021972656,
+ "y": 1628.4613418579102,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["f5cee36d.88941"]
+ ]
+}, {
+ "id": "f5cee36d.88941",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: 3rd party controller restapiUrl not found\" />\n \n",
+ "comments": "",
+ "x": 1453.6835021972656,
+ "y": 1636.461311340332,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "6f396aea.673404",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1287.6835021972656,
+ "y": 1707.4613418579102,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["82e86a2a.10b8e8"]
+ ]
+}, {
+ "id": "82e86a2a.10b8e8",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: 3rd party controller restapiUser not found\" />\n \n",
+ "comments": "",
+ "x": 1458.6835021972656,
+ "y": 1715.461311340332,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "79b92f2b.ec99",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1278.6835021972656,
+ "y": 1778.4613418579102,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["2dcb87b4.9d09e8"]
+ ]
+}, {
+ "id": "2dcb87b4.9d09e8",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: 3rd party controller restapiPassword not found\" />\n \n",
+ "comments": "",
+ "x": 1449.6835021972656,
+ "y": 1786.461311340332,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "9e6c08bf.a2fe88",
+ "type": "switchNode",
+ "name": "switch network-parameter-name == 'actualId'",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'actualId'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1156.0103759765625,
+ "y": 1364.0103759765625,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["11fcb359.0b74ed"]
+ ]
+}, {
+ "id": "11fcb359.0b74ed",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1433.0103874206543,
+ "y": 1362.0104084014893,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["f5a304ff.f9aea8"]
+ ]
+}, {
+ "id": "f5a304ff.f9aea8",
+ "type": "set",
+ "name": "set tmp.actualId",
+ "xml": "<set>\n<parameter name='tmp.actualId' value='`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`' />\n<parameter name='tmp.actualId-found' value='true' />",
+ "comments": "",
+ "x": 1634.0104179382324,
+ "y": 1360.0104093551636,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}, {
+ "id": "e4613219.7da05",
+ "type": "switchNode",
+ "name": "switch actualId-found == 'true'",
+ "xml": "<switch test=\"`$tmp.actualId-found == 'true'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 887.2326049804688,
+ "y": 1868.454833984375,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["572932d1.b17b3c", "c0db58a1.69dc58"]
+ ]
+}, {
+ "id": "572932d1.b17b3c",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1147.2326049804688,
+ "y": 1868.4546241760254,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["2a83ab2c.a5f774"]
+ ]
+}, {
+ "id": "c0db58a1.69dc58",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1292.4548034667969,
+ "y": 1846.6769151687622,
+ "z": "5f2b1b80.205544",
+ "wires": [
+ ["cf40162e.095f98"]
+ ]
+}, {
+ "id": "cf40162e.095f98",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: Wan Connection actualId not found\" />\n \n",
+ "comments": "",
+ "x": 1463.4548034667969,
+ "y": 1854.676884651184,
+ "z": "5f2b1b80.205544",
+ "wires": []
+}] \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-delete.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-delete.json
new file mode 100644
index 00000000..4430f5e3
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_wan-connection-topology-operation-delete.json
@@ -0,0 +1,286 @@
+[{
+ "id": "c81f4d78.b1e6c",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 100.01040649414062,
+ "y": 75.99999976158142,
+ "z": "b1682cba.152",
+ "wires": [
+ ["64b261af.cf184"]
+ ]
+}, {
+ "id": "64b261af.cf184",
+ "type": "service-logic",
+ "name": "GENERIC-RESOURCE-API ${project.version}",
+ "module": "GENERIC-RESOURCE-API",
+ "version": "${project.version}",
+ "comments": "",
+ "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
+ "outputs": 1,
+ "x": 312.0104103088379,
+ "y": 148.00001692771912,
+ "z": "b1682cba.152",
+ "wires": [
+ ["c6b54419.3039a8"]
+ ]
+}, {
+ "id": "c6b54419.3039a8",
+ "type": "method",
+ "name": "wan-connection-topology-operation-delete",
+ "xml": "<method rpc='wan-connection-topology-operation-delete' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 300.0105285644531,
+ "y": 235.99999976158142,
+ "z": "b1682cba.152",
+ "wires": [
+ ["f3a69c11.4cac9"]
+ ]
+}, {
+ "id": "140a99be.e1cda6",
+ "type": "execute",
+ "name": "contains FC",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n <parameter name=\"target\" value=\"FC\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 467.04176330566406,
+ "y": 511.031311750412,
+ "z": "b1682cba.152",
+ "wires": [
+ ["df506b8a.806268", "5d821249.e9d6cc"]
+ ]
+}, {
+ "id": "54dc8604.f2ccb8",
+ "type": "execute",
+ "name": "contains FD",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n <parameter name=\"source\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name`\"/>\n <parameter name=\"target\" value=\"FD\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 465.04168701171875,
+ "y": 589.0313127040863,
+ "z": "b1682cba.152",
+ "wires": [
+ ["1ab6bc40.bffaf4", "7db0c17f.b059"]
+ ]
+}, {
+ "id": "df506b8a.806268",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 648.0417709350586,
+ "y": 513.0313451290131,
+ "z": "b1682cba.152",
+ "wires": [
+ ["44c3101c.7b387"]
+ ]
+}, {
+ "id": "1ab6bc40.bffaf4",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 660.0417709350586,
+ "y": 591.0313451290131,
+ "z": "b1682cba.152",
+ "wires": [
+ ["44c3101c.7b387"]
+ ]
+}, {
+ "id": "5d821249.e9d6cc",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 256.0416946411133,
+ "y": 592.0312840938568,
+ "z": "b1682cba.152",
+ "wires": [
+ ["54dc8604.f2ccb8"]
+ ]
+}, {
+ "id": "7f76e93c.a850f8",
+ "type": "execute",
+ "name": "execute Properties",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\n <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />\n <parameter name='contextPrefix' value='prop' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 491.010498046875,
+ "y": 356.00001883506775,
+ "z": "b1682cba.152",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "f3a69c11.4cac9",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 206.0104217529297,
+ "y": 335.99999594688416,
+ "z": "b1682cba.152",
+ "wires": [
+ ["7f76e93c.a850f8", "99bcb143.6aec8", "30b4304f.e646c", "140a99be.e1cda6"]
+ ]
+}, {
+ "id": "99bcb143.6aec8",
+ "type": "switchNode",
+ "name": "switch network-id",
+ "xml": "<switch test='`$network-topology-operation-input.network-information.network-id`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 491.0104293823242,
+ "y": 294.0000092983246,
+ "z": "b1682cba.152",
+ "wires": [
+ ["57d76327.9c63cc", "d50b31e0.e314e"]
+ ]
+}, {
+ "id": "57d76327.9c63cc",
+ "type": "outcome",
+ "name": "NULL",
+ "xml": "<outcome value=''>",
+ "comments": "",
+ "outputs": 1,
+ "x": 740.0105056762695,
+ "y": 233.00000929832458,
+ "z": "b1682cba.152",
+ "wires": [
+ ["54153e4c.ec78c"]
+ ]
+}, {
+ "id": "54153e4c.ec78c",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while generation allotted resource ID\" />\n",
+ "comments": "",
+ "x": 1010.0105209350586,
+ "y": 234.99999809265137,
+ "z": "b1682cba.152",
+ "wires": []
+}, {
+ "id": "d50b31e0.e314e",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 737.5104026794434,
+ "y": 281.0000035762787,
+ "z": "b1682cba.152",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "30b4304f.e646c",
+ "type": "returnSuccess",
+ "name": "return success",
+ "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n",
+ "comments": "",
+ "x": 192.01040649414062,
+ "y": 943.0000705718994,
+ "z": "b1682cba.152",
+ "wires": []
+}, {
+ "id": "65a3a6ee.c50208",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 258.01040267944336,
+ "y": 735.0001106262207,
+ "z": "b1682cba.152",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "7db0c17f.b059",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 261.04176330566406,
+ "y": 675.0314900875092,
+ "z": "b1682cba.152",
+ "wires": [
+ ["65a3a6ee.c50208"]
+ ]
+}, {
+ "id": "44c3101c.7b387",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 843.010383605957,
+ "y": 542.1214942932129,
+ "z": "b1682cba.152",
+ "wires": [
+ ["81240f98.0bd24", "51b098fe.5ee238", "e14455de.b9dcd8", "5e6ceda3.d49424", "629880b9.6f91a"]
+ ]
+}, {
+ "id": "81240f98.0bd24",
+ "type": "delete",
+ "name": "delete wan connection in AAI",
+ "xml": "<delete plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" resource='connectivity' \n key='connectivity.connectivity-id = $network-topology-operation-input.network-information.network-id'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1139.0104446411133,
+ "y": 492.1214962005615,
+ "z": "b1682cba.152",
+ "wires": [
+ []
+ ]
+}, {
+ "id": "51b098fe.5ee238",
+ "type": "set",
+ "name": "set new network length",
+ "xml": "<set>\n\t<parameter name=\"service-data.networks.network_length\" value=\"`$service-data.networks.network_length - 1`\"/>\n\n\t\n",
+ "comments": "",
+ "x": 1116.4549293518066,
+ "y": 556.0104026794434,
+ "z": "b1682cba.152",
+ "wires": []
+}, {
+ "id": "e14455de.b9dcd8",
+ "type": "set",
+ "name": "Remove networks from ServiceData",
+ "xml": "<set>\n\t<parameter name=\"service-data.networks.network[$tmp.nidx].\" value=\"\"/>\n\n",
+ "comments": "",
+ "x": 1147.0791816711426,
+ "y": 607.9783487319946,
+ "z": "b1682cba.152",
+ "wires": []
+}, {
+ "id": "5e6ceda3.d49424",
+ "type": "set",
+ "name": "set networkId and network-object-path",
+ "xml": "<set>\n<parameter name='networkId' value='`$network-topology-operation-input.network-information.network-id`' />\n<parameter name='service-object-path' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $network-topology-operation-input.service-information.service-instance-id\n + '/service-data/service-topology/'` \" />",
+ "comments": "",
+ "x": 1157.8222579956055,
+ "y": 678.5394926071167,
+ "z": "b1682cba.152",
+ "wires": []
+}, {
+ "id": "629880b9.6f91a",
+ "type": "record",
+ "name": "record",
+ "xml": "<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.FileRecorder\">\n<parameter name=\"file\" value=\"/opt/opendaylight/current/data/log/svclogic.log\"/>\n<parameter name=\"field1\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"field2\" value=\"wan-connection-topology-operation-delete\"/>\n<parameter name=\"field3\" value=\"`$network-topology-operation-input.network-information.onap-model-information.model-name + ' delete'`\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1075.0103759765625,
+ "y": 423.34375,
+ "z": "b1682cba.152",
+ "wires": [
+ []
+ ]
+}] \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/resources/graph.versions b/platform-logic/generic-resource-api/src/main/resources/graph.versions
index 6d06cced..94f4fe3f 100755
--- a/platform-logic/generic-resource-api/src/main/resources/graph.versions
+++ b/platform-logic/generic-resource-api/src/main/resources/graph.versions
@@ -206,6 +206,10 @@ GENERIC-RESOURCE-API sdwan-vnf-topology-operation-wanport-create ${project.versi
GENERIC-RESOURCE-API sdwan-vnf-topology-operation-wanport-deactivate ${project.version} sync
GENERIC-RESOURCE-API sdwan-vnf-topology-operation-wanport-delete ${project.version} sync
GENERIC-RESOURCE-API sdwan-wanport-vnf-topology-operation-underlay ${project.version} sync
+GENERIC-RESOURCE-API wan-connection-topology-operation-create ${project.version} sync
+GENERIC-RESOURCE-API wan-connection-topology-operation-activate ${project.version} sync
+GENERIC-RESOURCE-API wan-connection-topology-operation-deactivate ${project.version} sync
+GENERIC-RESOURCE-API wan-connection-topology-operation-delete ${project.version} sync
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation.xml
index 05328d29..f2e71fad 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation.xml
@@ -1,420 +1,443 @@
-<service-logic
- xmlns='http://www.onap.org/sdnc/svclogic'
- xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>
- <method rpc='network-topology-operation' mode='sync'>
- <block atomic="true">
- <call module='GENERIC-RESOURCE-API' rpc='validate-network-input' mode='sync' ></call>
- <switch test='`$network-topology-operation-input.sdnc-request-header.svc-action`'>
- <outcome value='assign'>
- <block atomic="true">
- <switch test='`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`'>
- <outcome value='Created'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`'Network is not in appropriate state for assign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />
- </return>
- </outcome>
- <outcome value='PendingDelete'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`'Network is not in appropriate state for assign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />
- </return>
- </outcome>
- <outcome value='PendingCreate'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`'Network is not in appropriate state for assign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />
- </return>
+<?xml version="1.0" encoding="utf-8"?>
+
+<service-logic xmlns="http://www.onap.org/sdnc/svclogic" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.onap.org/sdnc/svclogic ./svclogic.xsd" module="GENERIC-RESOURCE-API" version="${project.version}">
+ <method rpc="network-topology-operation" mode="sync">
+ <block atomic="true">
+ <call module="GENERIC-RESOURCE-API" rpc="validate-network-input" mode="sync"></call>
+ <switch test="`$network-topology-operation-input.sdnc-request-header.svc-action`">
+ <outcome value="assign">
+ <block atomic="true">
+ <switch test="`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`">
+ <outcome value="Created">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="`'Network is not in appropriate state for assign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`"/>
+ </return>
+ </outcome>
+ <outcome value="PendingDelete">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="`'Network is not in appropriate state for assign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`"/>
+ </return>
+ </outcome>
+ <outcome value="PendingCreate">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="`'Network is not in appropriate state for assign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`"/>
+ </return>
+ </outcome>
+ <outcome value="Other">
+ <call module="GENERIC-RESOURCE-API" rpc="network-topology-operation-assign" mode="sync"></call>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value="activate">
+ <switch test="`$network-topology-operation-input.request-information.request-action`">
+ <outcome value="ActivateSOTNConnectivityInstance">
+ <call module="GENERIC-RESOURCE-API" rpc="sotn-network-topology-operation-activate" mode="sync"></call>
+ </outcome>
+ <outcome value="ActivateDCINetworkInstance">
+ <call module="GENERIC-RESOURCE-API" rpc="dci-connects-network-topology-operation-activate" mode="sync"></call>
+ </outcome>
+ <outcome value="ActivateSDWANConnectivityInstance">
+ <call module="GENERIC-RESOURCE-API" rpc="sdwan-network-topology-operation-activate" mode="sync"></call>
+ </outcome>
+ <outcome value="other">
+ <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains">
+ <parameter name="source" value="`$network-topology-operation-input.service-information.onap-model-information.model-name`"/>
+ <parameter name="target" value="wan-connection"/>
+ <outcome value="true">
+ <call module="GENERIC-RESOURCE-API" rpc="wan-connection-topology-operation-activate" mode="sync"></call>
+ </outcome>
+ <outcome value="false">
+ <block atomic="true">
+ <switch test="`$service-data.networks.network_length`">
+ <outcome value="">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data"/>
+ </return>
+ </outcome>
+ <outcome value="Other">
+ <block atomic="true">
+ <for index="nidx" start="0" end="`$service-data.networks.network_length`">
+ <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">
+ <outcome value="true">
+ <set>
+ <parameter name="tmp.nidx" value="`$nidx`"/>
+ <parameter name="network-data." value="`$service-data.networks.network[$nidx].`"/>
+ </set>
+ </outcome>
+ </switch>
+ </for>
+ <switch test="`$tmp.nidx`">
+ <outcome value="">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data"/>
+ </return>
</outcome>
- <outcome value='Other'>
- <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-assign' mode='sync' ></call>
+ <outcome value="Other">
+ <set>
+ <parameter name="nidx" value="`$tmp.nidx`"/>
+ </set>
</outcome>
- </switch>
- </block>
- </outcome>
- <outcome value='activate'>
- <switch test='`$network-topology-operation-input.request-information.request-action`'>
- <outcome value='ActivateSOTNConnectivityInstance'>
- <call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-activate' mode='sync' ></call>
- </outcome>
- <outcome value='ActivateDCINetworkInstance'>
- <call module='GENERIC-RESOURCE-API' rpc='dci-connects-network-topology-operation-activate' mode='sync' ></call>
- </outcome>
- <outcome value='ActivateSDWANConnectivityInstance'>
- <call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-activate' mode='sync' ></call>
- </outcome>
- <outcome value='other'>
- <block atomic="true">
- <switch test='`$service-data.networks.network_length`'>
- <outcome value=''>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
- </return>
- </outcome>
- <outcome value='Other'>
- <block atomic="true">
- <for index='nidx' start='0' end='`$service-data.networks.network_length`' >
- <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">
- <outcome value='true'>
- <set>
- <parameter name='tmp.nidx' value='`$nidx`' />
- <parameter name='network-data.' value='`$service-data.networks.network[$nidx].`' />
- </set>
- </outcome>
- </switch>
- </for>
- <switch test="`$tmp.nidx`">
- <outcome value=''>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
- </return>
- </outcome>
- <outcome value='Other'>
- <set>
- <parameter name='nidx' value='`$tmp.nidx`' />
- </set>
- </outcome>
- </switch>
- </block>
- </outcome>
- </switch>
- <switch test='`$network-topology-operation-input.network-information.network-instance-group-id`'>
- <outcome value=''>
- <return status='success'>
- <parameter name='' value='' />
- </return>
- </outcome>
- <outcome value='Other'>
- <block>
- <switch test='`$service-data.network-instance-groups.network-instance-group_length`'>
- <outcome value=''>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-instance-group-id not found in service-data" />
- </return>
- </outcome>
- <outcome value='Other'>
- <block atomic="true">
- <for index='ngidx' start='0' end='`$service-data.network-instance-groups.network-instance-_length`' >
- <switch test="`$service-data.network-instance-groups.network-instance-group[$nidx].network-instance-group-id == $network-topology-operation-input.network-information.network-instance-group-id`">
- <outcome value='true'>
- <block atomic="true">
- <set>
- <parameter name='tmp.ngidx' value='`$ngidx`' />
- <parameter name='ctx.network-instance-group-data.' value='`$service-data.network-instance-groups.network-instance-group[$ngidx].`' />
- </set>
- </block>
- </outcome>
- </switch>
- </for>
- </block>
- </outcome>
- </switch>
- </block>
- </outcome>
- </switch>
- <switch test='`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`'>
- <outcome value='PendingCreate'>
- <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-activate' mode='sync' ></call>
- </outcome>
- <outcome value='Other'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`'Network is not in appropriate state for activate. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />
- </return>
- </outcome>
- </switch>
- </block>
- </outcome>
+ </switch>
+ </block>
+ </outcome>
</switch>
- </outcome>
- <outcome value='changeassign'>
- <block atomic="true">
- <switch test='`$service-data.networks.network_length`'>
- <outcome value=''>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
- </return>
+ <switch test="`$network-topology-operation-input.network-information.network-instance-group-id`">
+ <outcome value="">
+ <return status="success"></return>
+ </outcome>
+ <outcome value="Other">
+ <block>
+ <switch test="`$service-data.network-instance-groups.network-instance-group_length`">
+ <outcome value="">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-instance-group-id not found in service-data"/>
+ </return>
</outcome>
- <outcome value='Other'>
- <block atomic="true">
- <for index='nidx' start='0' end='`$service-data.networks.network_length`' >
- <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">
- <outcome value='true'>
- <set>
- <parameter name='tmp.nidx' value='`$nidx`' />
- <parameter name='network-data.' value='`$service-data.networks.network[$nidx].`' />
- </set>
- </outcome>
- </switch>
- </for>
- <switch test="`$tmp.nidx`">
- <outcome value=''>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
- </return>
- </outcome>
- <outcome value='Other'>
- <set>
- <parameter name='nidx' value='`$tmp.nidx`' />
- </set>
- </outcome>
- </switch>
- </block>
+ <outcome value="Other">
+ <block atomic="true">
+ <for index="ngidx" start="0" end="`$service-data.network-instance-groups.network-instance-_length`">
+ <switch test="`$service-data.network-instance-groups.network-instance-group[$nidx].network-instance-group-id == $network-topology-operation-input.network-information.network-instance-group-id`">
+ <outcome value="true">
+ <block atomic="true">
+ <set>
+ <parameter name="tmp.ngidx" value="`$ngidx`"/>
+ <parameter name="ctx.network-instance-group-data." value="`$service-data.network-instance-groups.network-instance-group[$ngidx].`"/>
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
</outcome>
- </switch>
- <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-changeassign' mode='sync' ></call>
- </block>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ <switch test="`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`">
+ <outcome value="PendingCreate">
+ <call module="GENERIC-RESOURCE-API" rpc="network-topology-operation-activate" mode="sync"></call>
+ </outcome>
+ <outcome value="Other">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="`'Network is not in appropriate state for activate. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`"/>
+ </return>
+ </outcome>
+ </switch>
+ </block>
</outcome>
- <outcome value='deactivate'>
- <switch test='`$network-topology-operation-input.request-information.request-action`'>
- <outcome value='DeactivateSOTNConnectivityInstance'>
- <call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-deactivate' mode='sync' ></call>
- </outcome>
- <outcome value='DeActivateDCINetworkInstance'>
- <call module='GENERIC-RESOURCE-API' rpc='dci-connects-network-topology-operation-deactivate' mode='sync' ></call>
- </outcome>
- <outcome value='DeactivateSDWANConnectivityInstance'>
- <call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-deactivate' mode='sync' ></call>
- </outcome>
- <outcome value='Other'>
- <block atomic="true">
- <switch test='`$service-data.networks.network_length`'>
- <outcome value=''>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
- </return>
- </outcome>
- <outcome value='Other'>
- <block atomic="true">
- <for index='nidx' start='0' end='`$service-data.networks.network_length`' >
- <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">
- <outcome value='true'>
- <set>
- <parameter name='tmp.nidx' value='`$nidx`' />
- <parameter name='network-data.' value='`$service-data.networks.network[$nidx].`' />
- </set>
- </outcome>
- </switch>
- </for>
- <switch test="`$tmp.nidx`">
- <outcome value=''>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
- </return>
- </outcome>
- <outcome value='Other'>
- <set>
- <parameter name='nidx' value='`$tmp.nidx`' />
- </set>
- </outcome>
- </switch>
- </block>
- </outcome>
- </switch>
- <switch test='`$network-topology-operation-input.network-information.network-instance-group-id`'>
- <outcome value=''>
- <return status='success'>
- <parameter name='' value='' />
- </return>
- </outcome>
- <outcome value='Other'>
- <block>
- <switch test='`$service-data.network-instance-groups.network-instance-group_length`'>
- <outcome value=''>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-instance-group-id not found in service-data" />
- </return>
- </outcome>
- <outcome value='Other'>
- <block atomic="true">
- <for index='ngidx' start='0' end='`$service-data.network-instance-groups.network-instance-_length`' >
- <switch test="`$service-data.network-instance-groups.network-instance-group[$nidx].network-instance-group-id == $network-topology-operation-input.network-information.network-instance-group-id`">
- <outcome value='true'>
- <block atomic="true">
- <set>
- <parameter name='tmp.ngidx' value='`$ngidx`' />
- <parameter name='ctx.network-instance-group-data.' value='`$service-data.network-instance-groups.network-instance-group[$ngidx].`' />
- </set>
- </block>
- </outcome>
- </switch>
- </for>
- </block>
- </outcome>
- </switch>
- </block>
- </outcome>
- </switch>
- <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-deactivate' mode='sync' ></call>
- </block>
- </outcome>
+ </execute>
+ </outcome>
+ </switch>
+ </outcome>
+ <outcome value="changeassign">
+ <block atomic="true">
+ <switch test="`$service-data.networks.network_length`">
+ <outcome value="">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data"/>
+ </return>
+ </outcome>
+ <outcome value="Other">
+ <block atomic="true">
+ <for index="nidx" start="0" end="`$service-data.networks.network_length`">
+ <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">
+ <outcome value="true">
+ <set>
+ <parameter name="tmp.nidx" value="`$nidx`"/>
+ <parameter name="network-data." value="`$service-data.networks.network[$nidx].`"/>
+ </set>
+ </outcome>
</switch>
+ </for>
+ <switch test="`$tmp.nidx`">
+ <outcome value="">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data"/>
+ </return>
+ </outcome>
+ <outcome value="Other">
+ <set>
+ <parameter name="nidx" value="`$tmp.nidx`"/>
+ </set>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ <call module="GENERIC-RESOURCE-API" rpc="network-topology-operation-changeassign" mode="sync"></call>
+ </block>
+ </outcome>
+ <outcome value="deactivate">
+ <switch test="`$network-topology-operation-input.request-information.request-action`">
+ <outcome value="DeactivateSOTNConnectivityInstance">
+ <call module="GENERIC-RESOURCE-API" rpc="sotn-network-topology-operation-deactivate" mode="sync"></call>
+ </outcome>
+ <outcome value="DeActivateDCINetworkInstance">
+ <call module="GENERIC-RESOURCE-API" rpc="dci-connects-network-topology-operation-deactivate" mode="sync"></call>
+ </outcome>
+ <outcome value="DeactivateSDWANConnectivityInstance">
+ <call module="GENERIC-RESOURCE-API" rpc="sdwan-network-topology-operation-deactivate" mode="sync"></call>
+ </outcome>
+ <outcome value="Other">
+ <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains">
+ <parameter name="source" value="`$network-topology-operation-input.service-information.onap-model-information.model-name`"/>
+ <parameter name="target" value="wan-connection"/>
+ <outcome value="true">
+ <call module="GENERIC-RESOURCE-API" rpc="wan-connection-topology-operation-deactivate" mode="sync"></call>
</outcome>
- <outcome value='unassign'>
- <block atomic="true">
- <switch test='`$service-data.networks.network_length`'>
- <outcome value=''>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
- </return>
- </outcome>
- <outcome value='Other'>
- <block atomic="true">
- <for index='nidx' start='0' end='`$service-data.networks.network_length`' >
- <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">
- <outcome value='true'>
- <set>
- <parameter name='tmp.nidx' value='`$nidx`' />
- <parameter name='network-data.' value='`$service-data.networks.network[$nidx].`' />
- </set>
- </outcome>
- </switch>
- </for>
- <switch test="`$tmp.nidx`">
- <outcome value=''>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data" />
- </return>
- </outcome>
- <outcome value='Other'>
- <set>
- <parameter name='nidx' value='`$tmp.nidx`' />
- </set>
- </outcome>
- </switch>
- </block>
+ <outcome value="false">
+ <block atomic="true">
+ <switch test="`$service-data.networks.network_length`">
+ <outcome value="">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data"/>
+ </return>
+ </outcome>
+ <outcome value="Other">
+ <block atomic="true">
+ <for index="nidx" start="0" end="`$service-data.networks.network_length`">
+ <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">
+ <outcome value="true">
+ <set>
+ <parameter name="tmp.nidx" value="`$nidx`"/>
+ <parameter name="network-data." value="`$service-data.networks.network[$nidx].`"/>
+ </set>
+ </outcome>
+ </switch>
+ </for>
+ <switch test="`$tmp.nidx`">
+ <outcome value="">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data"/>
+ </return>
</outcome>
- </switch>
- <switch test='`$network-topology-operation-input.network-information.network-instance-group-id`'>
- <outcome value=''>
- <return status='success'>
- <parameter name='' value='' />
- </return>
+ <outcome value="Other">
+ <set>
+ <parameter name="nidx" value="`$tmp.nidx`"/>
+ </set>
</outcome>
- <outcome value='Other'>
- <block>
- <switch test='`$service-data.network-instance-groups.network-instance-group_length`'>
- <outcome value=''>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-instance-group-id not found in service-data" />
- </return>
- </outcome>
- <outcome value='Other'>
- <block atomic="true">
- <for index='ngidx' start='0' end='`$service-data.network-instance-groups.network-instance-_length`' >
- <switch test="`$service-data.network-instance-groups.network-instance-group[$nidx].network-instance-group-id == $network-topology-operation-input.network-information.network-instance-group-id`">
- <outcome value='true'>
- <block atomic="true">
- <set>
- <parameter name='tmp.ngidx' value='`$ngidx`' />
- <parameter name='ctx.network-instance-group-data.' value='`$service-data.network-instance-groups.network-instance-group[$ngidx].`' />
- </set>
- </block>
- </outcome>
- </switch>
- </for>
- </block>
- </outcome>
- </switch>
- </block>
- </outcome>
- </switch>
- <switch test='`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`'>
- <outcome value='PendingCreate'>
- <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-unassign' mode='sync' ></call>
- </outcome>
- <outcome value='PendingDelete'>
- <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-unassign' mode='sync' ></call>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ <switch test="`$network-topology-operation-input.network-information.network-instance-group-id`">
+ <outcome value="">
+ <return status="success"></return>
+ </outcome>
+ <outcome value="Other">
+ <block>
+ <switch test="`$service-data.network-instance-groups.network-instance-group_length`">
+ <outcome value="">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-instance-group-id not found in service-data"/>
+ </return>
</outcome>
- <outcome value='Other'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`'Network is not in appropriate state for unassign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />
- </return>
+ <outcome value="Other">
+ <block atomic="true">
+ <for index="ngidx" start="0" end="`$service-data.network-instance-groups.network-instance-_length`">
+ <switch test="`$service-data.network-instance-groups.network-instance-group[$nidx].network-instance-group-id == $network-topology-operation-input.network-information.network-instance-group-id`">
+ <outcome value="true">
+ <block atomic="true">
+ <set>
+ <parameter name="tmp.ngidx" value="`$ngidx`"/>
+ <parameter name="ctx.network-instance-group-data." value="`$service-data.network-instance-groups.network-instance-group[$ngidx].`"/>
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
</outcome>
- </switch>
- </block>
- </outcome>
- <outcome value='create'>
- <switch test='`$network-topology-operation-input.request-information.request-action`'>
- <outcome value='CreateSOTNConnectivityInstance'>
- <call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-create' mode='sync' ></call>
- </outcome>
- <outcome value='CreateSDWANConnectivityInstance'>
- <call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-create' mode='sync' ></call>
- </outcome>
- <outcome value='other'>
- <block atomic="true">
- <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-create' mode='sync' ></call>
- </block>
- </outcome>
+ </switch>
+ </block>
+ </outcome>
</switch>
+ <call module="GENERIC-RESOURCE-API" rpc="network-topology-operation-deactivate" mode="sync"></call>
+ </block>
</outcome>
- <outcome value='delete'>
- <switch test='`$network-topology-operation-input.request-information.request-action`'>
- <outcome value='DeleteSOTNConnectivityInstance'>
- <call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-delete' mode='sync' ></call>
- </outcome>
- <outcome value='DeleteSDWANConnectivityInstance'>
- <call module='GENERIC-RESOURCE-API' rpc='sdwan-network-topology-operation-delete' mode='sync' ></call>
- </outcome>
- <outcome value='other'>
- <block atomic="true">
- <call module='GENERIC-RESOURCE-API' rpc='network-topology-operation-delete' mode='sync' ></call>
- </block>
- </outcome>
+ </execute>
+ </outcome>
+ </switch>
+ </outcome>
+ <outcome value="unassign">
+ <block atomic="true">
+ <switch test="`$service-data.networks.network_length`">
+ <outcome value="">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data"/>
+ </return>
+ </outcome>
+ <outcome value="Other">
+ <block atomic="true">
+ <for index="nidx" start="0" end="`$service-data.networks.network_length`">
+ <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">
+ <outcome value="true">
+ <set>
+ <parameter name="tmp.nidx" value="`$nidx`"/>
+ <parameter name="network-data." value="`$service-data.networks.network[$nidx].`"/>
+ </set>
+ </outcome>
</switch>
+ </for>
+ <switch test="`$tmp.nidx`">
+ <outcome value="">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-id not found in service-data"/>
+ </return>
+ </outcome>
+ <outcome value="Other">
+ <set>
+ <parameter name="nidx" value="`$tmp.nidx`"/>
+ </set>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ <switch test="`$network-topology-operation-input.network-information.network-instance-group-id`">
+ <outcome value="">
+ <return status="success"></return>
+ </outcome>
+ <outcome value="Other">
+ <block>
+ <switch test="`$service-data.network-instance-groups.network-instance-group_length`">
+ <outcome value="">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="network-topology-operation-input.network-request-input.network-instance-group-id not found in service-data"/>
+ </return>
+ </outcome>
+ <outcome value="Other">
+ <block atomic="true">
+ <for index="ngidx" start="0" end="`$service-data.network-instance-groups.network-instance-_length`">
+ <switch test="`$service-data.network-instance-groups.network-instance-group[$nidx].network-instance-group-id == $network-topology-operation-input.network-information.network-instance-group-id`">
+ <outcome value="true">
+ <block atomic="true">
+ <set>
+ <parameter name="tmp.ngidx" value="`$ngidx`"/>
+ <parameter name="ctx.network-instance-group-data." value="`$service-data.network-instance-groups.network-instance-group[$ngidx].`"/>
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ <switch test="`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`">
+ <outcome value="PendingCreate">
+ <call module="GENERIC-RESOURCE-API" rpc="network-topology-operation-unassign" mode="sync"></call>
+ </outcome>
+ <outcome value="PendingDelete">
+ <call module="GENERIC-RESOURCE-API" rpc="network-topology-operation-unassign" mode="sync"></call>
+ </outcome>
+ <outcome value="Other">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="`'Network is not in appropriate state for unassign. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`"/>
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value="create">
+ <switch test="`$network-topology-operation-input.request-information.request-action`">
+ <outcome value="CreateSOTNConnectivityInstance">
+ <call module="GENERIC-RESOURCE-API" rpc="sotn-network-topology-operation-create" mode="sync"></call>
+ </outcome>
+ <outcome value="CreateSDWANConnectivityInstance">
+ <call module="GENERIC-RESOURCE-API" rpc="sdwan-network-topology-operation-create" mode="sync"></call>
+ </outcome>
+ <outcome value="other">
+ <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains">
+ <parameter name="source" value="`$network-topology-operation-input.service-information.onap-model-information.model-name`"/>
+ <parameter name="target" value="wan-connection"/>
+ <outcome value="true">
+ <call module="GENERIC-RESOURCE-API" rpc="wan-connection-topology-operation-create" mode="sync"></call>
</outcome>
- <outcome value='reoptimize'>
- <switch test='`$network-topology-operation-input.request-information.request-action`'>
- <outcome value='ReoptimizeSOTNInstance'>
- <call module='GENERIC-RESOURCE-API' rpc='sotn-network-topology-operation-reoptimize' mode='sync' ></call>
- </outcome>
- </switch>
+ <outcome value="false">
+ <block atomic="true">
+ <call module="GENERIC-RESOURCE-API" rpc="network-topology-operation-create" mode="sync"></call>
+ </block>
</outcome>
- <outcome value='Other'>
- <return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="sdnc-request-header.svc-action is a required input" />
- </return>
+ </execute>
+ </outcome>
+ </switch>
+ </outcome>
+ <outcome value="delete">
+ <switch test="`$network-topology-operation-input.request-information.request-action`">
+ <outcome value="DeleteSOTNConnectivityInstance">
+ <call module="GENERIC-RESOURCE-API" rpc="sotn-network-topology-operation-delete" mode="sync"></call>
+ </outcome>
+ <outcome value="DeleteSDWANConnectivityInstance">
+ <call module="GENERIC-RESOURCE-API" rpc="sdwan-network-topology-operation-delete" mode="sync"></call>
+ </outcome>
+ <outcome value="other">
+ <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains">
+ <parameter name="source" value="`$network-topology-operation-input.service-information.onap-model-information.model-name`"/>
+ <parameter name="target" value="wan-connection"/>
+ <outcome value="true">
+ <call module="GENERIC-RESOURCE-API" rpc="wan-connection-topology-operation-deactivate" mode="sync"></call>
</outcome>
- </switch>
- <set>
- <parameter name="ack-final" value="Y"/>
- </set>
- <return status='success'>
- <parameter name="ack-final-indicator" value="Y" />
- <parameter name="error-code" value="200" />
- <parameter name="error-message" value="`$error-message`" />
- </return>
- </block>
- </method>
+ <outcome value="false">
+ <block atomic="true">
+ <call module="GENERIC-RESOURCE-API" rpc="network-topology-operation-delete" mode="sync"></call>
+ </block>
+ </outcome>
+ </execute>
+ </outcome>
+ </switch>
+ </outcome>
+ <outcome value="Other">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="sdnc-request-header.svc-action is a required input"/>
+ </return>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name="ack-final" value="Y"/>
+ </set>
+ <return status="success">
+ <parameter name="ack-final-indicator" value="Y"/>
+ <parameter name="error-code" value="200"/>
+ <parameter name="error-message" value="`$error-message`"/>
+ </return>
+ </block>
+ </method>
</service-logic>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-activate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-activate.xml
new file mode 100644
index 00000000..fbae8f81
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-activate.xml
@@ -0,0 +1,217 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<service-logic xmlns="http://www.onap.org/sdnc/svclogic" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.onap.org/sdnc/svclogic ./svclogic.xsd" module="GENERIC-RESOURCE-API" version="${project.version}">
+ <method rpc="wan-connection-topology-operation-activate" mode="sync">
+ <block atomic="true">
+ <execute plugin="org.onap.ccsdk.sli.plugins.prop.PropertiesNode" method="readProperties">
+ <parameter name="fileName" value="%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties"/>
+ <parameter name="contextPrefix" value="prop"/>
+ </execute>
+ <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="replace">
+ <parameter name="source" value="`$prop.network-provided-resource`"/>
+ <parameter name="outputPath" value="tmp.services-url"/>
+ <parameter name="target" value="{service-instance-id}"/>
+ <parameter name="replacement" value="`$network-topology-operation-input.service-information.service-id`"/>
+ </execute>
+ <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">
+ <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.services-url`"/>
+ <parameter name="restapiUser" value="`$prop.controller.user`"/>
+ <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="GET"/>
+ <parameter name="responsePrefix" value="mdsal-psd"/>
+ <outcome value="success">
+ <block></block>
+ </outcome>
+ <outcome value="Other">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="404"/>
+ <parameter name="error-message" value="Error: Parent service data not available"/>
+ </return>
+ </outcome>
+ </execute>
+ <set>
+ <parameter name="tmp.found-network-input" value="false"/>
+ </set>
+ <for index="pidx" start="0" end="`$mdsal-psd.service-data.networks.network_length`">
+ <switch test="`$mdsal-psd.service-data.networks.network[$pidx].network-data.network-information.onap-model-information.model-name == $network-topology-operation-input.network-information.onap-model-information.model-name`">
+ <outcome value="true">
+ <block atomic="true">
+ <set>
+ <parameter name="tmp.pidx" value="`$pidx`"/>
+ <parameter name="tmp.network." value="`$mdsal-psd.service-data.networks.network[$pidx].`"/>
+ <parameter name="tmp.network-input-parameters" value="`$mdsal-psd.service-data.networks.network[$pidx].network-data.network-request-input.network-input-parameters`"/>
+ <parameter name="tmp.found-network-input" value="true"/>
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ <switch test="`$found-network-input`">
+ <outcome value="false">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="404"/>
+ <parameter name="error-message" value="Error: Network input parameters not found"/>
+ </return>
+ </outcome>
+ <outcome value="true">
+ <block atomic="true">
+ <set>
+ <parameter name="tmp.restapiUrl-found" value="false"/>
+ <parameter name="tmp.restapiUser-found" value="false"/>
+ <parameter name="tmp.restapiPassword-found" value="false"/>
+ <parameter name="tmp.templateFileName-found" value="false"/>
+ <parameter name="tmp.thirdPartyAdaptorRpc-found" value="false"/>
+ </set>
+ <for index="cidx" start="0" end="`$tmp.network.network-data.network-topology.network-parameters.network-parameter_length`">
+ <block>
+ <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUrl'`">
+ <outcome value="true">
+ <set>
+ <parameter name="tmp.restapiUrl" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>
+ <parameter name="tmp.restapiUrl-found" value="true"/>
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUser'`">
+ <outcome value="true">
+ <set>
+ <parameter name="tmp.restapiUser" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>
+ <parameter name="tmp.restapiUser-found" value="true"/>
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiPassword'`">
+ <outcome value="true">
+ <set>
+ <parameter name="tmp.restapiPassword" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>
+ <parameter name="tmp.restapiPassword-found" value="true"/>
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'templateFileName'`">
+ <outcome value="true">
+ <set>
+ <parameter name="tmp.templateFileName" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>
+ <parameter name="tmp.templateFileName-found" value="true"/>
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'thirdPartyAdaptorRpc'`">
+ <outcome value="true">
+ <set>
+ <parameter name="tmp.thirdPartyAdaptorRpc" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>
+ <parameter name="tmp.thirdPartyAdaptorRpc-found" value="true"/>
+ </set>
+ </outcome>
+ </switch>
+ </block>
+ </for>
+ <switch test="`$tmp.thirdPartyAdaptorRpc-found == 'true'`">
+ <outcome value="true">
+ <call module="GENERIC-RESOURCE-API" rpc="`$tmp.thirdPartyAdaptorRpc`" mode="sync">
+ <outcome value="success">
+ <block></block>
+ </outcome>
+ <outcome value="failure">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="`'Error calling ' + $tmp.thirdPartyAdaptorRpc`"/>
+ </return>
+ </outcome>
+ <outcome value="not-found">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="`'Error calling ' + $tmp.thirdPartyAdaptorRpc`"/>
+ </return>
+ </outcome>
+ </call>
+ </outcome>
+ <outcome value="false">
+ <switch test="`$tmp.restapiUrl-found == 'true'`">
+ <outcome value="false">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="404"/>
+ <parameter name="error-message" value="Error: 3rd party controller restapiUrl not found"/>
+ </return>
+ </outcome>
+ <outcome value="true">
+ <switch test="`$tmp.restapiUser-found == 'true'`">
+ <outcome value="false">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="404"/>
+ <parameter name="error-message" value="Error: 3rd party controller restapiUser not found"/>
+ </return>
+ </outcome>
+ <outcome value="true">
+ <switch test="`$tmp.restapiPassword-found == 'true'`">
+ <outcome value="false">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="404"/>
+ <parameter name="error-message" value="Error: 3rd party controller restapiPassword not found"/>
+ </return>
+ </outcome>
+ <outcome value="true">
+ <switch test="`$tmp.templateFileName-found == 'true'`">
+ <outcome value="false">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="404"/>
+ <parameter name="error-message" value="Error: 3rd party controller templateFileName not found"/>
+ </return>
+ </outcome>
+ <outcome value="true">
+ <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">
+ <parameter name="templateFileName" value="`$tmp.templateFileName`"/>
+ <parameter name="restapiUrl" value="`$tmp.restapiUrl`"/>
+ <parameter name="restapiUser" value="`$tmp.restapiUser`"/>
+ <parameter name="restapiPassword" value="`$tmp.restapiPassword`"/>
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="post"/>
+ <parameter name="responsePrefix" value="restApi-result"/>
+ <outcome value="success">
+ <block></block>
+ </outcome>
+ <outcome value="failure">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="`'Error calling ' + $tmp.restapiUrl`"/>
+ </return>
+ </outcome>
+ <outcome value="not-found">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="`'Error calling ' + $tmp.restapiUrl`"/>
+ </return>
+ </outcome>
+ </execute>
+ </outcome>
+ </switch>
+ </outcome>
+ </switch>
+ </outcome>
+ </switch>
+ </outcome>
+ </switch>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ <return status="success">
+ <parameter name="ack-final-indicator" value="Y"/>
+ <parameter name="error-code" value="200"/>
+ <parameter name="error-message" value="`$error-message`"/>
+ </return>
+ </block>
+ </method>
+</service-logic>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-create.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-create.xml
new file mode 100644
index 00000000..61453eaf
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-create.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<service-logic xmlns="http://www.onap.org/sdnc/svclogic" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.onap.org/sdnc/svclogic ./svclogic.xsd" module="GENERIC-RESOURCE-API" version="${project.version}">
+ <method rpc="wan-connection-topology-operation-create" mode="sync">
+ <block atomic="true">
+ <switch test="`$network-topology-operation-input.network-information.network-id`">
+ <outcome value="">
+ <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="generateUUID">
+ <parameter name="ctx-destination" value="network-topology-operation-input.network-information.network-id"/>
+ <outcome value="failure">
+ <return status="failure">
+ <parameter name="error-code" value=""/>
+ <parameter name="error-message" value="An error occured while generation allotted resource ID"/>
+ </return>
+ </outcome>
+ </execute>
+ </outcome>
+ <outcome value="Other"></outcome>
+ </switch>
+ <execute plugin="org.onap.ccsdk.sli.plugins.prop.PropertiesNode" method="readProperties">
+ <parameter name="fileName" value="%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties"/>
+ <parameter name="contextPrefix" value="prop"/>
+ </execute>
+ <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains">
+ <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>
+ <parameter name="target" value="specification"/>
+ <outcome value="true">
+ <call module="GENERIC-RESOURCE-API" rpc="wan-connection-save-specification" mode="sync"></call>
+ </outcome>
+ <outcome value="false">
+ <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains">
+ <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>
+ <parameter name="target" value="FC"/>
+ <outcome value="true">
+ <call module="GENERIC-RESOURCE-API" rpc="wan-connection-find-specifications" mode="sync"></call>
+ </outcome>
+ <outcome value="false">
+ <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains">
+ <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>
+ <parameter name="target" value="FD"/>
+ <outcome value="true">
+ <call module="GENERIC-RESOURCE-API" rpc="wan-connection-find-specifications" mode="sync"></call>
+ </outcome>
+ <outcome value="false">
+ <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains">
+ <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>
+ <parameter name="target" value="Link"/>
+ <outcome value="true">
+ <call module="GENERIC-RESOURCE-API" rpc="wan-connection-route-calculation" mode="sync"></call>
+ </outcome>
+ <outcome value="false">
+ <block></block>
+ </outcome>
+ </execute>
+ </outcome>
+ </execute>
+ </outcome>
+ </execute>
+ </outcome>
+ </execute>
+ <return status="success">
+ <parameter name="ack-final-indicator" value="Y"/>
+ <parameter name="error-code" value="200"/>
+ <parameter name="error-message" value="`$error-message`"/>
+ </return>
+ </block>
+ </method>
+</service-logic>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-deactivate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-deactivate.xml
new file mode 100644
index 00000000..592fb65d
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-deactivate.xml
@@ -0,0 +1,215 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<service-logic xmlns="http://www.onap.org/sdnc/svclogic" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.onap.org/sdnc/svclogic ./svclogic.xsd" module="GENERIC-RESOURCE-API" version="${project.version}">
+ <method rpc="wan-connection-topology-operation-deactivate" mode="sync">
+ <block atomic="true">
+ <execute plugin="org.onap.ccsdk.sli.plugins.prop.PropertiesNode" method="readProperties">
+ <parameter name="fileName" value="%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties"/>
+ <parameter name="contextPrefix" value="prop"/>
+ </execute>
+ <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="replace">
+ <parameter name="source" value="`$prop.network-provided-resource`"/>
+ <parameter name="outputPath" value="tmp.services-url"/>
+ <parameter name="target" value="{service-instance-id}"/>
+ <parameter name="replacement" value="`$network-topology-operation-input.service-information.service-id`"/>
+ </execute>
+ <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">
+ <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.services-url`"/>
+ <parameter name="restapiUser" value="`$prop.controller.user`"/>
+ <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="GET"/>
+ <parameter name="responsePrefix" value="mdsal-psd"/>
+ <outcome value="success">
+ <block></block>
+ </outcome>
+ <outcome value="Other">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="404"/>
+ <parameter name="error-message" value="Error: Parent service data not available"/>
+ </return>
+ </outcome>
+ </execute>
+ <set>
+ <parameter name="tmp.found-network-input" value="false"/>
+ </set>
+ <for index="pidx" start="0" end="`$mdsal-psd.service-data.networks.network_length`">
+ <switch test="`$mdsal-psd.service-data.networks.network[$pidx].network-id == $network-topology-operation-input.network-information.network-id`">
+ <outcome value="true">
+ <block atomic="true">
+ <set>
+ <parameter name="tmp.pidx" value="`$pidx`"/>
+ <parameter name="tmp.network." value="`$mdsal-psd.service-data.networks.network[$pidx].`"/>
+ <parameter name="tmp.network-input-parameters" value="`$mdsal-psd.service-data.networks.network[$pidx].network-data.network-request-input.network-input-parameters`"/>
+ <parameter name="tmp.found-network-input" value="true"/>
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ <switch test="`$found-network-input`">
+ <outcome value="false">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="404"/>
+ <parameter name="error-message" value="Error: Network input parameters not found"/>
+ </return>
+ </outcome>
+ <outcome value="true">
+ <block atomic="true">
+ <set>
+ <parameter name="tmp.restapiUrl-found" value="false"/>
+ <parameter name="tmp.restapiUser-found" value="false"/>
+ <parameter name="tmp.restapiPassword-found" value="false"/>
+ <parameter name="tmp.thirdPartyAdaptorRpc-found" value="false"/>
+ <parameter name="tmp.actualId-found" value="false"/>
+ </set>
+ <for index="cidx" start="0" end="`$tmp.network.network-data.network-topology.network-parameters.network-parameter_length`">
+ <block>
+ <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUrl-deactivate'`">
+ <outcome value="true">
+ <set>
+ <parameter name="tmp.restapiUrl" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>
+ <parameter name="tmp.restapiUrl-found" value="true"/>
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiUser'`">
+ <outcome value="true">
+ <set>
+ <parameter name="tmp.restapiUser" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>
+ <parameter name="tmp.restapiUser-found" value="true"/>
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'restapiPassword'`">
+ <outcome value="true">
+ <set>
+ <parameter name="tmp.restapiPassword" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>
+ <parameter name="tmp.restapiPassword-found" value="true"/>
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'actualId'`">
+ <outcome value="true">
+ <set>
+ <parameter name="tmp.actualId" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>
+ <parameter name="tmp.actualId-found" value="true"/>
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-name == 'thirdPartyAdaptorRpc-deactivate'`">
+ <outcome value="true">
+ <set>
+ <parameter name="tmp.thirdPartyAdaptorRpc" value="`$tmp.network.network-data.network-topology.network-parameters.network-parameter[$cxid].network-parameter-value`"/>
+ <parameter name="tmp.thirdPartyAdaptorRpc-found" value="true"/>
+ </set>
+ </outcome>
+ </switch>
+ </block>
+ </for>
+ <switch test="`$tmp.thirdPartyAdaptorRpc-found == 'true'`">
+ <outcome value="true">
+ <call module="GENERIC-RESOURCE-API" rpc="`$tmp.thirdPartyAdaptorRpc`" mode="sync">
+ <outcome value="success">
+ <block></block>
+ </outcome>
+ <outcome value="failure">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="`'Error calling ' + $tmp.thirdPartyAdaptorRpc`"/>
+ </return>
+ </outcome>
+ <outcome value="not-found">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="`'Error calling ' + $tmp.thirdPartyAdaptorRpc`"/>
+ </return>
+ </outcome>
+ </call>
+ </outcome>
+ <outcome value="false">
+ <switch test="`$tmp.restapiUrl-found == 'true'`">
+ <outcome value="false">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="404"/>
+ <parameter name="error-message" value="Error: 3rd party controller restapiUrl not found"/>
+ </return>
+ </outcome>
+ <outcome value="true">
+ <switch test="`$tmp.restapiUser-found == 'true'`">
+ <outcome value="false">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="404"/>
+ <parameter name="error-message" value="Error: 3rd party controller restapiUser not found"/>
+ </return>
+ </outcome>
+ <outcome value="true">
+ <switch test="`$tmp.restapiPassword-found == 'true'`">
+ <outcome value="false">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="404"/>
+ <parameter name="error-message" value="Error: 3rd party controller restapiPassword not found"/>
+ </return>
+ </outcome>
+ <outcome value="true">
+ <switch test="`$tmp.actualId-found == 'true'`">
+ <outcome value="false">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="404"/>
+ <parameter name="error-message" value="Error: Wan Connection actualId not found"/>
+ </return>
+ </outcome>
+ <outcome value="true">
+ <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">
+ <parameter name="restapiUrl" value="`$tmp.restapiUrl + $tmp.actualId`"/>
+ <parameter name="restapiUser" value="`$tmp.restapiUser`"/>
+ <parameter name="restapiPassword" value="`$tmp.restapiPassword`"/>
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="delete"/>
+ <outcome value="success">
+ <block></block>
+ </outcome>
+ <outcome value="failure">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="`'Error calling ' + $tmp.restapiUrl`"/>
+ </return>
+ </outcome>
+ <outcome value="not-found">
+ <return status="failure">
+ <parameter name="ack-final" value="Y"/>
+ <parameter name="error-code" value="500"/>
+ <parameter name="error-message" value="`'Error calling ' + $tmp.restapiUrl`"/>
+ </return>
+ </outcome>
+ </execute>
+ </outcome>
+ </switch>
+ </outcome>
+ </switch>
+ </outcome>
+ </switch>
+ </outcome>
+ </switch>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ <return status="success">
+ <parameter name="ack-final-indicator" value="Y"/>
+ <parameter name="error-code" value="200"/>
+ <parameter name="error-message" value="`$error-message`"/>
+ </return>
+ </block>
+ </method>
+</service-logic>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-delete.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-delete.xml
new file mode 100644
index 00000000..9c24e525
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_wan-connection-topology-operation-delete.xml
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<service-logic xmlns="http://www.onap.org/sdnc/svclogic" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.onap.org/sdnc/svclogic ./svclogic.xsd" module="GENERIC-RESOURCE-API" version="${project.version}">
+ <method rpc="wan-connection-topology-operation-delete" mode="sync">
+ <block atomic="true">
+ <switch test="`$network-topology-operation-input.network-information.network-id`">
+ <outcome value="">
+ <return status="failure">
+ <parameter name="error-code" value=""/>
+ <parameter name="error-message" value="An error occured while generation allotted resource ID"/>
+ </return>
+ </outcome>
+ <outcome value="Other"></outcome>
+ </switch>
+ <execute plugin="org.onap.ccsdk.sli.plugins.prop.PropertiesNode" method="readProperties">
+ <parameter name="fileName" value="%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties"/>
+ <parameter name="contextPrefix" value="prop"/>
+ </execute>
+ <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains">
+ <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>
+ <parameter name="target" value="FC"/>
+ <outcome value="true">
+ <block atomic="true">
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+ <parameter name="file" value="/opt/opendaylight/current/data/log/svclogic.log"/>
+ <parameter name="field1" value="__TIMESTAMP__"/>
+ <parameter name="field2" value="wan-connection-topology-operation-delete"/>
+ <parameter name="field3" value="`$network-topology-operation-input.network-information.onap-model-information.model-name + ' delete'`"/>
+ </record>
+ <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="connectivity" key="connectivity.connectivity-id = $network-topology-operation-input.network-information.network-id"></delete>
+ <set>
+ <parameter name="service-data.networks.network_length" value="`$service-data.networks.network_length - 1`"/>
+ </set>
+ <set>
+ <parameter name="service-data.networks.network[$tmp.nidx]." value=""/>
+ </set>
+ <set>
+ <parameter name="networkId" value="`$network-topology-operation-input.network-information.network-id`"/>
+ <parameter name="service-object-path" value="`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $network-topology-operation-input.service-information.service-instance-id + '/service-data/service-topology/'` "/>
+ </set>
+ </block>
+ </outcome>
+ <outcome value="false">
+ <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains">
+ <parameter name="source" value="`$network-topology-operation-input.network-information.onap-model-information.model-name`"/>
+ <parameter name="target" value="FD"/>
+ <outcome value="true">
+ <block atomic="true">
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+ <parameter name="file" value="/opt/opendaylight/current/data/log/svclogic.log"/>
+ <parameter name="field1" value="__TIMESTAMP__"/>
+ <parameter name="field2" value="wan-connection-topology-operation-delete"/>
+ <parameter name="field3" value="`$network-topology-operation-input.network-information.onap-model-information.model-name + ' delete'`"/>
+ </record>
+ <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="connectivity" key="connectivity.connectivity-id = $network-topology-operation-input.network-information.network-id"></delete>
+ <set>
+ <parameter name="service-data.networks.network_length" value="`$service-data.networks.network_length - 1`"/>
+ </set>
+ <set>
+ <parameter name="service-data.networks.network[$tmp.nidx]." value=""/>
+ </set>
+ <set>
+ <parameter name="networkId" value="`$network-topology-operation-input.network-information.network-id`"/>
+ <parameter name="service-object-path" value="`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $network-topology-operation-input.service-information.service-instance-id + '/service-data/service-topology/'` "/>
+ </set>
+ </block>
+ </outcome>
+ <outcome value="false">
+ <block></block>
+ </outcome>
+ </execute>
+ </outcome>
+ </execute>
+ <return status="success">
+ <parameter name="ack-final-indicator" value="Y"/>
+ <parameter name="error-code" value="200"/>
+ <parameter name="error-message" value="`$error-message`"/>
+ </return>
+ </block>
+ </method>
+</service-logic>