aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZhuoyao Huang <10112215@zte.com.cn>2018-09-18 08:58:06 +0800
committerZhuoyao Huang <10112215@zte.com.cn>2018-09-18 14:52:30 +0800
commit29ae4c6b7b516eaac66bb359e6fcb3dad4a742a9 (patch)
tree1a4abf9b0264a856749e5cf4a1687f10f08529ca
parentcac704d8cbfad8710a32a4d589ae1c9a0b054bdd (diff)
Support Wan Connection
(https://wiki.onap.org/display/DW/CCVPN+Integration+Test+Case) Issue-ID: SDNC-354 Change-Id: Ied7189a0f229442517761ec7f785655115af6722 Signed-off-by: Zhuoyao Huang <10112215@zte.com.cn> Former-commit-id: 0b8a0b4581dba2d55608c67ee95ebda356e1cf33
-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_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
9 files changed, 3011 insertions, 0 deletions
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_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>