aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgaurav <gaurav.agrawal@huawei.com>2018-07-24 16:54:22 +0530
committergaurav <gaurav.agrawal@huawei.com>2018-07-24 16:54:22 +0530
commitada219fdb734f69ee23bb10ae4929eaf587f111f (patch)
treeb1a82e215e9cceac871609b2d70ed6e5540e8652
parenta5304e219bd29c881ab6c50be7a5a6463ef7afa8 (diff)
Adding connectivity attachment Resource DGs
Addition includes: 1. Templates for RestapiCallNode 2. DGs for activate, deactivate and delete Change-Id: Id6a6150d880a14ba71f9587484fc5677b8c5b24c Issue-ID: SDNC-356 Signed-off-by: Gaurav Agrawal <gaurav.agrawal@huawei.com> Former-commit-id: 295a37952f7e6209ab9dc8b7bd98a71d99325a01
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.json2970
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.json1777
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-delete.json1013
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.xml521
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.xml338
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-delete.xml175
-rw-r--r--platform-logic/restapi-templates/src/main/json/oof-getpath.json36
-rw-r--r--platform-logic/restapi-templates/src/main/json/sotn-ethernet-service.json70
8 files changed, 6900 insertions, 0 deletions
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.json
new file mode 100644
index 00000000..4b055d10
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.json
@@ -0,0 +1,2970 @@
+[
+ {
+ "id": "a77629b2.29acf8",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 104.03125,
+ "y": 31.999999523162842,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "2a935009.ef91b"
+ ]
+ ]
+ },
+ {
+ "id": "2a935009.ef91b",
+ "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": 316.03125381469727,
+ "y": 104.00001668930054,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "394d3966.f7a306"
+ ]
+ ]
+ },
+ {
+ "id": "394d3966.f7a306",
+ "type": "method",
+ "name": "sotn-attachment-topology-operation-activate",
+ "xml": "<method rpc='sotn-attachment-topology-operation-activate' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 304.0313720703125,
+ "y": 191.99999952316284,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "3355788a.12aa08"
+ ]
+ ]
+ },
+ {
+ "id": "3355788a.12aa08",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 320.0313720703125,
+ "y": 747.000244140625,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "3df84881.f08dd8",
+ "d2f1b91d.444978",
+ "e6d1c52b.520cc8",
+ "1587558f.923b5a",
+ "606696e.6cc0f68",
+ "6558b5c9.5b8bec",
+ "d1e1bdb5.615f1",
+ "c7d4c837.69f1a8",
+ "f3e22a0c.d8db48",
+ "cb89d188.f33cc",
+ "3bc10ee7.beb432",
+ "bef55f2e.ad6b3",
+ "36004db7.4505d2",
+ "d7f464d6.9ac5f8",
+ "a66d68ee.9308e8",
+ "9ab0f309.357b6",
+ "f9e2a4f.0cf5858",
+ "6afb5fe5.f951c",
+ "7b232ea8.d345"
+ ]
+ ]
+ },
+ {
+ "id": "3df84881.f08dd8",
+ "type": "set",
+ "name": "set tmp.ar.allotted-resource-id,etc",
+ "xml": "<set>\n<parameter name='tmp.ar.allotted-resource-id' value='`connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`' />\n<parameter name='tmp.ar.parent-service-instance-id' value='`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id`' />\n\n\n",
+ "comments": "",
+ "x": 717.0248107910156,
+ "y": 145.99348640441895,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "66bc483f.e63618",
+ "type": "comment",
+ "name": "set tmp ar-id to fetch resource from MDSAL",
+ "info": "",
+ "comments": "",
+ "x": 745.9851226806641,
+ "y": 110.02528238296509,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "d2f1b91d.444978",
+ "type": "set",
+ "name": "set tmp.ar.self-link",
+ "xml": "<set>\n<parameter name='tmp.ar.self-link' value=\"`'restconf/config/GENERIC-RESOURCE-API:connection-attachment-allotted-resources/connection-attachment-allotted-resource/'\n + $tmp.ar.allotted-resource-id\n + '/allotted-resource-data/connection-attachment-topology/'` \" />\n\n",
+ "comments": "",
+ "x": 671.0247497558594,
+ "y": 238.99349164962769,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "c7d4c837.69f1a8",
+ "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": 677.2866401672363,
+ "y": 326.66022062301636,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "e6d1c52b.520cc8",
+ "type": "execute",
+ "name": "generate allotted-resource url",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$prop.restapi.connection-attachment-allottedresource`\"/>\n <parameter name=\"outputPath\" value=\"tmp.ar-url\"/>\n <parameter name=\"target\" value=\"{allotted-resource-id}\"/>\n <parameter name=\"replacement\" value=\"`$tmp.ar.allotted-resource-id`\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 709.2866668701172,
+ "y": 414.6602020263672,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "1587558f.923b5a",
+ "type": "get-resource",
+ "name": "get-resource connection-attachment-allotted-resource",
+ "xml": "<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='connection-attachment-allotted-resources/connection-attachment-allotted-resource/$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id/' pfx='mdsal-ar' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 780.0247650146484,
+ "y": 504.7712607383728,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "9d21fc06.56c9b",
+ "b5f5dd22.5d92a"
+ ]
+ ]
+ },
+ {
+ "id": "4c5a1d8d.682774",
+ "type": "comment",
+ "name": "GET connection-attachment-allotted-resource from mdsal",
+ "info": "",
+ "comments": "",
+ "x": 786.8395614624023,
+ "y": 476.53857946395874,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "6cf9a5a4.2b253c",
+ "type": "comment",
+ "name": "Used for setting output to API Handler",
+ "info": "",
+ "comments": "",
+ "x": 725.0247802734375,
+ "y": 205.99350118637085,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "15f9c1a1.7257ee",
+ "type": "comment",
+ "name": "Obtain different URL, template location etc",
+ "info": "For saving resource information to MDSAL & for AAI",
+ "comments": "",
+ "x": 743.0247459411621,
+ "y": 291.88238191604614,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "b17883ed.6bb59",
+ "type": "comment",
+ "name": "Used to Get AR by id to MDSAL, same as self-link",
+ "info": "",
+ "comments": "",
+ "x": 769.0247650146484,
+ "y": 378.88234090805054,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "9d21fc06.56c9b",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1079.6979675292969,
+ "y": 489.9999918937683,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "a51a2d9d.383d"
+ ]
+ ]
+ },
+ {
+ "id": "a51a2d9d.383d",
+ "type": "block",
+ "name": "block: atomic",
+ "xml": "<block atomic=\"true\">\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1248.6979713439941,
+ "y": 488.4998927116394,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "1edb162f.f7047a"
+ ]
+ ]
+ },
+ {
+ "id": "1edb162f.f7047a",
+ "type": "switchNode",
+ "name": "switch cr length",
+ "xml": "<switch test='`$mdsal-ar.connection-attachment-allotted-resource_length`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1459.5552139282227,
+ "y": 488.1190218925476,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "2c727498.5563ec",
+ "cc396d19.c6009"
+ ]
+ ]
+ },
+ {
+ "id": "2c727498.5563ec",
+ "type": "other",
+ "name": "outcome 1",
+ "xml": "<outcome value='1'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1648.8885192871094,
+ "y": 488.1189799308777,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "94f9a14a.aa9d1"
+ ]
+ ]
+ },
+ {
+ "id": "94f9a14a.aa9d1",
+ "type": "block",
+ "name": "block: atomic",
+ "xml": "<block atomic='true'>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1833.4124088287354,
+ "y": 485.0238137245178,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "ccbbcb55.91af38",
+ "ca13a843.2cf298",
+ "b1755c5c.5e7d2"
+ ]
+ ]
+ },
+ {
+ "id": "151fea4f.a51286",
+ "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: SOTN resource not found\" />\n \n",
+ "comments": "",
+ "x": 1792.5502090454102,
+ "y": 566.0660452842712,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "b5f5dd22.5d92a",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1071.5497703552246,
+ "y": 525.0660767555237,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "318eef9c.54777"
+ ]
+ ]
+ },
+ {
+ "id": "318eef9c.54777",
+ "type": "block",
+ "name": "block: atomic",
+ "xml": "<block atomic=\"true\">\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1251.5497207641602,
+ "y": 525.7326273918152,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "151fea4f.a51286"
+ ]
+ ]
+ },
+ {
+ "id": "cc396d19.c6009",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1637.2164726257324,
+ "y": 525.3993401527405,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "151fea4f.a51286"
+ ]
+ ]
+ },
+ {
+ "id": "ccbbcb55.91af38",
+ "type": "set",
+ "name": "set connection-attachment-ar from get",
+ "xml": "<set>\n<parameter name='connection-attachment-ar.' value='$mdsal-ar.connection-attachment-allotted-resource[0].' />\n",
+ "comments": "",
+ "x": 2201.4758911132812,
+ "y": 454.0000534057617,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "b1755c5c.5e7d2",
+ "type": "set",
+ "name": "set oper-status",
+ "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.request-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-ar.allotted-resource-status.rpc-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.svc-request-id`' />\n\n",
+ "comments": "",
+ "x": 2135.4759216308594,
+ "y": 527.4285559654236,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "ca13a843.2cf298",
+ "type": "switchNode",
+ "name": "switch order-status",
+ "xml": "<switch test='`$connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2145.475700378418,
+ "y": 492.9999899864197,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "c5c8df87.d7496",
+ "96fbbcc4.3796a"
+ ]
+ ]
+ },
+ {
+ "id": "c5c8df87.d7496",
+ "type": "outcome",
+ "name": "outcome Created",
+ "xml": "<outcome value='Created'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2381.075782775879,
+ "y": 487.00002098083496,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "88f78e4e.b4f9"
+ ]
+ ]
+ },
+ {
+ "id": "96fbbcc4.3796a",
+ "type": "outcome",
+ "name": "outcome Other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2374.7902221679688,
+ "y": 526.4286289215088,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "935468c0.294618"
+ ]
+ ]
+ },
+ {
+ "id": "88f78e4e.b4f9",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2595.546298980713,
+ "y": 488.37565517425537,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "935468c0.294618",
+ "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\" \n value=\"`'Existing connection-attachment-allotted-resource with order status of ' + $connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status + '.'`\" />\n",
+ "comments": "",
+ "x": 2614.6980018615723,
+ "y": 529.0000190734863,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "cd666072.c4472",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:sotn-get-request-input-param",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='connection-attachment-get-request-input-param' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 967.3342895507812,
+ "y": 594.4935550689697,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "f3e22a0c.d8db48",
+ "type": "block",
+ "name": "block: atomic",
+ "xml": "<block atomic=\"true\">\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 649.3403663635254,
+ "y": 594.4998416900635,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "cd666072.c4472"
+ ]
+ ]
+ },
+ {
+ "id": "606696e.6cc0f68",
+ "type": "get-resource",
+ "name": "get-resource parent-service-data",
+ "xml": "<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='services/service/$tmp.ar.parent-service-instance-id/service-data' pfx='mdsal-psd' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 714.0316772460938,
+ "y": 736.5316162109375,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "f37fbd01.3a27c",
+ "a7659493.fc2068"
+ ]
+ ]
+ },
+ {
+ "id": "3f9c5fc2.bcfea",
+ "type": "comment",
+ "name": "GET parent-service-data from mdsal to check existence of other End point",
+ "info": "",
+ "comments": "",
+ "x": 834.0316162109375,
+ "y": 665.5315551757812,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "a4aef874.7e7e88",
+ "type": "for",
+ "name": "for pidx..mdsal-psd.provided-allotted-resources.provided-allotted-resource[]",
+ "xml": "<for index='pidx' start='0' end='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1723.2160968780518,
+ "y": 904.0041084289551,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "c0e3f5d5.ead6e8"
+ ]
+ ]
+ },
+ {
+ "id": "6558b5c9.5b8bec",
+ "type": "switchNode",
+ "name": "switch mdsal-psd.provided-allotted-resources_length",
+ "xml": "<switch test='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 780.2154541015625,
+ "y": 880.7180786132812,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "c8d5ad22.c170b",
+ "7c868dde.220b24",
+ "5e4728c1.e810e8"
+ ]
+ ]
+ },
+ {
+ "id": "c8d5ad22.c170b",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1112.3582763671875,
+ "y": 1157.5755004882812,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "bad30438.d05408"
+ ]
+ ]
+ },
+ {
+ "id": "3a4d0461.4005dc",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1306.4856853485107,
+ "y": 898.7015209197998,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "a4aef874.7e7e88",
+ "e5572f4b.0166d"
+ ]
+ ]
+ },
+ {
+ "id": "c0e3f5d5.ead6e8",
+ "type": "switchNode",
+ "name": "switch allotted-resource-id",
+ "xml": "<switch test=\"`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2158.3274974823,
+ "y": 904.0040054321289,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "ac0df227.58a1c",
+ "39a3c95.9a56f36"
+ ]
+ ]
+ },
+ {
+ "id": "ac0df227.58a1c",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2367.1377239227295,
+ "y": 876.4684953689575,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "22a29502.ccff9a"
+ ]
+ ]
+ },
+ {
+ "id": "64186f05.4be35",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2546.8984203338623,
+ "y": 940.3256740570068,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "482d5120.f30ca",
+ "a13cbdb.502bd4"
+ ]
+ ]
+ },
+ {
+ "id": "482d5120.f30ca",
+ "type": "set",
+ "name": "set tmp.pidx and ptx.consumed-ar",
+ "xml": "<set>\n<parameter name='tmp.pidx' value='`$pidx`' />\n<parameter name='tmp.provided-ar.' value='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$pidx].`' />\n<parameter name='tmp.found-in-ar' value='true' />\n<parameter name='tmp.ep-available' value='true' />",
+ "comments": "",
+ "x": 2803.755926132202,
+ "y": 914.8971881866455,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "a13cbdb.502bd4",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 2714.6166439056396,
+ "y": 961.6532039642334,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "f72ddcab.98ba7",
+ "type": "comment",
+ "name": "Check existence of other AR in parent service data",
+ "info": "Check if other allotted resource is available.",
+ "comments": "",
+ "x": 769.993896484375,
+ "y": 814.8928833007812,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "7c868dde.220b24",
+ "type": "other",
+ "name": "outcome 1",
+ "xml": "<outcome value='1'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1124.0107231140137,
+ "y": 1028.6772651672363,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "4884d527.f966cc"
+ ]
+ ]
+ },
+ {
+ "id": "bad30438.d05408",
+ "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: SOTN resource not found\" />\n \n",
+ "comments": "",
+ "x": 1285.0106201171875,
+ "y": 1156.6772422790527,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "5e4728c1.e810e8",
+ "type": "other",
+ "name": "outcome 2",
+ "xml": "<outcome value='2'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1132.010705947876,
+ "y": 899.6772212982178,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "3a4d0461.4005dc"
+ ]
+ ]
+ },
+ {
+ "id": "22a29502.ccff9a",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2525.1219387054443,
+ "y": 875.6772384643555,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "39a3c95.9a56f36",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2366.1219387054443,
+ "y": 938.6772384643555,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "64186f05.4be35"
+ ]
+ ]
+ },
+ {
+ "id": "e5572f4b.0166d",
+ "type": "switchNode",
+ "name": "switch tmp.found-in-ar",
+ "xml": "<switch test='`$tmp.found-in-ar`'>\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1553.0106105804443,
+ "y": 975.4549942016602,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "23e2fd66.fcd7c2"
+ ]
+ ]
+ },
+ {
+ "id": "23e2fd66.fcd7c2",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1776.0106563568115,
+ "y": 974.5661640167236,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "8fa1eba4.3c67f8"
+ ]
+ ]
+ },
+ {
+ "id": "8fa1eba4.3c67f8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1966.0106868743896,
+ "y": 974.5662136077881,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "5c438258.2817dc"
+ ]
+ ]
+ },
+ {
+ "id": "5c438258.2817dc",
+ "type": "get-resource",
+ "name": "get-resource provided-ar.allotted-resource",
+ "xml": "<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='connection-attachment-allotted-resources/connection-attachment-allotted-resource/$tmp.provided-ar.allotted-resource-id/' pfx='mdsal-other-ar' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 2271.4550399780273,
+ "y": 1026.5662593841553,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "75e596c5.28a268",
+ "3fc2682f.986b78"
+ ]
+ ]
+ },
+ {
+ "id": "75e596c5.28a268",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2571.128242492676,
+ "y": 1011.7949905395508,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "2d352ea7.0e12c2"
+ ]
+ ]
+ },
+ {
+ "id": "3fc2682f.986b78",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2562.9800453186035,
+ "y": 1046.8610754013062,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "1ccb7b0b.274855"
+ ]
+ ]
+ },
+ {
+ "id": "abb4ba72.e83978",
+ "type": "switchNode",
+ "name": "switch mdsal-psd.networks_length",
+ "xml": "<switch test='`$mdsal-psd.networks.network_length`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1550.3441162109375,
+ "y": 1127.8997802734375,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "7abae666.d51f58",
+ "f199acdb.1cc56"
+ ]
+ ]
+ },
+ {
+ "id": "f199acdb.1cc56",
+ "type": "other",
+ "name": "outcome 1",
+ "xml": "<outcome value='1'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1829.343994140625,
+ "y": 1137.78857421875,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "362dc46c.af4b8c"
+ ]
+ ]
+ },
+ {
+ "id": "7abae666.d51f58",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1823.3441162109375,
+ "y": 1197.78857421875,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "7c1c105.99f43f"
+ ]
+ ]
+ },
+ {
+ "id": "7c1c105.99f43f",
+ "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: Incorrect state found more then 1 network\" />\n \n",
+ "comments": "",
+ "x": 1979.9964599609375,
+ "y": 1198.890380859375,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "df5ebca6.dc1ea",
+ "type": "set",
+ "name": "set tmp.network.",
+ "xml": "<set>\n<parameter name='tmp.network.' value='`$mdsal-psd.networks.network[0].`' />\n",
+ "comments": "",
+ "x": 2276.7888259887695,
+ "y": 1121.7887411117554,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "4884d527.f966cc",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1296.455078125,
+ "y": 1029.7885131835938,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "abb4ba72.e83978"
+ ]
+ ]
+ },
+ {
+ "id": "362dc46c.af4b8c",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2021.1217041015625,
+ "y": 1140.7884521484375,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "df5ebca6.dc1ea",
+ "37668a8f.d84a36"
+ ]
+ ]
+ },
+ {
+ "id": "37668a8f.d84a36",
+ "type": "for",
+ "name": "for nidx..tmp.network.network-data.network-request-input.network...[]",
+ "xml": "<for index='nidx' start='0' end='`$tmp.network.network-data.network-request-input.network-input-parameters.param_length`' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 2438.1218338012695,
+ "y": 1188.7885284423828,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "8d783898.486c38"
+ ]
+ ]
+ },
+ {
+ "id": "8d783898.486c38",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2809.67724609375,
+ "y": 1221.7884521484375,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "f4f7612.08260a",
+ "4421135d.084d2c",
+ "5f144f0e.31549",
+ "37e78cdf.278a44",
+ "ed440eb3.36c94",
+ "f75e941b.01edb8",
+ "5523625.526319c",
+ "882c3718.7bb828",
+ "dae6d839.a75e08",
+ "bc77042c.0ab858"
+ ]
+ ]
+ },
+ {
+ "id": "f4f7612.08260a",
+ "type": "switchNode",
+ "name": "switch access-node-id",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$nidx].name == 'access-node-id'`\">",
+ "comments": "",
+ "outputs": 1,
+ "x": 3015.1881942749023,
+ "y": 1069.7990770339966,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "5989197c.f6f7f8"
+ ]
+ ]
+ },
+ {
+ "id": "5989197c.f6f7f8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3204.1878204345703,
+ "y": 1071.7989416122437,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "b51d0ed2.6b0e5"
+ ]
+ ]
+ },
+ {
+ "id": "b51d0ed2.6b0e5",
+ "type": "set",
+ "name": "set tmp.found-in-network tmp.ep-available",
+ "xml": "<set>\n<parameter name='tmp.found-in-network' value='true' />\n<parameter name='tmp.ep-available' value='true' />",
+ "comments": "",
+ "x": 3457.1879959106445,
+ "y": 1071.3989877700806,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "4421135d.084d2c",
+ "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": 2996.1772994995117,
+ "y": 1526.7884120941162,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "d1e1bdb5.615f1",
+ "type": "switchNode",
+ "name": "switch tmp.ep-available",
+ "xml": "<switch test='`$tmp.ep-available`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 706.3440551757812,
+ "y": 1292.2327880859375,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "32c06766.90eaa8",
+ "3e428e4a.b1f8b2"
+ ]
+ ]
+ },
+ {
+ "id": "3e428e4a.b1f8b2",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 925.0107746124268,
+ "y": 1341.5661449432373,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "5db74705.3b89f8"
+ ]
+ ]
+ },
+ {
+ "id": "32c06766.90eaa8",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 929.8995761871338,
+ "y": 1250.5662059783936,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "64e7831f.72ebbc"
+ ]
+ ]
+ },
+ {
+ "id": "64e7831f.72ebbc",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1076.8995723724365,
+ "y": 1252.4550189971924,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "5db74705.3b89f8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1095.121862411499,
+ "y": 1339.5661029815674,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "3c2f6627.61512a",
+ "380c3c36.553114",
+ "42f94a2e.999604"
+ ]
+ ]
+ },
+ {
+ "id": "3c2f6627.61512a",
+ "type": "switchNode",
+ "name": "switch tmp.found-in-ar",
+ "xml": "<switch test='`$tmp.found-in-ar`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1325.23291015625,
+ "y": 1274.566162109375,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "d79615f7.087d78",
+ "1c319701.787ef9"
+ ]
+ ]
+ },
+ {
+ "id": "d79615f7.087d78",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1545.677282333374,
+ "y": 1260.5661029815674,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "ba9cd8cc.15f248"
+ ]
+ ]
+ },
+ {
+ "id": "1c319701.787ef9",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1546.67724609375,
+ "y": 1306.566162109375,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "719bb92a.4ee018"
+ ]
+ ]
+ },
+ {
+ "id": "ba9cd8cc.15f248",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1733.232946395874,
+ "y": 1257.5661029815674,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "a6fc819d.1ebca"
+ ]
+ ]
+ },
+ {
+ "id": "719bb92a.4ee018",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1734.23291015625,
+ "y": 1305.566162109375,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "815fbac.230c748"
+ ]
+ ]
+ },
+ {
+ "id": "25783fac.20762",
+ "type": "comment",
+ "name": "GET connection-attachment-ar to store AR data from mdsal",
+ "info": "",
+ "comments": "",
+ "x": 2265.5040397644043,
+ "y": 416.5039129257202,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "b02bb1b6.e7f4b",
+ "type": "comment",
+ "name": "Set source end point",
+ "info": "",
+ "comments": "",
+ "x": 671.0039176940918,
+ "y": 562.2539224624634,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "cb89d188.f33cc",
+ "type": "set",
+ "name": "set tmp.ar.parent-service-instance-id",
+ "xml": "<set>\n<parameter name='tmp.ar.parent-service-instance-id' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` \" />\n\n",
+ "comments": "",
+ "x": 725,
+ "y": 701,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "f37fbd01.3a27c",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 961,
+ "y": 729,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "204f751a.862bca"
+ ]
+ ]
+ },
+ {
+ "id": "a7659493.fc2068",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 952.8518028259277,
+ "y": 764.0660848617554,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "7b61e92b.2f9e78"
+ ]
+ ]
+ },
+ {
+ "id": "7b61e92b.2f9e78",
+ "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: SOTN resource not found\" />\n \n",
+ "comments": "",
+ "x": 1128.00048828125,
+ "y": 760.3334350585938,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "204f751a.862bca",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1112,
+ "y": 727,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "1ccb7b0b.274855",
+ "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: SOTN provided attachment resource not found\" />\n \n",
+ "comments": "",
+ "x": 2732.9999256134033,
+ "y": 1048.0000953674316,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "2d352ea7.0e12c2",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2716.9999256134033,
+ "y": 1009.0000953674316,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "3bc10ee7.beb432",
+ "type": "set",
+ "name": "set tmp.found-in-ar tmp.found-in-network tmp.ep-available to false",
+ "xml": "<set>\n<parameter name='tmp.found-in-ar' value='false' />\n<parameter name='tmp.found-in-network' value='false' />\n<parameter name='tmp.ep-available' value='false' />",
+ "comments": "",
+ "x": 817,
+ "y": 846,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "c79a6189.fcf2c",
+ "type": "comment",
+ "name": "If other EP exists set destination end point",
+ "info": "Check if other allotted resource is available.",
+ "comments": "",
+ "x": 757,
+ "y": 1217,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "bac44858.bd4fb8",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1524,
+ "y": 1423,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "43736465.ded50c",
+ "1f0536d6.03d209",
+ "1c6c8b83.e7b554",
+ "804dff2.f416",
+ "faab91d9.9baa6",
+ "40922023.6161",
+ "cce7fa52.3ac5b8",
+ "afdc2a42.250d98"
+ ]
+ ]
+ },
+ {
+ "id": "43736465.ded50c",
+ "type": "switchNode",
+ "name": "switch access-node-id",
+ "xml": "<switch test=\"`$tmp.ep.parameters.param[$idx].name == 'access-node-id'`\">",
+ "comments": "",
+ "outputs": 1,
+ "x": 1760.51025390625,
+ "y": 1356.0103759765625,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "327e9777.bfc4d8"
+ ]
+ ]
+ },
+ {
+ "id": "1f0536d6.03d209",
+ "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": 1733.5002059936523,
+ "y": 1661.0003395080566,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "1c6c8b83.e7b554",
+ "type": "switchNode",
+ "name": "switch access-ltp-id",
+ "xml": "<switch test=\"`$tmp.ep.parameters.param[$idx].name == 'access-ltp-id'`\">",
+ "comments": "",
+ "outputs": 1,
+ "x": 1752.0000839233398,
+ "y": 1399.777907371521,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "a140ea29.0beb08"
+ ]
+ ]
+ },
+ {
+ "id": "804dff2.f416",
+ "type": "switchNode",
+ "name": "switch clientSignal",
+ "xml": "<switch test=\"`$tmp.ep.parameters.param[$idx].name == 'clientSignal'`\">",
+ "comments": "",
+ "outputs": 1,
+ "x": 1746.0001220703125,
+ "y": 1445.7779541015625,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "ce02a989.0990f8"
+ ]
+ ]
+ },
+ {
+ "id": "faab91d9.9baa6",
+ "type": "switchNode",
+ "name": "switch cVLAN",
+ "xml": "<switch test=\"`$tmp.ep.parameters.param[$idx].name == 'cVLAN'`\">",
+ "comments": "",
+ "outputs": 1,
+ "x": 1729.9896240234375,
+ "y": 1484.7674560546875,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "f26df0a2.edf49"
+ ]
+ ]
+ },
+ {
+ "id": "327e9777.bfc4d8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1938.22216796875,
+ "y": 1356.666748046875,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "ded3a3b2.bb6de"
+ ]
+ ]
+ },
+ {
+ "id": "ded3a3b2.bb6de",
+ "type": "set",
+ "name": "set dst-access-node-id",
+ "xml": "<set>\n<parameter name='prop.remote.connection-attachment.access-node-id' value='`$tmp.ep.parameters.param[$idx].value`' />",
+ "comments": "",
+ "x": 2111.22216796875,
+ "y": 1356.2667236328125,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "a140ea29.0beb08",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1933.7120361328125,
+ "y": 1399.4342041015625,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "d26fb8e0.ff59f8"
+ ]
+ ]
+ },
+ {
+ "id": "ce02a989.0990f8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1933.7120361328125,
+ "y": 1445.4342041015625,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "ee911b75.034b28"
+ ]
+ ]
+ },
+ {
+ "id": "f26df0a2.edf49",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1933.7015380859375,
+ "y": 1484.423828125,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "16f5641b.4b39fc"
+ ]
+ ]
+ },
+ {
+ "id": "380c3c36.553114",
+ "type": "for",
+ "name": "for idx..tmp.ep.parameters[]",
+ "xml": "<for index='idx' start='0' end='`$tmp.ep.parameters.param_length`' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 1342,
+ "y": 1356,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "bac44858.bd4fb8"
+ ]
+ ]
+ },
+ {
+ "id": "a6fc819d.1ebca",
+ "type": "set",
+ "name": "set tmp.ep.parameters",
+ "xml": "<set>\n<parameter name='tmp.ep.parameters' value='`$mdsal-other-ar.allotted-resource-data.connection-attachment-topology.connection-attachment-parameters`' />",
+ "comments": "",
+ "x": 1945,
+ "y": 1257,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "815fbac.230c748",
+ "type": "set",
+ "name": "set tmp.ep.parameters",
+ "xml": "<set>\n<parameter name='tmp.ep.parameters' value='`$tmp.network.network-data.network-request-input.network-input-parameters`' />\n",
+ "comments": "",
+ "x": 1945.999963760376,
+ "y": 1301.0000591278076,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "d26fb8e0.ff59f8",
+ "type": "set",
+ "name": "set dst-access-node-id",
+ "xml": "<set>\n<parameter name='prop.remote.connection-attachment.access-ltp-id' value='`$tmp.ep.parameters.param[$idx].value`' />",
+ "comments": "",
+ "x": 2111,
+ "y": 1399,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "ee911b75.034b28",
+ "type": "set",
+ "name": "set dst-clientSignal",
+ "xml": "<set>\n<parameter name='prop.remote.connection-attachment.clientSignal' value='`$tmp.ep.parameters.param[$idx].value`' />",
+ "comments": "",
+ "x": 2105,
+ "y": 1443,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "16f5641b.4b39fc",
+ "type": "set",
+ "name": "set dst-cVLAN",
+ "xml": "<set>\n<parameter name='prop.remote.connection-attachment.cVLAN' value='`$tmp.ep.parameters.param[$idx].value`' />",
+ "comments": "",
+ "x": 2096,
+ "y": 1482,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "42f94a2e.999604",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 736,
+ "y": 1584,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "cb687dc5.52b2d",
+ "4ed51df6.e8ec54"
+ ]
+ ]
+ },
+ {
+ "id": "164aff86.323ed",
+ "type": "comment",
+ "name": "Get controller info and send request",
+ "info": "",
+ "comments": "",
+ "x": 686,
+ "y": 1546,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "9edea41a.d68a58",
+ "type": "execute",
+ "name": "execute RestApiCallNode Create ethernet Service",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sotn-ethernet-service.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + 'restconf/data/ietf-eth-tran-service:etht-svc'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"patch\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 1379.0000305175781,
+ "y": 2062.0007610321045,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "616e1655.379198",
+ "b0089735.e037f8"
+ ]
+ ]
+ },
+ {
+ "id": "616e1655.379198",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1666.0000228881836,
+ "y": 2083.0007104873657,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "96c14b60.8835b8"
+ ]
+ ]
+ },
+ {
+ "id": "96c14b60.8835b8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1835.9999618530273,
+ "y": 2086.0007104873657,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "a39478d4.ff01e8",
+ "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 executing Create vpn rest api\" />\n",
+ "comments": "",
+ "x": 1836.0000839233398,
+ "y": 2042.0007104873657,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "b0089735.e037f8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1668.9999618530273,
+ "y": 2042.0007104873657,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "a39478d4.ff01e8"
+ ]
+ ]
+ },
+ {
+ "id": "ed031fec.cf219",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1018.7622451782227,
+ "y": 2481.953144431114,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "2bd27313.7e4a0c"
+ ]
+ ]
+ },
+ {
+ "id": "2bd27313.7e4a0c",
+ "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=\"AAI failed\" />\n",
+ "comments": "",
+ "x": 1185.2861251831055,
+ "y": 2493.572215437889,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "581d8c50.26f904",
+ "type": "failure",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1025.8575325012207,
+ "y": 2514.715112090111,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "2bd27313.7e4a0c"
+ ]
+ ]
+ },
+ {
+ "id": "9aeb74dd.a24a08",
+ "type": "comment",
+ "name": "Save Resource to AAI",
+ "info": "",
+ "comments": "",
+ "x": 737.8099594116211,
+ "y": 2464.302532672882,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "9158a090.142c2",
+ "type": "comment",
+ "name": "TODO: Rework after confirmation from AAI",
+ "info": "",
+ "comments": "",
+ "x": 1038.1688690185547,
+ "y": 2441.873571395874,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "f9e2a4f.0cf5858",
+ "type": "set",
+ "name": "set output to api handler",
+ "xml": "<set>\n<parameter name='allotted-resource-id' value='`$tmp.ar.allotted-resource-id`' />\n<parameter name='connection-attachment-object-path' value=\"`$tmp.ar.self-link`\"/>\n<parameter name='service-object-path' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $connection-attachment-topology-operation-input.service-information.service-instance-id\n + '/service-data/service-topology/'`\"/>\n \n",
+ "comments": "",
+ "x": 752.5776557922363,
+ "y": 2385.828013896942,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "6afb5fe5.f951c",
+ "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": 720.9907379150391,
+ "y": 2546.443766117096,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "9ab0f309.357b6",
+ "type": "execute",
+ "name": "execute RestApiCallNode - PUT AR by id",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='templateFileName' value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.sotn-attachment.templatefile`\" />\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-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='PUT' />\n <parameter name=\"responsePrefix\" value=\"mdsal-ar\" />\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 802.309757232666,
+ "y": 2293.4687876701355,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "cf614e80.0a4b3",
+ "6d53da86.669ad4",
+ "131ccd05.2f3143"
+ ]
+ ]
+ },
+ {
+ "id": "cf614e80.0a4b3",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1070.9511337280273,
+ "y": 2344.8001994118094,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "ef1dfc84.71501"
+ ]
+ ]
+ },
+ {
+ "id": "6d53da86.669ad4",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1061.9511833190918,
+ "y": 2313.300225161016,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "ef1dfc84.71501"
+ ]
+ ]
+ },
+ {
+ "id": "131ccd05.2f3143",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1065.7012214660645,
+ "y": 2283.6573300361633,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "e18bb85.a259b48"
+ ]
+ ]
+ },
+ {
+ "id": "ef1dfc84.71501",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error updating md-sal for connection-attachment-allotted-resource\" />\n",
+ "comments": "",
+ "x": 1231.7012214660645,
+ "y": 2314.050249002874,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "e18bb85.a259b48",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1207.3571891784668,
+ "y": 2279.8494992256165,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "bef55f2e.ad6b3",
+ "type": "set",
+ "name": "set ar-data",
+ "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-status.action' value=\"`$connection-attachment-topology-operation-input.request-information.request-action` \" />\n<parameter name='connection-attachment-ar.allotted-resource-status.rpc-name' value=\"connection-attachment-topology-operation\" />\n<parameter name='connection-attachment-ar.allotted-resource-status.rpc-action' value=\"`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.' value=\"`$connection-attachment-topology-operation-input.request-information.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.' value=\"`$connection-attachment-topology-operation-input.sdnc-request-header.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.service-information.' value=\"`$connection-attachment-topology-operation-input.service-information.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.` \" />",
+ "comments": "",
+ "x": 707.5233535766602,
+ "y": 2144.849767923355,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "d7f464d6.9ac5f8",
+ "type": "execute",
+ "name": "execute getTime",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setTime' >\n <parameter name=\"outputPath\" value=\"tmp.current-time\" />\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 724.809196472168,
+ "y": 2217.4693655967712,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "a66d68ee.9308e8",
+ "type": "set",
+ "name": "set allotted-resource-oper-status",
+ "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status' value='Active' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-topology-operation-input.request-information.request-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-request-id`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.create-timestamp' value='`$tmp.current-time`' />\n",
+ "comments": "",
+ "x": 774.7962760925293,
+ "y": 2254.420445919037,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "36004db7.4505d2",
+ "type": "set",
+ "name": "set model-data",
+ "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-data.connection-attachment-topology.onap-model-information.' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.` \" />",
+ "comments": "",
+ "x": 721.3648948669434,
+ "y": 2184.0244183540344,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "8c652fd0.4d9e2",
+ "type": "comment",
+ "name": "Prepare data for allotted-resource addition to MDSAL",
+ "info": "This will add to allotted-resource which is present inside service.",
+ "comments": "",
+ "x": 834.698356628418,
+ "y": 2105.0243704319,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "69186aa2.60ef84",
+ "type": "comment",
+ "name": "Add to allotted-resources in mdsal",
+ "info": "",
+ "comments": "",
+ "x": 776.2781829833984,
+ "y": 2072.437672138214,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "7b232ea8.d345",
+ "type": "update",
+ "name": "update AAI allotted-resource",
+ "xml": "<update plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"allotted-resource\" \n\t\tkey=\"customer.global-customer-id = $connection-attachment-topology-operation-input.service-information.global-customer-id AND\n\t\t\tservice-subscription.service-type = $connection-attachment-topology-operation-input.service-information.subscription-service-type AND\n\t\t\tservice-instance.service-instance-id = $connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id AND\n\t\t\tallotted-resource.id = $tmp.ar.allotted-resource-id\"\n pfx='pfx' local-only='false' force='false'>\n\t<parameter name=\"description\" value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type`\" />\n\t<parameter name=\"selflink\" value=\"`$tmp.ar.self-link`\" />\n\t<parameter name=\"model-invariant-id\" value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-invariant-uuid`\" />\n\t<parameter name=\"model-version-id\" value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-uuid`\" />\n\t<parameter name=\"operational-status\" value=\"Active\" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 764.2542381286621,
+ "y": 2501.754675388336,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "ed031fec.cf219",
+ "581d8c50.26f904"
+ ]
+ ]
+ },
+ {
+ "id": "cb687dc5.52b2d",
+ "type": "execute",
+ "name": "execute RestApiCallNode getPath from OOF",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.oof-getpath.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.restapi.connection-oof-url'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.oof.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.oof.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"oof\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 1043.0040130615234,
+ "y": 1572.2544918060303,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "e275a7ba.f6ec08",
+ "ec20f395.66c91"
+ ]
+ ]
+ },
+ {
+ "id": "e275a7ba.f6ec08",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1350.0039558410645,
+ "y": 1593.2543387413025,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "d000e963.b327a8"
+ ]
+ ]
+ },
+ {
+ "id": "d000e963.b327a8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1520.0038948059082,
+ "y": 1596.2543387413025,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "773ede9b.4ecb",
+ "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 executing Create vpn rest api\" />\n",
+ "comments": "",
+ "x": 1520.0040168762207,
+ "y": 1552.2543387413025,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "ec20f395.66c91",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1353.0038948059082,
+ "y": 1552.2543387413025,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "773ede9b.4ecb"
+ ]
+ ]
+ },
+ {
+ "id": "461ac2a4.5bdfec",
+ "type": "comment",
+ "name": "Get VPNs from OOF",
+ "info": "",
+ "comments": "",
+ "x": 963.0079040527344,
+ "y": 1535.2584590911865,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "4ed51df6.e8ec54",
+ "type": "for",
+ "name": "for vidx..oof.vpns_length[]",
+ "xml": "<for index='vidx' start='0' end='`$oof.vpns_length`' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 994.0039024353027,
+ "y": 1656.5040574073792,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "fa8596fd.dc6fb8"
+ ]
+ ]
+ },
+ {
+ "id": "9e6cff97.3e047",
+ "type": "comment",
+ "name": "Loop through VPN and configure them",
+ "info": "",
+ "comments": "",
+ "x": 1016.004020690918,
+ "y": 1620.0043177604675,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "5f144f0e.31549",
+ "type": "switchNode",
+ "name": "switch name",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'name'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2994.7882919311523,
+ "y": 1167.1217517852783,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "36d080c6.aaac9"
+ ]
+ ]
+ },
+ {
+ "id": "36d080c6.aaac9",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3181.788299560547,
+ "y": 1161.1216888427734,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "dd94e80d.e79a58"
+ ]
+ ]
+ },
+ {
+ "id": "dd94e80d.e79a58",
+ "type": "set",
+ "name": "set etht-svc-name & bandwidth-profile-name",
+ "xml": "<set>\n<parameter name='prop.global.sotn.etht-svc-name' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n<parameter name='prop.global.sotn.bandwidth-profile-name' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+ "comments": "",
+ "x": 3443.788589477539,
+ "y": 1147.721715927124,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "37e78cdf.278a44",
+ "type": "switchNode",
+ "name": "switch description",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'description'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3005.627960205078,
+ "y": 1205.1216869354248,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "87cfc59c.1be938"
+ ]
+ ]
+ },
+ {
+ "id": "87cfc59c.1be938",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3175.627960205078,
+ "y": 1201.1216869354248,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "af30cb49.aad268"
+ ]
+ ]
+ },
+ {
+ "id": "af30cb49.aad268",
+ "type": "set",
+ "name": "set etht-svc-descr",
+ "xml": "<set>\n<parameter name='prop.global.sotn.etht-svc-descr' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+ "comments": "",
+ "x": 3362.961400985718,
+ "y": 1199.5828437805176,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "ed440eb3.36c94",
+ "type": "switchNode",
+ "name": "switch tenantId",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'tenantId'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2991.010353088379,
+ "y": 1251.455090522766,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "824d6eab.2a9f8"
+ ]
+ ]
+ },
+ {
+ "id": "824d6eab.2a9f8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3183.010341644287,
+ "y": 1244.4550142288208,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "58ea9e80.950b3"
+ ]
+ ]
+ },
+ {
+ "id": "58ea9e80.950b3",
+ "type": "set",
+ "name": "set tenantId",
+ "xml": "<set>\n<parameter name='prop.global.sotn.tenantId' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+ "comments": "",
+ "x": 3351.010341644287,
+ "y": 1245.0550203323364,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "5523625.526319c",
+ "type": "switchNode",
+ "name": "switch CIR",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'CIR'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2977.849998474121,
+ "y": 1338.455072402954,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "6cc5147d.9f838c"
+ ]
+ ]
+ },
+ {
+ "id": "6cc5147d.9f838c",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3185.850067138672,
+ "y": 1334.4550857543945,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "5119c20c.53e31c"
+ ]
+ ]
+ },
+ {
+ "id": "5119c20c.53e31c",
+ "type": "set",
+ "name": "set cir",
+ "xml": "<set>\n<parameter name='prop.sotn.cir' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+ "comments": "",
+ "x": 3335.1833877563477,
+ "y": 1332.9162330627441,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "f75e941b.01edb8",
+ "type": "switchNode",
+ "name": "switch vpnType",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'vpnType'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2997.1584701538086,
+ "y": 1292.2327914237976,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "94f8c651.7d4c68"
+ ]
+ ]
+ },
+ {
+ "id": "94f8c651.7d4c68",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3184.1584701538086,
+ "y": 1288.2327914237976,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "a2401fbd.0e5a6"
+ ]
+ ]
+ },
+ {
+ "id": "a2401fbd.0e5a6",
+ "type": "set",
+ "name": "set vpnType",
+ "xml": "<set>\n<parameter name='prop.global.sotn.vpnType' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+ "comments": "",
+ "x": 3353.49210357666,
+ "y": 1285.693956375122,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "882c3718.7bb828",
+ "type": "switchNode",
+ "name": "switch EIR",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'EIR'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2979.140449523926,
+ "y": 1381.1529388427734,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "6a090cfc.b29bc4"
+ ]
+ ]
+ },
+ {
+ "id": "6a090cfc.b29bc4",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3181.140411376953,
+ "y": 1376.152958869934,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "7cfdc8c0.796128"
+ ]
+ ]
+ },
+ {
+ "id": "7cfdc8c0.796128",
+ "type": "set",
+ "name": "set eir",
+ "xml": "<set>\n<parameter name='prop.global.sotn.eir' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+ "comments": "",
+ "x": 3337.4739151000977,
+ "y": 1375.614094734192,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "dae6d839.a75e08",
+ "type": "switchNode",
+ "name": "switch color-aware",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'color-aware'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3006.1407203674316,
+ "y": 1435.152904510498,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "1c170ed.c3c73f1"
+ ]
+ ]
+ },
+ {
+ "id": "1c170ed.c3c73f1",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3184.140724182129,
+ "y": 1429.1528968811035,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "aafef618.cfb6d8"
+ ]
+ ]
+ },
+ {
+ "id": "aafef618.cfb6d8",
+ "type": "set",
+ "name": "set colorAware",
+ "xml": "<set>\n<parameter name='prop.global.sotn.colorAware' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+ "comments": "",
+ "x": 3365.4741020202637,
+ "y": 1428.614055633545,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "bc77042c.0ab858",
+ "type": "switchNode",
+ "name": "switch coupling-flag",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'coupling-flag'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3006.140727996826,
+ "y": 1481.1529293060303,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "9c20abd0.a9e0c8"
+ ]
+ ]
+ },
+ {
+ "id": "9c20abd0.a9e0c8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3184.1407203674316,
+ "y": 1473.1528978347778,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "28950acd.c17166"
+ ]
+ ]
+ },
+ {
+ "id": "28950acd.c17166",
+ "type": "set",
+ "name": "set couplingFlag",
+ "xml": "<set>\n<parameter name='prop.global.sotn.couplingFlag' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n",
+ "comments": "",
+ "x": 3369.4741020202637,
+ "y": 1473.6140804290771,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "dddada55.283bb8",
+ "type": "comment",
+ "name": "Check if other EP exists in SOTNConnectionResource",
+ "info": "",
+ "comments": "",
+ "x": 3109.3440551757812,
+ "y": 1034.7883319854736,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "e2fb1fc.98e08e",
+ "type": "comment",
+ "name": "Get other global parameters from network",
+ "info": "",
+ "comments": "",
+ "x": 3080.3438568115234,
+ "y": 1126.7882843017578,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "40922023.6161",
+ "type": "switchNode",
+ "name": "switch access-provider-id",
+ "xml": "<switch test=\"`$tmp.ep.parameters.param[$idx].name == 'access-provider-id'`\">",
+ "comments": "",
+ "outputs": 1,
+ "x": 1767.56591796875,
+ "y": 1530.232666015625,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "dcc5b1ab.d080a"
+ ]
+ ]
+ },
+ {
+ "id": "dcc5b1ab.d080a",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1954.56591796875,
+ "y": 1526.232666015625,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "61749b73.8eae04"
+ ]
+ ]
+ },
+ {
+ "id": "61749b73.8eae04",
+ "type": "set",
+ "name": "set access-provider-id",
+ "xml": "<set>\n<parameter name='prop.remote.connection-attachment.access-provider-id' value='`$tmp.ep.parameters.param[$idx].value`' />\n",
+ "comments": "",
+ "x": 2122.56591796875,
+ "y": 1526.8326721191406,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "cce7fa52.3ac5b8",
+ "type": "switchNode",
+ "name": "switch access-client-id",
+ "xml": "<switch test=\"`$tmp.ep.parameters.param[$idx].name == 'access-client-id'`\">",
+ "comments": "",
+ "outputs": 1,
+ "x": 1758.565933227539,
+ "y": 1573.2431144714355,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "17cba761.8a69d9"
+ ]
+ ]
+ },
+ {
+ "id": "17cba761.8a69d9",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1945.565933227539,
+ "y": 1569.2431144714355,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "e72fdf36.f1b28"
+ ]
+ ]
+ },
+ {
+ "id": "e72fdf36.f1b28",
+ "type": "set",
+ "name": "set access-client-id",
+ "xml": "<set>\n<parameter name='prop.remote.connection-attachment.access-client-id' value='`$tmp.ep.parameters.param[$idx].value`' />\n",
+ "comments": "",
+ "x": 2113.565933227539,
+ "y": 1569.8431205749512,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "afdc2a42.250d98",
+ "type": "switchNode",
+ "name": "switch access-topology-id",
+ "xml": "<switch test=\"`$tmp.ep.parameters.param[$idx].name == 'access-topology-id'`\">",
+ "comments": "",
+ "outputs": 1,
+ "x": 1771.5658779144287,
+ "y": 1615.2431454658508,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "d336b3c.0b7875"
+ ]
+ ]
+ },
+ {
+ "id": "d336b3c.0b7875",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1958.5658779144287,
+ "y": 1611.2431454658508,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "85508473.900a98"
+ ]
+ ]
+ },
+ {
+ "id": "85508473.900a98",
+ "type": "set",
+ "name": "set access-topology-id",
+ "xml": "<set>\n<parameter name='prop.remote.connection-attachment.access-topology-id' value='`$tmp.ep.parameters.param[$idx].value`' />\n",
+ "comments": "",
+ "x": 2126.5658779144287,
+ "y": 1611.8431515693665,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "fa8596fd.dc6fb8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1066.1213836669922,
+ "y": 1742.3442287445068,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "9edea41a.d68a58",
+ "abb09171.f6ee",
+ "abc114d6.41e528",
+ "9b39618e.ffe5f"
+ ]
+ ]
+ },
+ {
+ "id": "521aa066.c8761",
+ "type": "set",
+ "name": "set controller data",
+ "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.url' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.user' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.password' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`\" />\n",
+ "comments": "",
+ "x": 1764.56591796875,
+ "y": 1896.6771240234375,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "abb09171.f6ee",
+ "type": "get-resource",
+ "name": "get-resource esr-thirdparty-sdnc",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"esr-thirdparty-sdnc\" \n\t\tkey=\"esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND \n\t\t depth = '1'\"\n pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1328.0658569335938,
+ "y": 1955.6771240234375,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "b2bcb2cd.da9e",
+ "d1f1ad90.96011",
+ "bed51f39.f008"
+ ]
+ ]
+ },
+ {
+ "id": "b2bcb2cd.da9e",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1567.0658569335938,
+ "y": 1908.6771240234375,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "521aa066.c8761"
+ ]
+ ]
+ },
+ {
+ "id": "d1f1ad90.96011",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1570.5568237304688,
+ "y": 1956.2511596679688,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "d02c15ce.c1c438"
+ ]
+ ]
+ },
+ {
+ "id": "bed51f39.f008",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1565.8898315429688,
+ "y": 1997.58447265625,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "1dfb5bf0.cbb2c4"
+ ]
+ ]
+ },
+ {
+ "id": "d02c15ce.c1c438",
+ "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=\"`'An error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`\" />\n\n",
+ "comments": "",
+ "x": 1747.1282348632812,
+ "y": 1944.5368957519531,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "1dfb5bf0.cbb2c4",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'Unexpected error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`\" />\n\n",
+ "comments": "",
+ "x": 1753.6623878479004,
+ "y": 1993.0236654281616,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "abc114d6.41e528",
+ "type": "get-resource",
+ "name": "get-resource pnf",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"pnf\" \n\t\tkey=\"pnf.pnf-name = $oof.vpn.access-node-id AND \n\t\t depth = '0'\"\n pfx='tmp.aai.pnf' local-only='false' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1274.56591796875,
+ "y": 1768.6771240234375,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "e5c7f4bb.a977b8",
+ "c9ac24e7.49a298",
+ "89a637ca.249d28"
+ ]
+ ]
+ },
+ {
+ "id": "e5c7f4bb.a977b8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1621.5658569335938,
+ "y": 1772.6771545410156,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "9bb25e1d.4626"
+ ]
+ ]
+ },
+ {
+ "id": "c9ac24e7.49a298",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1625.0568237304688,
+ "y": 1820.2511901855469,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "700f50e2.2becf"
+ ]
+ ]
+ },
+ {
+ "id": "89a637ca.249d28",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1620.3898315429688,
+ "y": 1861.5845031738281,
+ "z": "205403e9.560efc",
+ "wires": [
+ [
+ "634a1d02.90e474"
+ ]
+ ]
+ },
+ {
+ "id": "700f50e2.2becf",
+ "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=\"`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`\" />\n\n",
+ "comments": "",
+ "x": 1801.6282348632812,
+ "y": 1808.5369262695312,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "634a1d02.90e474",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`\" />\n\n",
+ "comments": "",
+ "x": 1808.1623878479004,
+ "y": 1857.0236959457397,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "9bb25e1d.4626",
+ "type": "set",
+ "name": "set tmp.thirdparty-sdnc-id",
+ "xml": "<set>\n<parameter name='tmp.thirdparty-sdnc-id' value=\"`$tmp.aai.pnf.relationship-list.relationship[0].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 1825.5658569335938,
+ "y": 1759.6771545410156,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "f371e386.134de",
+ "type": "comment",
+ "name": "get domain controller information",
+ "info": "",
+ "comments": "",
+ "x": 1319.0697860717773,
+ "y": 1734.6810216903687,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "9b39618e.ffe5f",
+ "type": "set",
+ "name": "set oof.vpn",
+ "xml": "<set>\n<parameter name='oof.vpn.' value='`$oof.vpns[$vidx].`' />",
+ "comments": "",
+ "x": 1256.5658874511719,
+ "y": 1695.7881488800049,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "ab06a549.912008",
+ "type": "comment",
+ "name": "TODO: Add VPN resource and its relation with SOTN Connectivity resource",
+ "info": "",
+ "comments": "",
+ "x": 1452.0103912353516,
+ "y": 2134.6769676208496,
+ "z": "205403e9.560efc",
+ "wires": [
+
+ ]
+ }
+]
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.json
new file mode 100644
index 00000000..f4f4f06c
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.json
@@ -0,0 +1,1777 @@
+[
+ {
+ "id": "8f583882.aaba08",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 107.66669082641602,
+ "y": 36.000003814697266,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "1c8f0b92.b2d0f4"
+ ]
+ ]
+ },
+ {
+ "id": "1c8f0b92.b2d0f4",
+ "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": 319.6666946411133,
+ "y": 108.00002098083496,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "7867cbb1.cd6464"
+ ]
+ ]
+ },
+ {
+ "id": "7867cbb1.cd6464",
+ "type": "method",
+ "name": "sotn-attachment-topology-operation-deactivate",
+ "xml": "<method rpc='sotn-attachment-topology-operation-deactivate' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 307.6668128967285,
+ "y": 196.00000381469727,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "788e5fc3.c5d94"
+ ]
+ ]
+ },
+ {
+ "id": "788e5fc3.c5d94",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 323.6668128967285,
+ "y": 751.0002484321594,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "ed3ad3e3.7e5ae",
+ "bfd4a9cf.aa7918",
+ "9c88cb66.2575d8",
+ "8484c7db.980518",
+ "3abce4e4.32a12c",
+ "d7eaa0c2.0d298",
+ "601263d0.9079dc",
+ "290c05a0.21ca9a",
+ "dfdf08a.1b550f8",
+ "5040dd33.924624",
+ "7ff9e776.cf4d98",
+ "5af6e72b.9d69a8",
+ "2d9aed4c.fcfbd2",
+ "1d49bda0.f37e32",
+ "285d454d.f5f90a",
+ "c5b69925.729378",
+ "bc602338.67328",
+ "f080d760.856678",
+ "8e738bcf.052208"
+ ]
+ ]
+ },
+ {
+ "id": "ed3ad3e3.7e5ae",
+ "type": "set",
+ "name": "set tmp.ar.allotted-resource-id,etc",
+ "xml": "<set>\n<parameter name='tmp.ar.allotted-resource-id' value='`connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`' />\n<parameter name='tmp.ar.parent-service-instance-id' value='`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id`' />\n\n\n",
+ "comments": "",
+ "x": 720.6602516174316,
+ "y": 149.99349069595337,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "4411681c.96fbf8",
+ "type": "comment",
+ "name": "set tmp ar-id to fetch resource from MDSAL",
+ "info": "",
+ "comments": "",
+ "x": 749.6205635070801,
+ "y": 114.02528667449951,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "bfd4a9cf.aa7918",
+ "type": "set",
+ "name": "set tmp.ar.self-link",
+ "xml": "<set>\n<parameter name='tmp.ar.self-link' value=\"`'restconf/config/GENERIC-RESOURCE-API:connection-attachment-allotted-resources/connection-attachment-allotted-resource/'\n + $tmp.ar.allotted-resource-id\n + '/allotted-resource-data/connection-attachment-topology/'` \" />\n\n",
+ "comments": "",
+ "x": 674.6601905822754,
+ "y": 242.9934959411621,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "290c05a0.21ca9a",
+ "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": 680.9220809936523,
+ "y": 330.6602249145508,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "9c88cb66.2575d8",
+ "type": "execute",
+ "name": "generate allotted-resource url",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$prop.restapi.connection-attachment-allottedresource`\"/>\n <parameter name=\"outputPath\" value=\"tmp.ar-url\"/>\n <parameter name=\"target\" value=\"{allotted-resource-id}\"/>\n <parameter name=\"replacement\" value=\"`$tmp.ar.allotted-resource-id`\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 712.9221076965332,
+ "y": 418.6602063179016,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "8484c7db.980518",
+ "type": "get-resource",
+ "name": "get-resource connection-attachment-allotted-resource",
+ "xml": "<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='connection-attachment-allotted-resources/connection-attachment-allotted-resource/$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id/' pfx='mdsal-ar' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 783.6602058410645,
+ "y": 508.7712650299072,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "4af802cd.0768bc",
+ "9704e270.344da"
+ ]
+ ]
+ },
+ {
+ "id": "eec65610.3652f8",
+ "type": "comment",
+ "name": "GET connection-attachment-allotted-resource from mdsal",
+ "info": "",
+ "comments": "",
+ "x": 790.4750022888184,
+ "y": 480.53858375549316,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "eed42f31.59a27",
+ "type": "comment",
+ "name": "Used for setting output to API Handler",
+ "info": "",
+ "comments": "",
+ "x": 728.6602210998535,
+ "y": 209.99350547790527,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "a03ab63b.9e0678",
+ "type": "comment",
+ "name": "Obtain different URL, template location etc",
+ "info": "For saving resource information to MDSAL & for AAI",
+ "comments": "",
+ "x": 746.6601867675781,
+ "y": 295.88238620758057,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "94d139ba.87f2c8",
+ "type": "comment",
+ "name": "Used to Get AR by id to MDSAL, same as self-link",
+ "info": "",
+ "comments": "",
+ "x": 772.6602058410645,
+ "y": 382.88234519958496,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "4af802cd.0768bc",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1083.333408355713,
+ "y": 493.99999618530273,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "a5fa6dd6.43795"
+ ]
+ ]
+ },
+ {
+ "id": "a5fa6dd6.43795",
+ "type": "block",
+ "name": "block: atomic",
+ "xml": "<block atomic=\"true\">\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1252.3334121704102,
+ "y": 492.4998970031738,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "2f8c441e.efd2ec"
+ ]
+ ]
+ },
+ {
+ "id": "2f8c441e.efd2ec",
+ "type": "switchNode",
+ "name": "switch cr length",
+ "xml": "<switch test='`$mdsal-ar.connection-attachment-allotted-resource_length`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1463.1906547546387,
+ "y": 492.11902618408203,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "e3552b55.2b7868",
+ "579fccfb.5c4c54"
+ ]
+ ]
+ },
+ {
+ "id": "e3552b55.2b7868",
+ "type": "other",
+ "name": "outcome 1",
+ "xml": "<outcome value='1'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1652.5239601135254,
+ "y": 492.1189842224121,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "81b472dd.735a8"
+ ]
+ ]
+ },
+ {
+ "id": "81b472dd.735a8",
+ "type": "block",
+ "name": "block: atomic",
+ "xml": "<block atomic='true'>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1837.0478496551514,
+ "y": 489.02381801605225,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "d81a29f1.be9278",
+ "d95be879.b1bde8",
+ "f4a4bf1b.b7da1"
+ ]
+ ]
+ },
+ {
+ "id": "31667ce1.fcbca4",
+ "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: SOTN resource not found\" />\n \n",
+ "comments": "",
+ "x": 1796.1856498718262,
+ "y": 570.0660495758057,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "9704e270.344da",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1075.1852111816406,
+ "y": 529.0660810470581,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "766c605e.af77c"
+ ]
+ ]
+ },
+ {
+ "id": "766c605e.af77c",
+ "type": "block",
+ "name": "block: atomic",
+ "xml": "<block atomic=\"true\">\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1255.1851615905762,
+ "y": 529.7326316833496,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "31667ce1.fcbca4"
+ ]
+ ]
+ },
+ {
+ "id": "579fccfb.5c4c54",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1640.8519134521484,
+ "y": 529.3993444442749,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "31667ce1.fcbca4"
+ ]
+ ]
+ },
+ {
+ "id": "d81a29f1.be9278",
+ "type": "set",
+ "name": "set connection-attachment-ar from get",
+ "xml": "<set>\n<parameter name='connection-attachment-ar.' value='$mdsal-ar.connection-attachment-allotted-resource[0].' />\n",
+ "comments": "",
+ "x": 2206.1111946105957,
+ "y": 456.0000344514847,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "f4a4bf1b.b7da1",
+ "type": "set",
+ "name": "set oper-status",
+ "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.request-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-ar.allotted-resource-status.rpc-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.svc-request-id`' />\n\n",
+ "comments": "",
+ "x": 2139.1113624572754,
+ "y": 531.428560256958,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "d95be879.b1bde8",
+ "type": "switchNode",
+ "name": "switch order-status",
+ "xml": "<switch test='`$connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2149.111141204834,
+ "y": 496.9999942779541,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "e17a8fee.41d4",
+ "d3c8707c.374dc"
+ ]
+ ]
+ },
+ {
+ "id": "e17a8fee.41d4",
+ "type": "outcome",
+ "name": "outcome Active",
+ "xml": "<outcome value='Active'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2384.711223602295,
+ "y": 491.0000252723694,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "b89c0370.1273d"
+ ]
+ ]
+ },
+ {
+ "id": "d3c8707c.374dc",
+ "type": "outcome",
+ "name": "outcome Other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2378.4256629943848,
+ "y": 530.4286332130432,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "e88e83ff.2b0bf"
+ ]
+ ]
+ },
+ {
+ "id": "b89c0370.1273d",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2599.181739807129,
+ "y": 492.3756594657898,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "e88e83ff.2b0bf",
+ "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\" \n value=\"`'Existing connection-attachment-allotted-resource with order status of ' + $connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status + '.'`\" />\n",
+ "comments": "",
+ "x": 2618.3334426879883,
+ "y": 533.0000233650208,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "190989d8.d87b76",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:sotn-get-request-input-param",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='connection-attachment-get-request-input-param' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 970.9697303771973,
+ "y": 598.4935593605042,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "dfdf08a.1b550f8",
+ "type": "block",
+ "name": "block: atomic",
+ "xml": "<block atomic=\"true\">\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 652.9758071899414,
+ "y": 598.4998459815979,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "190989d8.d87b76"
+ ]
+ ]
+ },
+ {
+ "id": "3abce4e4.32a12c",
+ "type": "get-resource",
+ "name": "get-resource parent-service-data",
+ "xml": "<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='services/service/$tmp.ar.parent-service-instance-id/service-data' pfx='mdsal-psd' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 717.6671180725098,
+ "y": 740.5316205024719,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "d140a12c.bd2ea",
+ "58621e56.68c4e"
+ ]
+ ]
+ },
+ {
+ "id": "aa132cfc.b387f",
+ "type": "comment",
+ "name": "GET parent-service-data from mdsal to check existence of other End point",
+ "info": "",
+ "comments": "",
+ "x": 837.6670570373535,
+ "y": 669.5315594673157,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "21ab6599.b5b88a",
+ "type": "for",
+ "name": "for pidx..mdsal-psd.provided-allotted-resources.provided-allotted-resource[]",
+ "xml": "<for index='pidx' start='0' end='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1726.8515377044678,
+ "y": 908.0041127204895,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "c38adf24.2987b"
+ ]
+ ]
+ },
+ {
+ "id": "d7eaa0c2.0d298",
+ "type": "switchNode",
+ "name": "switch mdsal-psd.provided-allotted-resources_length",
+ "xml": "<switch test='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 783.8508949279785,
+ "y": 884.7180829048157,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "bab04a0a.986c28",
+ "ab941040.d9d58",
+ "e7f0f49a.c55b08"
+ ]
+ ]
+ },
+ {
+ "id": "bab04a0a.986c28",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1115.9937705993652,
+ "y": 1108.5755522474647,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "a85c2828.9226f8"
+ ]
+ ]
+ },
+ {
+ "id": "edfa14d3.f5d668",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1310.1211261749268,
+ "y": 902.7015252113342,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "21ab6599.b5b88a"
+ ]
+ ]
+ },
+ {
+ "id": "c38adf24.2987b",
+ "type": "switchNode",
+ "name": "switch allotted-resource-id",
+ "xml": "<switch test=\"`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2161.962938308716,
+ "y": 908.0040097236633,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "3532dc3f.6daa04",
+ "1210338.3b3d5cd"
+ ]
+ ]
+ },
+ {
+ "id": "3532dc3f.6daa04",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2370.7731647491455,
+ "y": 880.468499660492,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "7bfabe83.461c6"
+ ]
+ ]
+ },
+ {
+ "id": "515af9c1.8559f8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2550.5338611602783,
+ "y": 944.3256783485413,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "39e1b1c2.1c69fe",
+ "9b2b2091.9723d"
+ ]
+ ]
+ },
+ {
+ "id": "39e1b1c2.1c69fe",
+ "type": "set",
+ "name": "set tmp.pidx and ptx.consumed-ar",
+ "xml": "<set>\n<parameter name='tmp.pidx' value='`$pidx`' />\n<parameter name='tmp.provided-ar.' value='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$pidx].`' />\n<parameter name='tmp.found-in-ar' value='true' />\n<parameter name='tmp.ep-available' value='true' />",
+ "comments": "",
+ "x": 2807.391366958618,
+ "y": 918.8971924781799,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "9b2b2091.9723d",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 2718.2520847320557,
+ "y": 965.6532082557678,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "2b8d3c6c.b14764",
+ "type": "comment",
+ "name": "Check existence of other AR in parent service data",
+ "info": "Check if other allotted resource is available.",
+ "comments": "",
+ "x": 773.629337310791,
+ "y": 818.8928875923157,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "ab941040.d9d58",
+ "type": "other",
+ "name": "outcome 1",
+ "xml": "<outcome value='1'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1127.6461639404297,
+ "y": 1032.6772694587708,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "46264523.92ecdc"
+ ]
+ ]
+ },
+ {
+ "id": "a85c2828.9226f8",
+ "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: SOTN resource not found\" />\n \n",
+ "comments": "",
+ "x": 1288.6461143493652,
+ "y": 1107.6772940382361,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "e7f0f49a.c55b08",
+ "type": "other",
+ "name": "outcome 2",
+ "xml": "<outcome value='2'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1135.646146774292,
+ "y": 903.6772255897522,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "edfa14d3.f5d668"
+ ]
+ ]
+ },
+ {
+ "id": "7bfabe83.461c6",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2528.7573795318604,
+ "y": 879.6772427558899,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "1210338.3b3d5cd",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2369.7573795318604,
+ "y": 942.6772427558899,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "515af9c1.8559f8"
+ ]
+ ]
+ },
+ {
+ "id": "e9cc6dee.5133e",
+ "type": "switchNode",
+ "name": "switch mdsal-psd.networks_length",
+ "xml": "<switch test='`$mdsal-psd.networks.network_length`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1563.9796333312988,
+ "y": 1032.8997707366943,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "30e9e8da.9a5228",
+ "80fd341d.8b4a38"
+ ]
+ ]
+ },
+ {
+ "id": "80fd341d.8b4a38",
+ "type": "other",
+ "name": "outcome 1",
+ "xml": "<outcome value='1'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1835.9796562194824,
+ "y": 1006.7886056900024,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "eab56bbb.5b2d38"
+ ]
+ ]
+ },
+ {
+ "id": "30e9e8da.9a5228",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1829.979778289795,
+ "y": 1066.7886056900024,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "9cd991eb.ad6e9"
+ ]
+ ]
+ },
+ {
+ "id": "9cd991eb.ad6e9",
+ "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: Incorrect state found more then 1 network\" />\n \n",
+ "comments": "",
+ "x": 1986.632122039795,
+ "y": 1067.8904123306274,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "750841f5.89bfd",
+ "type": "set",
+ "name": "set tmp.network.",
+ "xml": "<set>\n<parameter name='tmp.network.' value='`$mdsal-psd.networks.network[0].`' />\n",
+ "comments": "",
+ "x": 2271.424503326416,
+ "y": 1007.788761138916,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "46264523.92ecdc",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1300.090518951416,
+ "y": 1033.7885174751282,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "e9cc6dee.5133e"
+ ]
+ ]
+ },
+ {
+ "id": "eab56bbb.5b2d38",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2027.75736618042,
+ "y": 1009.7884836196899,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "750841f5.89bfd",
+ "56082b6e.f90444"
+ ]
+ ]
+ },
+ {
+ "id": "56082b6e.f90444",
+ "type": "for",
+ "name": "for nidx..tmp.network.network-data.network-request-input.network...[]",
+ "xml": "<for index='nidx' start='0' end='`$tmp.network.network-data.network-request-input.network-input-parameters.param_length`' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 2447.7576332092285,
+ "y": 1069.7884712219238,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "ad111a8e.73a1d8"
+ ]
+ ]
+ },
+ {
+ "id": "ad111a8e.73a1d8",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2813.3130168914795,
+ "y": 1069.7885303497314,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "92d17a75.9c6dc8",
+ "60c80c93.08db54"
+ ]
+ ]
+ },
+ {
+ "id": "92d17a75.9c6dc8",
+ "type": "switchNode",
+ "name": "switch access-node-id",
+ "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$nidx].name == 'access-node-id'`\">",
+ "comments": "",
+ "outputs": 1,
+ "x": 3017.8232707977295,
+ "y": 1072.798906326294,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "abca5378.b72d3"
+ ]
+ ]
+ },
+ {
+ "id": "abca5378.b72d3",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3204.8232707977295,
+ "y": 1073.798906326294,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "db6a8374.5ea08"
+ ]
+ ]
+ },
+ {
+ "id": "db6a8374.5ea08",
+ "type": "set",
+ "name": "set tmp.found-in-network tmp.ep-available",
+ "xml": "<set>\n<parameter name='tmp.found-in-network' value='true' />\n<parameter name='tmp.ep-available' value='true' />",
+ "comments": "",
+ "x": 3455.823278427124,
+ "y": 1073.3988485336304,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "60c80c93.08db54",
+ "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": 3000.81316947937,
+ "y": 1117.7885055541992,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "601263d0.9079dc",
+ "type": "switchNode",
+ "name": "switch tmp.ep-available",
+ "xml": "<switch test='`$tmp.ep-available`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 709.9794960021973,
+ "y": 1296.232792377472,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "89a90f2c.398bf",
+ "80d65700.60d008"
+ ]
+ ]
+ },
+ {
+ "id": "80d65700.60d008",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 928.6462154388428,
+ "y": 1345.5661492347717,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "844986d4.f4d158"
+ ]
+ ]
+ },
+ {
+ "id": "89a90f2c.398bf",
+ "type": "outcomeTrue",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 933.5350170135498,
+ "y": 1254.566210269928,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "9208b0d4.846ab"
+ ]
+ ]
+ },
+ {
+ "id": "9208b0d4.846ab",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1080.5350131988525,
+ "y": 1256.4550232887268,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "844986d4.f4d158",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1098.757303237915,
+ "y": 1343.5661072731018,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "fc82177c.3c8168",
+ "6c1300b3.838e9",
+ "b83c0ca8.2fbee"
+ ]
+ ]
+ },
+ {
+ "id": "27f851f0.33167e",
+ "type": "comment",
+ "name": "GET connection-attachment-ar to store AR data from mdsal",
+ "info": "",
+ "comments": "",
+ "x": 2269.1394805908203,
+ "y": 420.50391721725464,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "105428a7.c0fa47",
+ "type": "comment",
+ "name": "Set source end point",
+ "info": "",
+ "comments": "",
+ "x": 674.6393585205078,
+ "y": 566.2539267539978,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "5040dd33.924624",
+ "type": "set",
+ "name": "set tmp.ar.parent-service-instance-id",
+ "xml": "<set>\n<parameter name='tmp.ar.parent-service-instance-id' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` \" />\n\n",
+ "comments": "",
+ "x": 728.635440826416,
+ "y": 705.0000042915344,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "d140a12c.bd2ea",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 964.635440826416,
+ "y": 733.0000042915344,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "ef017607.27ae68"
+ ]
+ ]
+ },
+ {
+ "id": "58621e56.68c4e",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 956.4872436523438,
+ "y": 768.0660891532898,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "50c1da8b.6785d4"
+ ]
+ ]
+ },
+ {
+ "id": "50c1da8b.6785d4",
+ "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: SOTN resource not found\" />\n \n",
+ "comments": "",
+ "x": 1131.635929107666,
+ "y": 764.3334393501282,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "ef017607.27ae68",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1115.635440826416,
+ "y": 731.0000042915344,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "7ff9e776.cf4d98",
+ "type": "set",
+ "name": "set tmp.found-in-ar tmp.found-in-network tmp.ep-available to false",
+ "xml": "<set>\n<parameter name='tmp.found-in-ar' value='false' />\n<parameter name='tmp.found-in-network' value='false' />\n<parameter name='tmp.ep-available' value='false' />",
+ "comments": "",
+ "x": 820.635440826416,
+ "y": 850.0000042915344,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "6020d2b5.ff31bc",
+ "type": "comment",
+ "name": "If other EP exists delete from domain controller",
+ "info": "",
+ "comments": "",
+ "x": 760.635440826416,
+ "y": 1221.0000042915344,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "1d5ec4d8.fd16cb",
+ "type": "set",
+ "name": "set controller data",
+ "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.url' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.user' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.password' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`\" />\n",
+ "comments": "",
+ "x": 1814.6355590820312,
+ "y": 1374.0000200271606,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "6c1300b3.838e9",
+ "type": "get-resource",
+ "name": "get-resource esr-thirdparty-sdnc",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"esr-thirdparty-sdnc\" \n\t\tkey=\"esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND \n\t\t depth = '1'\"\n pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1378.135498046875,
+ "y": 1433.0000200271606,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "9b0a24a5.e3c928",
+ "3d4157e0.0e2b48",
+ "47d559b2.2326f8"
+ ]
+ ]
+ },
+ {
+ "id": "9b0a24a5.e3c928",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1617.135498046875,
+ "y": 1386.0000200271606,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "1d5ec4d8.fd16cb"
+ ]
+ ]
+ },
+ {
+ "id": "3d4157e0.0e2b48",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1620.62646484375,
+ "y": 1433.574055671692,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "4d76fe9.b9e25"
+ ]
+ ]
+ },
+ {
+ "id": "47d559b2.2326f8",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1615.95947265625,
+ "y": 1474.9073686599731,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "4373fee3.5c15e"
+ ]
+ ]
+ },
+ {
+ "id": "4d76fe9.b9e25",
+ "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=\"`'An error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`\" />\n\n",
+ "comments": "",
+ "x": 1797.1978759765625,
+ "y": 1421.8597917556763,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "4373fee3.5c15e",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'Unexpected error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`\" />\n\n",
+ "comments": "",
+ "x": 1803.7320289611816,
+ "y": 1470.3465614318848,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "fc82177c.3c8168",
+ "type": "get-resource",
+ "name": "get-resource pnf",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"pnf\" \n\t\tkey=\"pnf.pnf-name = $prop.connection-attachement.access-node-id AND \n\t\t depth = '0'\"\n pfx='tmp.aai.pnf' local-only='false' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1324.6355590820312,
+ "y": 1246.0000200271606,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "71aef88f.e0bf68",
+ "2c74406b.e0e78",
+ "5d3880b0.6e762"
+ ]
+ ]
+ },
+ {
+ "id": "71aef88f.e0bf68",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1671.635498046875,
+ "y": 1250.0000505447388,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "a198897a.59b5a8"
+ ]
+ ]
+ },
+ {
+ "id": "2c74406b.e0e78",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1675.12646484375,
+ "y": 1297.57408618927,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "c41f8753.3bbf68"
+ ]
+ ]
+ },
+ {
+ "id": "5d3880b0.6e762",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1670.45947265625,
+ "y": 1338.9073991775513,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "f23816e4.5d6938"
+ ]
+ ]
+ },
+ {
+ "id": "c41f8753.3bbf68",
+ "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=\"`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`\" />\n\n",
+ "comments": "",
+ "x": 1851.6978759765625,
+ "y": 1285.8598222732544,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "f23816e4.5d6938",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`\" />\n\n",
+ "comments": "",
+ "x": 1858.2320289611816,
+ "y": 1334.346591949463,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "a198897a.59b5a8",
+ "type": "set",
+ "name": "set tmp.thirdparty-sdnc-id",
+ "xml": "<set>\n<parameter name='tmp.thirdparty-sdnc-id' value=\"`$tmp.aai.pnf.relationship-list.relationship[0].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 1875.635498046875,
+ "y": 1237.0000505447388,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "193624d6.cf45fb",
+ "type": "comment",
+ "name": "get domain controller information",
+ "info": "",
+ "comments": "",
+ "x": 1369.1394271850586,
+ "y": 1212.0039176940918,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "b83c0ca8.2fbee",
+ "type": "execute",
+ "name": "execute RestApiCallNode Delete ethernet Service",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + 'restconf/data/ietf-eth-tran-service:etht-svc/etht-svc-instances=' + $prop.connection-attachment.sotnVpnName`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 1426.6355590820312,
+ "y": 1538.0000200271606,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "157d151e.8db5fb",
+ "dc587393.0f491"
+ ]
+ ]
+ },
+ {
+ "id": "157d151e.8db5fb",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1713.635498046875,
+ "y": 1561.0000200271606,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "22b1ca9.6034f36"
+ ]
+ ]
+ },
+ {
+ "id": "22b1ca9.6034f36",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1883.6354370117188,
+ "y": 1564.0000200271606,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "949096af.7825e8",
+ "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 executing Create vpn rest api\" />\n",
+ "comments": "",
+ "x": 1883.6355590820312,
+ "y": 1520.0000200271606,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "dc587393.0f491",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1716.6354370117188,
+ "y": 1520.0000200271606,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "949096af.7825e8"
+ ]
+ ]
+ },
+ {
+ "id": "83d13f6d.0d8cd",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 984.397403717041,
+ "y": 1879.9526022672653,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "3bbdd84b.d766e8"
+ ]
+ ]
+ },
+ {
+ "id": "3bbdd84b.d766e8",
+ "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=\"AAI failed\" />\n",
+ "comments": "",
+ "x": 1150.9212837219238,
+ "y": 1891.5716732740402,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "55a09cbe.8cef84",
+ "type": "failure",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 991.4926910400391,
+ "y": 1912.714569926262,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "3bbdd84b.d766e8"
+ ]
+ ]
+ },
+ {
+ "id": "5f6a467a.dfacc8",
+ "type": "comment",
+ "name": "Save Resource to AAI",
+ "info": "",
+ "comments": "",
+ "x": 703.4451179504395,
+ "y": 1862.3019905090332,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "79627cb0.0dbb74",
+ "type": "comment",
+ "name": "TODO: Rework after confirmation from AAI",
+ "info": "",
+ "comments": "",
+ "x": 1003.804027557373,
+ "y": 1839.8730292320251,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "bc602338.67328",
+ "type": "set",
+ "name": "set output to api handler",
+ "xml": "<set>\n<parameter name='allotted-resource-id' value='`$tmp.ar.allotted-resource-id`' />\n<parameter name='connection-attachment-object-path' value=\"`$tmp.ar.self-link`\"/>\n<parameter name='service-object-path' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $connection-attachment-topology-operation-input.service-information.service-instance-id\n + '/service-data/service-topology/'`\"/>\n \n",
+ "comments": "",
+ "x": 718.2128143310547,
+ "y": 1783.8274717330933,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "f080d760.856678",
+ "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": 686.6258964538574,
+ "y": 1944.443223953247,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "c5b69925.729378",
+ "type": "execute",
+ "name": "execute RestApiCallNode - PUT AR by id",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='templateFileName' value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.sotn-attachment.templatefile`\" />\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-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='PUT' />\n <parameter name=\"responsePrefix\" value=\"mdsal-ar\" />\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 767.9449157714844,
+ "y": 1691.4682455062866,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "c8f2c95e.7a0b78",
+ "edc7bb51.8c2ee8",
+ "a8558f0e.c66f3"
+ ]
+ ]
+ },
+ {
+ "id": "c8f2c95e.7a0b78",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1036.5862922668457,
+ "y": 1742.7996572479606,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "456ce311.27ccec"
+ ]
+ ]
+ },
+ {
+ "id": "edc7bb51.8c2ee8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1027.5863418579102,
+ "y": 1711.299682997167,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "456ce311.27ccec"
+ ]
+ ]
+ },
+ {
+ "id": "a8558f0e.c66f3",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1031.3363800048828,
+ "y": 1681.6567878723145,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "fc3cc6b.7a5fa38"
+ ]
+ ]
+ },
+ {
+ "id": "456ce311.27ccec",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error updating md-sal for connection-attachment-allotted-resource\" />\n",
+ "comments": "",
+ "x": 1197.3363800048828,
+ "y": 1712.049706839025,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "fc3cc6b.7a5fa38",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1172.9923477172852,
+ "y": 1677.8489570617676,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "5af6e72b.9d69a8",
+ "type": "set",
+ "name": "set ar-data",
+ "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-status.action' value=\"`$connection-attachment-topology-operation-input.request-information.request-action` \" />\n<parameter name='connection-attachment-ar.allotted-resource-status.rpc-name' value=\"connection-attachment-topology-operation\" />\n<parameter name='connection-attachment-ar.allotted-resource-status.rpc-action' value=\"`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.' value=\"`$connection-attachment-topology-operation-input.request-information.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.' value=\"`$connection-attachment-topology-operation-input.sdnc-request-header.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.service-information.' value=\"`$connection-attachment-topology-operation-input.service-information.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.` \" />",
+ "comments": "",
+ "x": 673.1585121154785,
+ "y": 1542.8492257595062,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "1d49bda0.f37e32",
+ "type": "execute",
+ "name": "execute getTime",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setTime' >\n <parameter name=\"outputPath\" value=\"tmp.current-time\" />\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 690.4443550109863,
+ "y": 1615.4688234329224,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "285d454d.f5f90a",
+ "type": "set",
+ "name": "set allotted-resource-oper-status",
+ "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status' value='PendingDelete' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-topology-operation-input.request-information.request-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-request-id`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.create-timestamp' value='`$tmp.current-time`' />\n",
+ "comments": "",
+ "x": 740.4314346313477,
+ "y": 1652.419903755188,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "2d9aed4c.fcfbd2",
+ "type": "set",
+ "name": "set model-data",
+ "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-data.connection-attachment-topology.onap-model-information.' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.` \" />",
+ "comments": "",
+ "x": 687.0000534057617,
+ "y": 1582.0238761901855,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "9565d730.07f7d8",
+ "type": "comment",
+ "name": "Prepare data for allotted-resource addition to MDSAL",
+ "info": "This will add to allotted-resource which is present inside service.",
+ "comments": "",
+ "x": 800.3335151672363,
+ "y": 1503.0238282680511,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "b61bb52.fd12048",
+ "type": "comment",
+ "name": "Add to allotted-resources in mdsal",
+ "info": "",
+ "comments": "",
+ "x": 741.9133415222168,
+ "y": 1470.4371299743652,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "8e738bcf.052208",
+ "type": "update",
+ "name": "update AAI allotted-resource",
+ "xml": "<update plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"allotted-resource\" \n\t\tkey=\"customer.global-customer-id = $connection-attachment-topology-operation-input.service-information.global-customer-id AND\n\t\t\tservice-subscription.service-type = $connection-attachment-topology-operation-input.service-information.subscription-service-type AND\n\t\t\tservice-instance.service-instance-id = $connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id AND\n\t\t\tallotted-resource.id = $tmp.ar.allotted-resource-id\"\n pfx='pfx' local-only='false' force='false'>\n\t<parameter name=\"description\" value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type`\" />\n\t<parameter name=\"selflink\" value=\"`$tmp.ar.self-link`\" />\n\t<parameter name=\"model-invariant-id\" value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-invariant-uuid`\" />\n\t<parameter name=\"model-version-id\" value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-uuid`\" />\n\t<parameter name=\"operational-status\" value=\"PendingDelete\" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 729.8893966674805,
+ "y": 1899.7541332244873,
+ "z": "b5ee72b6.6e8c5",
+ "wires": [
+ [
+ "83d13f6d.0d8cd",
+ "55a09cbe.8cef84"
+ ]
+ ]
+ }
+]
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-delete.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-delete.json
new file mode 100644
index 00000000..ca5ca898
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-delete.json
@@ -0,0 +1,1013 @@
+[
+ {
+ "id": "40d74cd7.316a14",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 101,
+ "y": 40,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "f8cb9b5e.038868"
+ ]
+ ]
+ },
+ {
+ "id": "f8cb9b5e.038868",
+ "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": 313.00000381469727,
+ "y": 112.0000171661377,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "a82adde1.bdf47"
+ ]
+ ]
+ },
+ {
+ "id": "a82adde1.bdf47",
+ "type": "method",
+ "name": "sotn-attachment-topology-operation-delete",
+ "xml": "<method rpc='sotn-attachment-topology-operation-delete' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 301.0001220703125,
+ "y": 200,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "949cc74.207fe38"
+ ]
+ ]
+ },
+ {
+ "id": "949cc74.207fe38",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 317.0001220703125,
+ "y": 755.0002446174622,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "e8c0ed11.a9ee2",
+ "acbb646b.d77cc8",
+ "fd6eb40b.cdb328",
+ "9e6bdd2.2396b2",
+ "b1c2a911.f82f08",
+ "90800e39.89524",
+ "3735d68f.ab66da",
+ "c9fb1b0b.8e8c48",
+ "3438f4ce.6e83dc",
+ "8443751c.74bd98",
+ "4de78821.6f3c58",
+ "bcd52af9.df1738",
+ "9273699a.4d08c8",
+ "85ce8a7e.f20d58"
+ ]
+ ]
+ },
+ {
+ "id": "e8c0ed11.a9ee2",
+ "type": "set",
+ "name": "set tmp.ar.allotted-resource-id,etc",
+ "xml": "<set>\n<parameter name='tmp.ar.allotted-resource-id' value='`connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`' />\n<parameter name='tmp.ar.parent-service-instance-id' value='`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id`' />\n\n\n",
+ "comments": "",
+ "x": 713.9935607910156,
+ "y": 153.9934868812561,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "43da58d7.610758",
+ "type": "comment",
+ "name": "set tmp ar-id to fetch resource from MDSAL",
+ "info": "",
+ "comments": "",
+ "x": 742.9538726806641,
+ "y": 118.02528285980225,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "acbb646b.d77cc8",
+ "type": "set",
+ "name": "set tmp.ar.self-link",
+ "xml": "<set>\n<parameter name='tmp.ar.self-link' value=\"`'restconf/config/GENERIC-RESOURCE-API:connection-attachment-allotted-resources/connection-attachment-allotted-resource/'\n + $tmp.ar.allotted-resource-id\n + '/allotted-resource-data/connection-attachment-topology/'` \" />\n\n",
+ "comments": "",
+ "x": 667.9934997558594,
+ "y": 246.99349212646484,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "90800e39.89524",
+ "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": 674.2553901672363,
+ "y": 334.6602210998535,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "fd6eb40b.cdb328",
+ "type": "execute",
+ "name": "generate allotted-resource url",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$prop.restapi.connection-attachment-allottedresource`\"/>\n <parameter name=\"outputPath\" value=\"tmp.ar-url\"/>\n <parameter name=\"target\" value=\"{allotted-resource-id}\"/>\n <parameter name=\"replacement\" value=\"`$tmp.ar.allotted-resource-id`\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 706.2554168701172,
+ "y": 422.66020250320435,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "1905b8ab.ca3847",
+ "type": "comment",
+ "name": "Used for setting output to API Handler",
+ "info": "",
+ "comments": "",
+ "x": 721.9935302734375,
+ "y": 213.993501663208,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "472b5b53.359df4",
+ "type": "comment",
+ "name": "Obtain different URL, template location etc",
+ "info": "For saving resource information to MDSAL & for AAI",
+ "comments": "",
+ "x": 739.9934959411621,
+ "y": 299.8823823928833,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "e758b3f.c00a45",
+ "type": "comment",
+ "name": "Used to Get AR by id to MDSAL, same as self-link",
+ "info": "",
+ "comments": "",
+ "x": 765.9935150146484,
+ "y": 386.8823413848877,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "9e6bdd2.2396b2",
+ "type": "get-resource",
+ "name": "get-resource parent-service-data",
+ "xml": "<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='services/service/$tmp.ar.parent-service-instance-id/service-data' pfx='mdsal-psd' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 713.0003890991211,
+ "y": 912.531683921814,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "376a6931.f70fe6",
+ "344c3669.3f542a"
+ ]
+ ]
+ },
+ {
+ "id": "7df855f0.47079c",
+ "type": "comment",
+ "name": "GET parent-service-data from mdsal to check existence of other End point",
+ "info": "",
+ "comments": "",
+ "x": 833.0003280639648,
+ "y": 841.5316228866577,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "3af49e65.969612",
+ "type": "for",
+ "name": "for pidx..mdsal-psd.provided-allotted-resources.provided-allotted-resource[]",
+ "xml": "<for index='pidx' start='0' end='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1644.1849060058594,
+ "y": 1017.0042171478271,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "c4ca63d9.fd59d"
+ ]
+ ]
+ },
+ {
+ "id": "b1c2a911.f82f08",
+ "type": "switchNode",
+ "name": "switch mdsal-psd.provided-allotted-resources_length",
+ "xml": "<switch test='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 772.1841125488281,
+ "y": 1001.7180595397949,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "af927d7b.49dce",
+ "fc0125f.d3b43d8"
+ ]
+ ]
+ },
+ {
+ "id": "97446eab.09441",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1258.4543991088867,
+ "y": 1057.7015590667725,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "3af49e65.969612",
+ "7aae58e1.7b18c8"
+ ]
+ ]
+ },
+ {
+ "id": "c4ca63d9.fd59d",
+ "type": "switchNode",
+ "name": "switch allotted-resource-id",
+ "xml": "<switch test=\"`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2063.2962188720703,
+ "y": 1017.0040645599365,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "637d9cfe.cdf994"
+ ]
+ ]
+ },
+ {
+ "id": "3735d68f.ab66da",
+ "type": "set",
+ "name": "set tmp.ar.parent-service-instance-id",
+ "xml": "<set>\n<parameter name='tmp.ar.parent-service-instance-id' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` \" />\n\n",
+ "comments": "",
+ "x": 723.9687118530273,
+ "y": 877.0000677108765,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "376a6931.f70fe6",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 959.9687118530273,
+ "y": 905.0000677108765,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "eee1cf23.532fa"
+ ]
+ ]
+ },
+ {
+ "id": "344c3669.3f542a",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 951.8205146789551,
+ "y": 940.0661525726318,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "38d98c77.5a5dc4"
+ ]
+ ]
+ },
+ {
+ "id": "38d98c77.5a5dc4",
+ "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: SOTN resource not found\" />\n \n",
+ "comments": "",
+ "x": 1126.9692001342773,
+ "y": 936.3335027694702,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "eee1cf23.532fa",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1110.9687118530273,
+ "y": 903.0000677108765,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "fd82a90d.c15198",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 952.7306861877441,
+ "y": 1186.9527963399887,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "a5f6bd09.ffa1d"
+ ]
+ ]
+ },
+ {
+ "id": "a5f6bd09.ffa1d",
+ "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=\"AAI failed\" />\n",
+ "comments": "",
+ "x": 1119.254566192627,
+ "y": 1198.5718673467636,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "399e5f25.1d673",
+ "type": "failure",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 959.8259735107422,
+ "y": 1219.7147639989853,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "a5f6bd09.ffa1d"
+ ]
+ ]
+ },
+ {
+ "id": "c1db391c.684108",
+ "type": "comment",
+ "name": "TODO: Rework after confirmation from AAI",
+ "info": "",
+ "comments": "",
+ "x": 1084.137351989746,
+ "y": 1137.8731961250305,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "c9fb1b0b.8e8c48",
+ "type": "set",
+ "name": "set output to api handler",
+ "xml": "<set>\n<parameter name='allotted-resource-id' value='`$tmp.ar.allotted-resource-id`' />\n<parameter name='connection-attachment-object-path' value=\"`$tmp.ar.self-link`\"/>\n<parameter name='service-object-path' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $connection-attachment-topology-operation-input.service-information.service-instance-id\n + '/service-data/service-topology/'`\"/>\n \n",
+ "comments": "",
+ "x": 685.5460739135742,
+ "y": 1150.8276634216309,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "3438f4ce.6e83dc",
+ "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": 654.9591789245605,
+ "y": 1251.4434180259705,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "8443751c.74bd98",
+ "type": "execute",
+ "name": "execute RestApiCallNode - PUT AR by id",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-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='Delete' />\n <parameter name=\"responsePrefix\" value=\"mdsal-ar\" />\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 739.6666641235352,
+ "y": 511.3333625793457,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "800033f.1bbe0d",
+ "b5b39fe4.c4cab",
+ "11a37ef9.11cf81"
+ ]
+ ]
+ },
+ {
+ "id": "800033f.1bbe0d",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1008.3080406188965,
+ "y": 562.6647743210196,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "84c30bf1.79ce98"
+ ]
+ ]
+ },
+ {
+ "id": "b5b39fe4.c4cab",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 999.3080902099609,
+ "y": 531.1648000702262,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "84c30bf1.79ce98"
+ ]
+ ]
+ },
+ {
+ "id": "11a37ef9.11cf81",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1003.0581283569336,
+ "y": 501.52190494537354,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "b7efe17a.65f42"
+ ]
+ ]
+ },
+ {
+ "id": "84c30bf1.79ce98",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error updating md-sal for connection-attachment-allotted-resource\" />\n",
+ "comments": "",
+ "x": 1169.0581283569336,
+ "y": 531.9148239120841,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "b7efe17a.65f42",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1144.714096069336,
+ "y": 497.71407413482666,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+
+ ]
+ ]
+ },
+ {
+ "id": "67cf0e71.e946f",
+ "type": "comment",
+ "name": "Delete Allotted Resource",
+ "info": "",
+ "comments": "",
+ "x": 687.0000457763672,
+ "y": 480.0000286102295,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "c1be7c26.8538e",
+ "type": "for",
+ "name": "for cidx..service-data.consumed-allotted-resources.consumed-allotted-resource[]",
+ "xml": "<for index='cidx' start='0' end='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1637.00390625,
+ "y": 717.00390625,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "b702145d.d12dd8"
+ ]
+ ]
+ },
+ {
+ "id": "4de78821.6f3c58",
+ "type": "switchNode",
+ "name": "switch service-data.consumed-allotted-resources_length",
+ "xml": "<switch test='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 790.0032920837402,
+ "y": 677.71790766716,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "9fcadeb2.7ddd3",
+ "f277a541.5d4da8"
+ ]
+ ]
+ },
+ {
+ "id": "9fcadeb2.7ddd3",
+ "type": "other",
+ "name": "outcome Null",
+ "xml": "<outcome value=''>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1114.1461563110352,
+ "y": 660.5753421783447,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "6ed5686.b9f1498"
+ ]
+ ]
+ },
+ {
+ "id": "f277a541.5d4da8",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1100.1461791992188,
+ "y": 723.5753309726715,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "a167b159.d1f0a"
+ ]
+ ]
+ },
+ {
+ "id": "a167b159.d1f0a",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1260.2732696533203,
+ "y": 721.7013075351715,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "c1be7c26.8538e",
+ "a14b9903.574488"
+ ]
+ ]
+ },
+ {
+ "id": "bcd52af9.df1738",
+ "type": "set",
+ "name": "set consumed allotted resources for deletion",
+ "xml": "<set>\n<parameter name=\"service-data.consumed-allotted-resources.consumed-allotted-resource[$cidx].\" value=\"\" />\n<parameter name='service-data.consumed-allotted-resources.consumed-allotted-resource_length' value='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length - 1`' />\n\n",
+ "comments": "",
+ "x": 746.8606262207031,
+ "y": 748.28955078125,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "b702145d.d12dd8",
+ "type": "switchNode",
+ "name": "switch allotted-resource-id",
+ "xml": "<switch test=\"`$service-data.consumed-allotted-resources.consumed-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2075.1155166625977,
+ "y": 713.0040283203125,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "5f8fbf17.00afa"
+ ]
+ ]
+ },
+ {
+ "id": "5f8fbf17.00afa",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2270.925338745117,
+ "y": 712.4683527946472,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "c51401e.55444"
+ ]
+ ]
+ },
+ {
+ "id": "43e9034f.c4ea2c",
+ "type": "set",
+ "name": "set tmp.cidx",
+ "xml": "<set>\n<parameter name='tmp.cidx' value='`$cidx`' />\n",
+ "comments": "",
+ "x": 2582.26171875,
+ "y": 672.2246131896973,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "cdccd47e.bede38",
+ "type": "comment",
+ "name": "Delete consumed service consumed-allotted-resources in mdsal",
+ "info": "",
+ "comments": "",
+ "x": 801.0045623779297,
+ "y": 610.0038724095793,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "d296b738.04dcc8",
+ "type": "comment",
+ "name": "This set resource will be deleted in MDSAL by provider code",
+ "info": "",
+ "comments": "",
+ "x": 791.337345123291,
+ "y": 714.781964302063,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "8922e52b.01caf8",
+ "type": "comment",
+ "name": "Obtain the index of conusumed AR",
+ "info": "",
+ "comments": "",
+ "x": 713.7817535400391,
+ "y": 641.8927326202393,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "6ed5686.b9f1498",
+ "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=\"Resource to be deleted doesn't exist in MDSAL.\" />\n",
+ "comments": "",
+ "x": 1276.00390625,
+ "y": 661.00390625,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "e0029499.0fe808",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 2574.003875732422,
+ "y": 732.2540216445923,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "c51401e.55444",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2420.003936767578,
+ "y": 713.2539558410645,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "43e9034f.c4ea2c",
+ "e0029499.0fe808"
+ ]
+ ]
+ },
+ {
+ "id": "f81fb204.590a8",
+ "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=\"resource to be deleted is not available in mdsal\" />\n",
+ "comments": "",
+ "x": 1730.25390625,
+ "y": 770.25390625,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "1a2d8fc2.146df",
+ "type": "outcome",
+ "name": "NULL",
+ "xml": "<outcome value=''>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1592.75390625,
+ "y": 770.25390625,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "f81fb204.590a8"
+ ]
+ ]
+ },
+ {
+ "id": "a14b9903.574488",
+ "type": "switchNode",
+ "name": "switch tmp.cidx ",
+ "xml": "<switch test=\"`$tmp.cidx`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1438.75390625,
+ "y": 770.25390625,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "1a2d8fc2.146df"
+ ]
+ ]
+ },
+ {
+ "id": "a2784c5c.f26de",
+ "type": "comment",
+ "name": "Delete provided service provided-allotted-resources in mdsal",
+ "info": "",
+ "comments": "",
+ "x": 787.5039215087891,
+ "y": 806.00390625,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "fc0125f.d3b43d8",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1081.5039596557617,
+ "y": 1054.7539730072021,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "97446eab.09441"
+ ]
+ ]
+ },
+ {
+ "id": "af927d7b.49dce",
+ "type": "other",
+ "name": "outcome Null",
+ "xml": "<outcome value=''>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1093.5038833618164,
+ "y": 991.7539174556732,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "29d2e8ba.860218"
+ ]
+ ]
+ },
+ {
+ "id": "29d2e8ba.860218",
+ "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=\"Resource to be deleted doesn't exist in MDSAL.\" />\n",
+ "comments": "",
+ "x": 1255.3616333007812,
+ "y": 992.1824815273285,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "8fbe7fb5.2044c",
+ "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=\"resource to be deleted is not available in mdsal\" />\n",
+ "comments": "",
+ "x": 1752.75390625,
+ "y": 1088.75390625,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "99d40761.083518",
+ "type": "outcome",
+ "name": "NULL",
+ "xml": "<outcome value=''>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1615.25390625,
+ "y": 1088.75390625,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "8fbe7fb5.2044c"
+ ]
+ ]
+ },
+ {
+ "id": "7aae58e1.7b18c8",
+ "type": "switchNode",
+ "name": "switch tmp.pidx ",
+ "xml": "<switch test=\"`$tmp.pidx`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1461.25390625,
+ "y": 1088.75390625,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "99d40761.083518"
+ ]
+ ]
+ },
+ {
+ "id": "637d9cfe.cdf994",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2262.503963470459,
+ "y": 1014.7539739608765,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "240168eb.ef4528"
+ ]
+ ]
+ },
+ {
+ "id": "fb4a1e64.0992d",
+ "type": "set",
+ "name": "set tmp.pidx",
+ "xml": "<set>\n<parameter name='tmp.pidx' value='`$pidx`' />\n",
+ "comments": "",
+ "x": 2580.8404235839844,
+ "y": 973.5101690292358,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "a63547e2.d5edc8",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 2572.5825805664062,
+ "y": 1033.5395774841309,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "240168eb.ef4528",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2418.5826416015625,
+ "y": 1014.539511680603,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "fb4a1e64.0992d",
+ "a63547e2.d5edc8"
+ ]
+ ]
+ },
+ {
+ "id": "9273699a.4d08c8",
+ "type": "set",
+ "name": "set provided allotted resources for deletion",
+ "xml": "<set>\n<parameter name=\"service-data.provided-allotted-resources.consumed-allotted-resource[$pidx].\" value=\"\" />\n<parameter name='service-data.provided-allotted-resources.consumed-allotted-resource_length' value='`$service-data.provided-allotted-resources.consumed-allotted-resource_length - 1`' />\n\n",
+ "comments": "",
+ "x": 741.0039215087891,
+ "y": 1052.003957748413,
+ "z": "344982e2.7dca5e",
+ "wires": [
+
+ ]
+ },
+ {
+ "id": "85ce8a7e.f20d58",
+ "type": "update",
+ "name": "update AAI allotted-resource",
+ "xml": "<delete plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" resource='allotted-resource' \n\t\tkey=\"customer.global-customer-id = $connection-attachment-topology-operation-input.service-information.global-customer-id AND\n\t\t\tservice-subscription.service-type = $connection-attachment-topology-operation-input.service-information.subscription-service-type AND\n\t\t\tservice-instance.service-instance-id = $connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id AND\n\t\t\tallotted-resource.id = $tmp.ar.allotted-resource-id\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 698.2226791381836,
+ "y": 1206.7543272972107,
+ "z": "344982e2.7dca5e",
+ "wires": [
+ [
+ "fd82a90d.c15198",
+ "399e5f25.1d673"
+ ]
+ ]
+ }
+]
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.xml
new file mode 100644
index 00000000..a8935d83
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.xml
@@ -0,0 +1,521 @@
+<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='sotn-attachment-topology-operation-activate' mode='sync'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.ar.allotted-resource-id' value='`connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`' />
+ <parameter name='tmp.ar.parent-service-instance-id' value='`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id`' />
+ </set>
+ <set>
+ <parameter name='tmp.ar.self-link' value="`'restconf/config/GENERIC-RESOURCE-API:connection-attachment-allotted-resources/connection-attachment-allotted-resource/'
+ + $tmp.ar.allotted-resource-id
+ + '/allotted-resource-data/connection-attachment-topology/'` " />
+ </set>
+ <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.restapi.connection-attachment-allottedresource`"/>
+ <parameter name="outputPath" value="tmp.ar-url"/>
+ <parameter name="target" value="{allotted-resource-id}"/>
+ <parameter name="replacement" value="`$tmp.ar.allotted-resource-id`"/>
+ </execute>
+ <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='connection-attachment-allotted-resources/connection-attachment-allotted-resource/$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id/' pfx='mdsal-ar' >
+ <outcome value='success'>
+ <block atomic="true">
+ <switch test='`$mdsal-ar.connection-attachment-allotted-resource_length`'>
+ <outcome value='1'>
+ <block atomic='true'>
+ <set>
+ <parameter name='connection-attachment-ar.' value='$mdsal-ar.connection-attachment-allotted-resource[0].' />
+ </set>
+ <switch test='`$connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status`'>
+ <outcome value='Created'>
+ <block></block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message"
+ value="`'Existing connection-attachment-allotted-resource with order status of ' + $connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status + '.'`" />
+ </return>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.request-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-ar.allotted-resource-status.rpc-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.svc-request-id`' />
+ </set>
+ </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: SOTN resource not found" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <block atomic="true">
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="404" />
+ <parameter name="error-message" value="Error: SOTN resource not found" />
+ </return>
+ </block>
+ </outcome>
+ </get-resource>
+ <block atomic="true">
+ <call module='GENERIC-RESOURCE-API' rpc='connection-attachment-get-request-input-param' mode='sync' ></call>
+ </block>
+ <set>
+ <parameter name='tmp.ar.parent-service-instance-id' value="`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` " />
+ </set>
+ <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='services/service/$tmp.ar.parent-service-instance-id/service-data' pfx='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: SOTN resource not found" />
+ </return>
+ </outcome>
+ </get-resource>
+ <set>
+ <parameter name='tmp.found-in-ar' value='false' />
+ <parameter name='tmp.found-in-network' value='false' />
+ <parameter name='tmp.ep-available' value='false' />
+ </set>
+ <switch test='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`'>
+ <outcome value='2'>
+ <block atomic="true">
+ <for index='pidx' start='0' end='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`' >
+ <switch test="`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`">
+ <outcome value='true'>
+ <block></block>
+ </outcome>
+ <outcome value='false'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.pidx' value='`$pidx`' />
+ <parameter name='tmp.provided-ar.' value='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$pidx].`' />
+ <parameter name='tmp.found-in-ar' value='true' />
+ <parameter name='tmp.ep-available' value='true' />
+ </set>
+ <break></break>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ <switch test='`$tmp.found-in-ar`'>
+ <outcome value='true'>
+ <block atomic="true">
+ <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='connection-attachment-allotted-resources/connection-attachment-allotted-resource/$tmp.provided-ar.allotted-resource-id/' pfx='mdsal-other-ar' >
+ <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: SOTN provided attachment resource not found" />
+ </return>
+ </outcome>
+ </get-resource>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='1'>
+ <block atomic="true">
+ <switch test='`$mdsal-psd.networks.network_length`'>
+ <outcome value='1'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.network.' value='`$mdsal-psd.networks.network[0].`' />
+ </set>
+ <for index='nidx' start='0' end='`$tmp.network.network-data.network-request-input.network-input-parameters.param_length`' >
+ <block>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$nidx].name == 'access-node-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='tmp.found-in-network' value='true' />
+ <parameter name='tmp.ep-available' value='true' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'name'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.global.sotn.etht-svc-name' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ <parameter name='prop.global.sotn.bandwidth-profile-name' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'description'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.global.sotn.etht-svc-descr' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'tenantId'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.global.sotn.tenantId' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'vpnType'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.global.sotn.vpnType' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'CIR'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.sotn.cir' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'EIR'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.global.sotn.eir' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'color-aware'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.global.sotn.colorAware' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'coupling-flag'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.global.sotn.couplingFlag' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </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>
+ </for>
+ </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: Incorrect state found more then 1 network" />
+ </return>
+ </outcome>
+ </switch>
+ </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: SOTN resource not found" />
+ </return>
+ </outcome>
+ </switch>
+ <switch test='`$tmp.ep-available`'>
+ <outcome value='false'>
+ <block></block>
+ </outcome>
+ <outcome value='true'>
+ <block atomic="true">
+ <switch test='`$tmp.found-in-ar`'>
+ <outcome value='true'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.ep.parameters' value='`$mdsal-other-ar.allotted-resource-data.connection-attachment-topology.connection-attachment-parameters`' />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='false'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.ep.parameters' value='`$tmp.network.network-data.network-request-input.network-input-parameters`' />
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ <for index='idx' start='0' end='`$tmp.ep.parameters.param_length`' >
+ <block>
+ <switch test="`$tmp.ep.parameters.param[$idx].name == 'access-node-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.remote.connection-attachment.access-node-id' value='`$tmp.ep.parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.ep.parameters.param[$idx].name == 'access-ltp-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.remote.connection-attachment.access-ltp-id' value='`$tmp.ep.parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.ep.parameters.param[$idx].name == 'clientSignal'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.remote.connection-attachment.clientSignal' value='`$tmp.ep.parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.ep.parameters.param[$idx].name == 'cVLAN'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.remote.connection-attachment.cVLAN' value='`$tmp.ep.parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.ep.parameters.param[$idx].name == 'access-provider-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.remote.connection-attachment.access-provider-id' value='`$tmp.ep.parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.ep.parameters.param[$idx].name == 'access-client-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.remote.connection-attachment.access-client-id' value='`$tmp.ep.parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.ep.parameters.param[$idx].name == 'access-topology-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.remote.connection-attachment.access-topology-id' value='`$tmp.ep.parameters.param[$idx].value`' />
+ </set>
+ </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>
+ </for>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.oof-getpath.templatefile`" />
+ <parameter name="restapiUrl" value="`$prop.restapi.connection-oof-url'`" />
+ <parameter name="restapiUser" value="`$prop.oof.user`" />
+ <parameter name="restapiPassword" value="`$prop.oof.password`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="post"/>
+ <parameter name="responsePrefix" value="oof"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStorePassword" value="adminadmin"/>
+ <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
+ <parameter name="keyStorePassword" value="adminadmin"/>
+ <parameter name='customHttpHeaders' value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error executing Create vpn rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ </execute>
+ <for index='vidx' start='0' end='`$oof.vpns_length`' >
+ <block atomic="true">
+ <set>
+ <parameter name='oof.vpn.' value='`$oof.vpns[$vidx].`' />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="pnf"
+ key="pnf.pnf-name = $oof.vpn.access-node-id AND
+ depth = '0'"
+ pfx='tmp.aai.pnf' local-only='false' >
+ <outcome value='success'>
+ <set>
+ <parameter name='tmp.thirdparty-sdnc-id' value="`$tmp.aai.pnf.relationship-list.relationship[0].relationship-data[0].relationship-value`" />
+ </set>
+ </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="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
+ </return>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
+ </return>
+ </outcome>
+ </get-resource>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="esr-thirdparty-sdnc"
+ key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND
+ depth = '1'"
+ pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >
+ <outcome value='success'>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.url' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.user' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.password' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
+ </set>
+ </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="`'An error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`" />
+ </return>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'Unexpected error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`" />
+ </return>
+ </outcome>
+ </get-resource>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/sotn-ethernet-service.json'`" />
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + 'restconf/data/ietf-eth-tran-service:etht-svc'`" />
+ <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />
+ <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="patch"/>
+ <parameter name="responsePrefix" value="vpn-result"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStorePassword" value="adminadmin"/>
+ <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
+ <parameter name="keyStorePassword" value="adminadmin"/>
+ <parameter name='customHttpHeaders' value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error executing Create vpn rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ </execute>
+ </block>
+ </for>
+ </block>
+ </block>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-status.action' value="`$connection-attachment-topology-operation-input.request-information.request-action` " />
+ <parameter name='connection-attachment-ar.allotted-resource-status.rpc-name' value="connection-attachment-topology-operation" />
+ <parameter name='connection-attachment-ar.allotted-resource-status.rpc-action' value="`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.' value="`$connection-attachment-topology-operation-input.request-information.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.' value="`$connection-attachment-topology-operation-input.sdnc-request-header.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.service-information.' value="`$connection-attachment-topology-operation-input.service-information.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.' value="`$connection-attachment-topology-operation-input.allotted-resource-information.` " />
+ </set>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-data.connection-attachment-topology.onap-model-information.' value="`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.` " />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setTime' >
+ <parameter name="outputPath" value="tmp.current-time" />
+ </execute>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status' value='Active' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-topology-operation-input.request-information.request-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-request-id`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.create-timestamp' value='`$tmp.current-time`' />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.sotn-attachment.templatefile`" />
+ <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url`' />
+ <parameter name='restapiUser' value='`$prop.controller.user`' />
+ <parameter name='restapiPassword' value='`$prop.controller.pwd`' />
+ <parameter name='format' value='json' />
+ <parameter name='httpMethod' value='PUT' />
+ <parameter name="responsePrefix" value="mdsal-ar" />
+ <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 updating md-sal for connection-attachment-allotted-resource" />
+ </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 updating md-sal for connection-attachment-allotted-resource" />
+ </return>
+ </outcome>
+ </execute>
+ <set>
+ <parameter name='allotted-resource-id' value='`$tmp.ar.allotted-resource-id`' />
+ <parameter name='connection-attachment-object-path' value="`$tmp.ar.self-link`"/>
+ <parameter name='service-object-path' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/'
+ + $connection-attachment-topology-operation-input.service-information.service-instance-id
+ + '/service-data/service-topology/'`"/>
+ </set>
+ <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="allotted-resource"
+ key="customer.global-customer-id = $connection-attachment-topology-operation-input.service-information.global-customer-id AND
+ service-subscription.service-type = $connection-attachment-topology-operation-input.service-information.subscription-service-type AND
+ service-instance.service-instance-id = $connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id AND
+ allotted-resource.id = $tmp.ar.allotted-resource-id"
+ pfx='pfx' local-only='false' force='false'>
+ <parameter name="description" value="`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type`" />
+ <parameter name="selflink" value="`$tmp.ar.self-link`" />
+ <parameter name="model-invariant-id" value="`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-invariant-uuid`" />
+ <parameter name="model-version-id" value="`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-uuid`" />
+ <parameter name="operational-status" value="Active" />
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="AAI failed" />
+ </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="AAI failed" />
+ </return>
+ </outcome>
+ </update>
+ <return status='success'>
+ <parameter name="ack-final-indicator" value="Y" />
+ <parameter name="error-code" value="200" />
+ <parameter name="error-message" value="`$error-message`" />
+ </return>
+ </block>
+ </method>
+</service-logic> \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.xml
new file mode 100644
index 00000000..5df10857
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.xml
@@ -0,0 +1,338 @@
+<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='sotn-attachment-topology-operation-deactivate' mode='sync'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.ar.allotted-resource-id' value='`connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`' />
+ <parameter name='tmp.ar.parent-service-instance-id' value='`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id`' />
+ </set>
+ <set>
+ <parameter name='tmp.ar.self-link' value="`'restconf/config/GENERIC-RESOURCE-API:connection-attachment-allotted-resources/connection-attachment-allotted-resource/'
+ + $tmp.ar.allotted-resource-id
+ + '/allotted-resource-data/connection-attachment-topology/'` " />
+ </set>
+ <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.restapi.connection-attachment-allottedresource`"/>
+ <parameter name="outputPath" value="tmp.ar-url"/>
+ <parameter name="target" value="{allotted-resource-id}"/>
+ <parameter name="replacement" value="`$tmp.ar.allotted-resource-id`"/>
+ </execute>
+ <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='connection-attachment-allotted-resources/connection-attachment-allotted-resource/$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id/' pfx='mdsal-ar' >
+ <outcome value='success'>
+ <block atomic="true">
+ <switch test='`$mdsal-ar.connection-attachment-allotted-resource_length`'>
+ <outcome value='1'>
+ <block atomic='true'>
+ <set>
+ <parameter name='connection-attachment-ar.' value='$mdsal-ar.connection-attachment-allotted-resource[0].' />
+ </set>
+ <switch test='`$connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status`'>
+ <outcome value='Active'>
+ <block></block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message"
+ value="`'Existing connection-attachment-allotted-resource with order status of ' + $connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status + '.'`" />
+ </return>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.request-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-ar.allotted-resource-status.rpc-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.svc-request-id`' />
+ </set>
+ </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: SOTN resource not found" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <block atomic="true">
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="404" />
+ <parameter name="error-message" value="Error: SOTN resource not found" />
+ </return>
+ </block>
+ </outcome>
+ </get-resource>
+ <block atomic="true">
+ <call module='GENERIC-RESOURCE-API' rpc='connection-attachment-get-request-input-param' mode='sync' ></call>
+ </block>
+ <set>
+ <parameter name='tmp.ar.parent-service-instance-id' value="`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` " />
+ </set>
+ <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='services/service/$tmp.ar.parent-service-instance-id/service-data' pfx='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: SOTN resource not found" />
+ </return>
+ </outcome>
+ </get-resource>
+ <set>
+ <parameter name='tmp.found-in-ar' value='false' />
+ <parameter name='tmp.found-in-network' value='false' />
+ <parameter name='tmp.ep-available' value='false' />
+ </set>
+ <switch test='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`'>
+ <outcome value='2'>
+ <block atomic="true">
+ <for index='pidx' start='0' end='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`' >
+ <switch test="`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`">
+ <outcome value='true'>
+ <block></block>
+ </outcome>
+ <outcome value='false'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.pidx' value='`$pidx`' />
+ <parameter name='tmp.provided-ar.' value='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$pidx].`' />
+ <parameter name='tmp.found-in-ar' value='true' />
+ <parameter name='tmp.ep-available' value='true' />
+ </set>
+ <break></break>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
+ </outcome>
+ <outcome value='1'>
+ <block atomic="true">
+ <switch test='`$mdsal-psd.networks.network_length`'>
+ <outcome value='1'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.network.' value='`$mdsal-psd.networks.network[0].`' />
+ </set>
+ <for index='nidx' start='0' end='`$tmp.network.network-data.network-request-input.network-input-parameters.param_length`' >
+ <block>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$nidx].name == 'access-node-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='tmp.found-in-network' value='true' />
+ <parameter name='tmp.ep-available' value='true' />
+ </set>
+ </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>
+ </for>
+ </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: Incorrect state found more then 1 network" />
+ </return>
+ </outcome>
+ </switch>
+ </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: SOTN resource not found" />
+ </return>
+ </outcome>
+ </switch>
+ <switch test='`$tmp.ep-available`'>
+ <outcome value='false'>
+ <block></block>
+ </outcome>
+ <outcome value='true'>
+ <block atomic="true">
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="pnf"
+ key="pnf.pnf-name = $prop.connection-attachement.access-node-id AND
+ depth = '0'"
+ pfx='tmp.aai.pnf' local-only='false' >
+ <outcome value='success'>
+ <set>
+ <parameter name='tmp.thirdparty-sdnc-id' value="`$tmp.aai.pnf.relationship-list.relationship[0].relationship-data[0].relationship-value`" />
+ </set>
+ </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="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
+ </return>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
+ </return>
+ </outcome>
+ </get-resource>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="esr-thirdparty-sdnc"
+ key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND
+ depth = '1'"
+ pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >
+ <outcome value='success'>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.url' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.user' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.password' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
+ </set>
+ </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="`'An error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`" />
+ </return>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'Unexpected error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`" />
+ </return>
+ </outcome>
+ </get-resource>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + 'restconf/data/ietf-eth-tran-service:etht-svc/etht-svc-instances=' + $prop.connection-attachment.sotnVpnName`" />
+ <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />
+ <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="delete"/>
+ <parameter name="responsePrefix" value="vpn-result"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStorePassword" value="adminadmin"/>
+ <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
+ <parameter name="keyStorePassword" value="adminadmin"/>
+ <parameter name='customHttpHeaders' value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error executing Create vpn rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ </execute>
+ </block>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-status.action' value="`$connection-attachment-topology-operation-input.request-information.request-action` " />
+ <parameter name='connection-attachment-ar.allotted-resource-status.rpc-name' value="connection-attachment-topology-operation" />
+ <parameter name='connection-attachment-ar.allotted-resource-status.rpc-action' value="`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.' value="`$connection-attachment-topology-operation-input.request-information.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.' value="`$connection-attachment-topology-operation-input.sdnc-request-header.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.service-information.' value="`$connection-attachment-topology-operation-input.service-information.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.' value="`$connection-attachment-topology-operation-input.allotted-resource-information.` " />
+ </set>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-data.connection-attachment-topology.onap-model-information.' value="`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.` " />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setTime' >
+ <parameter name="outputPath" value="tmp.current-time" />
+ </execute>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status' value='PendingDelete' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-topology-operation-input.request-information.request-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-request-id`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.create-timestamp' value='`$tmp.current-time`' />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.sotn-attachment.templatefile`" />
+ <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url`' />
+ <parameter name='restapiUser' value='`$prop.controller.user`' />
+ <parameter name='restapiPassword' value='`$prop.controller.pwd`' />
+ <parameter name='format' value='json' />
+ <parameter name='httpMethod' value='PUT' />
+ <parameter name="responsePrefix" value="mdsal-ar" />
+ <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 updating md-sal for connection-attachment-allotted-resource" />
+ </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 updating md-sal for connection-attachment-allotted-resource" />
+ </return>
+ </outcome>
+ </execute>
+ <set>
+ <parameter name='allotted-resource-id' value='`$tmp.ar.allotted-resource-id`' />
+ <parameter name='connection-attachment-object-path' value="`$tmp.ar.self-link`"/>
+ <parameter name='service-object-path' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/'
+ + $connection-attachment-topology-operation-input.service-information.service-instance-id
+ + '/service-data/service-topology/'`"/>
+ </set>
+ <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="allotted-resource"
+ key="customer.global-customer-id = $connection-attachment-topology-operation-input.service-information.global-customer-id AND
+ service-subscription.service-type = $connection-attachment-topology-operation-input.service-information.subscription-service-type AND
+ service-instance.service-instance-id = $connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id AND
+ allotted-resource.id = $tmp.ar.allotted-resource-id"
+ pfx='pfx' local-only='false' force='false'>
+ <parameter name="description" value="`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type`" />
+ <parameter name="selflink" value="`$tmp.ar.self-link`" />
+ <parameter name="model-invariant-id" value="`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-invariant-uuid`" />
+ <parameter name="model-version-id" value="`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-uuid`" />
+ <parameter name="operational-status" value="PendingDelete" />
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="AAI failed" />
+ </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="AAI failed" />
+ </return>
+ </outcome>
+ </update>
+ <return status='success'>
+ <parameter name="ack-final-indicator" value="Y" />
+ <parameter name="error-code" value="200" />
+ <parameter name="error-message" value="`$error-message`" />
+ </return>
+ </block>
+ </method>
+</service-logic> \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-delete.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-delete.xml
new file mode 100644
index 00000000..1dd02a90
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-delete.xml
@@ -0,0 +1,175 @@
+<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='sotn-attachment-topology-operation-delete' mode='sync'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.ar.allotted-resource-id' value='`connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`' />
+ <parameter name='tmp.ar.parent-service-instance-id' value='`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id`' />
+ </set>
+ <set>
+ <parameter name='tmp.ar.self-link' value="`'restconf/config/GENERIC-RESOURCE-API:connection-attachment-allotted-resources/connection-attachment-allotted-resource/'
+ + $tmp.ar.allotted-resource-id
+ + '/allotted-resource-data/connection-attachment-topology/'` " />
+ </set>
+ <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.restapi.connection-attachment-allottedresource`"/>
+ <parameter name="outputPath" value="tmp.ar-url"/>
+ <parameter name="target" value="{allotted-resource-id}"/>
+ <parameter name="replacement" value="`$tmp.ar.allotted-resource-id`"/>
+ </execute>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url`' />
+ <parameter name='restapiUser' value='`$prop.controller.user`' />
+ <parameter name='restapiPassword' value='`$prop.controller.pwd`' />
+ <parameter name='format' value='json' />
+ <parameter name='httpMethod' value='Delete' />
+ <parameter name="responsePrefix" value="mdsal-ar" />
+ <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 updating md-sal for connection-attachment-allotted-resource" />
+ </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 updating md-sal for connection-attachment-allotted-resource" />
+ </return>
+ </outcome>
+ </execute>
+ <switch test='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`'>
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Resource to be deleted doesn't exist in MDSAL." />
+ </return>
+ </outcome>
+ <outcome value='Other'>
+ <block atomic="true">
+ <for index='cidx' start='0' end='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`' >
+ <switch test="`$service-data.consumed-allotted-resources.consumed-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`">
+ <outcome value='true'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.cidx' value='`$cidx`' />
+ </set>
+ <break></break>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ <switch test="`$tmp.cidx`">
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="resource to be deleted is not available in mdsal" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name="service-data.consumed-allotted-resources.consumed-allotted-resource[$cidx]." value="" />
+ <parameter name='service-data.consumed-allotted-resources.consumed-allotted-resource_length' value='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length - 1`' />
+ </set>
+ <set>
+ <parameter name='tmp.ar.parent-service-instance-id' value="`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` " />
+ </set>
+ <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='services/service/$tmp.ar.parent-service-instance-id/service-data' pfx='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: SOTN resource not found" />
+ </return>
+ </outcome>
+ </get-resource>
+ <switch test='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`'>
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Resource to be deleted doesn't exist in MDSAL." />
+ </return>
+ </outcome>
+ <outcome value='Other'>
+ <block atomic="true">
+ <for index='pidx' start='0' end='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`' >
+ <switch test="`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`">
+ <outcome value='true'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.pidx' value='`$pidx`' />
+ </set>
+ <break></break>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ <switch test="`$tmp.pidx`">
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="resource to be deleted is not available in mdsal" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name="service-data.provided-allotted-resources.consumed-allotted-resource[$pidx]." value="" />
+ <parameter name='service-data.provided-allotted-resources.consumed-allotted-resource_length' value='`$service-data.provided-allotted-resources.consumed-allotted-resource_length - 1`' />
+ </set>
+ <set>
+ <parameter name='allotted-resource-id' value='`$tmp.ar.allotted-resource-id`' />
+ <parameter name='connection-attachment-object-path' value="`$tmp.ar.self-link`"/>
+ <parameter name='service-object-path' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/'
+ + $connection-attachment-topology-operation-input.service-information.service-instance-id
+ + '/service-data/service-topology/'`"/>
+ </set>
+ <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource='allotted-resource'
+ key="customer.global-customer-id = $connection-attachment-topology-operation-input.service-information.global-customer-id AND
+ service-subscription.service-type = $connection-attachment-topology-operation-input.service-information.subscription-service-type AND
+ service-instance.service-instance-id = $connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id AND
+ allotted-resource.id = $tmp.ar.allotted-resource-id">
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="AAI failed" />
+ </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="AAI failed" />
+ </return>
+ </outcome>
+ </delete>
+ <return status='success'>
+ <parameter name="ack-final-indicator" value="Y" />
+ <parameter name="error-code" value="200" />
+ <parameter name="error-message" value="`$error-message`" />
+ </return>
+ </block>
+ </method>
+</service-logic> \ No newline at end of file
diff --git a/platform-logic/restapi-templates/src/main/json/oof-getpath.json b/platform-logic/restapi-templates/src/main/json/oof-getpath.json
new file mode 100644
index 00000000..f407f64b
--- /dev/null
+++ b/platform-logic/restapi-templates/src/main/json/oof-getpath.json
@@ -0,0 +1,36 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - CCSDK
+ * ================================================================================
+ * Copyright (C) 2018 Huawei Technologies Co., Ltd. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+{
+ "srcPort": {
+ "src-access-topology-id": ${prop.connection-attachment.access-topology-id},
+ "src-access-client-id": ${prop.connection-attachment.access-client-id},
+ "src-access-provider-id": ${prop.connection-attachment.access-provider-id},
+ "src-access-node-id": ${prop.connection-attachment.access-node-id},
+ "src-access-ltp-id": ${prop.connection-attachment.access-ltp-id}
+ },
+ "dstPort": {
+ "dst-access-topology-id": ${prop.remote.connection-attachment.access-topology-id},
+ "dst-access-client-id": ${prop.remote.connection-attachment.access-client-id},
+ "dst-access-provider-id": ${prop.remote.connection-attachment.access-provider-id},
+ "dst-access-node-id": ${prop.remote.connection-attachment.access-node-id},
+ "dst-access-ltp-id": ${prop.remote.connection-attachment.access-ltp-id}
+ }
+}
diff --git a/platform-logic/restapi-templates/src/main/json/sotn-ethernet-service.json b/platform-logic/restapi-templates/src/main/json/sotn-ethernet-service.json
new file mode 100644
index 00000000..b5a371a3
--- /dev/null
+++ b/platform-logic/restapi-templates/src/main/json/sotn-ethernet-service.json
@@ -0,0 +1,70 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - CCSDK
+ * ================================================================================
+ * Copyright (C) 2018 Huawei Technologies Co., Ltd. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+{
+ "ietf-eth-tran-service:etht-svc": {
+ "globals": {
+ "etht-svc-bandwidth-profiles": [
+ {
+ "bandwidth-profile-name": ${prop.global.sotn.bandwidth-profile-name},
+ "bandwidth-profile-type": "mef-10-bwp",
+ "CIR": ${prop.global.sotn.cir},
+ "EIR": ${prop.global.sotn.eir},
+ "color-aware": ${prop.global.sotn.colorAware},
+ "coupling-flag": ${prop.global.sotn.couplingFlag}
+ }
+ ]
+ },
+ "etht-svc-instances": [
+ {
+ "etht-svc-name": ${prop.global.sotn.etht-svc-name},
+ "access-provider-id": ${oof.vpn.access-provider-id},
+ "access-client-id": ${oof.vpn.access-client-id},
+ "access-topology-id": ${oof.vpn.access-topology-id},
+ "etht-svc-type": "p2p-svc",
+ "admin-status": "tunnel-state-up",
+ "etht-svc-access-ports": [
+ {
+ "access-port-id": 0,
+ "access-node-id": ${oof.vpn.access-node-id},
+ "access-ltp-id": ${oof.vpn.src-access-ltp-id},
+ "service-classification-type": "vlan-classification",
+ "outer-tag": {
+ "tag-type": "classify-c-vlan",
+ "vlan-value": ${prop.connection-attachment.cVLAN}
+ },
+ "ingress-egress-bandwidth-profile-name": ${prop.global.sotn.bandwidth-profile-name}
+ },
+ {
+ "access-port-id": 1,
+ "access-node-id": ${oof.vpn.access-node-id},
+ "access-ltp-id": ${oof.vpn.dst-access-ltp-id},
+ "service-classification-type": "vlan-classification",
+ "outer-tag": {
+ "tag-type": "classify-c-vlan",
+ "vlan-value": ${prop.connection-attachment.cVLAN}
+ },
+ "ingress-egress-bandwidth-profile-name": ${prop.global.sotn.bandwidth-profile-name}
+ }
+ ]
+ }
+ ]
+ }
+} \ No newline at end of file