aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHesam Rahimi <hesam.rahimi@huawei.com>2021-08-27 20:57:41 +0000
committerHesam Rahimi <hesam.rahimi@huawei.com>2021-08-27 21:10:17 +0000
commitb47cff931a6f33275b3b85f456b0236bb76f0be8 (patch)
tree3436505f761213b95547a0b5e4d8bb98d563a424
parent00960a3b25697ef06cdfd7534944f7e2cc2e6d06 (diff)
New DGs required for creation of a cloud leased-line (E-TREE) service.
Issue-ID: SDNC-1594 Signed-off-by: Hesam Rahimi <hesam.rahimi@huawei.com> Change-Id: I23e2008c497289c20415f012a77aa4478e7c0815 Former-commit-id: 748b1c0d2e20f88c327673fe3bc32d3d50e5e12b
-rw-r--r--installation/src/main/properties/generic-resource-api-dg.properties4
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_vnf-topology-operation.json1527
-rw-r--r--platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1-Activate.json3445
-rw-r--r--platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1.json2796
-rw-r--r--platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-create-clean.json5239
-rw-r--r--platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-find-maximum-used-tpn.json289
-rw-r--r--platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-ROOT-conn.json311
-rw-r--r--platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-connectivity.json360
-rw-r--r--platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-logic.json1444
-rwxr-xr-xplatform-logic/generic-resource-api/src/main/resources/graph.versions9
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_vnf-topology-operation.xml9
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1-Activate.xml932
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1.xml364
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-create-clean.xml1239
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-find-maximum-used-tpn.xml46
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-ROOT-conn.xml54
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-connectivity.xml60
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-logic.xml207
-rw-r--r--platform-logic/restapi-templates/src/main/json/cll-ethernet-service-loop.json61
-rw-r--r--platform-logic/restapi-templates/src/main/json/cll-otn-tunnel-domainG.json66
-rw-r--r--platform-logic/restapi-templates/src/main/json/cll-otn-tunnel-dst-domain.json51
-rw-r--r--platform-logic/restapi-templates/src/main/json/cll-otn-tunnel-src-domain.json51
22 files changed, 17845 insertions, 719 deletions
diff --git a/installation/src/main/properties/generic-resource-api-dg.properties b/installation/src/main/properties/generic-resource-api-dg.properties
index b29d3c08..d87f9e3f 100644
--- a/installation/src/main/properties/generic-resource-api-dg.properties
+++ b/installation/src/main/properties/generic-resource-api-dg.properties
@@ -44,6 +44,10 @@ restapi.ts-otn-dst-domain-creation.templatefile=ts-otn-tunnel-dst-domain.json
restapi.ts-otn-domainG-creation.templatefile=ts-otn-tunnel-domainG.json
restapi.ts-ethernet-service.templatefile=ts-ethernet-service.json
restapi.ts-coloring-uni-port.templatefile=ts-coloring-uni-port.json
+restapi.cll-ethernet-service-loop.templatefile=cll-ethernet-service-loop
+restapi.cll-otn-src-domain-creation.templatefile=cll-otn-tunnel-src-domain.json
+restapi.cll-otn-dst-domain-creation.templatefile=cll-otn-tunnel-dst-domain.json
+restapi.cll-otn-domainG-creation.templatefile=cll-otn-tunnel-domainG.json
restapi.naming.gen-name.templatefile=naming-ms-post-gen-name.json
restapi.ss.pnf.templatefile=self-serve-pnf-assignments.json
restapi.ss.vnf.templatefile=self-serve-vnf-assignments.json
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_vnf-topology-operation.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_vnf-topology-operation.json
index 2ea8a47b..6735690a 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_vnf-topology-operation.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_vnf-topology-operation.json
@@ -1,20 +1,20 @@
[
{
- "id": "3a4b3d5a.f3581a",
+ "id": "52dc3c1b.333a2c",
"type": "dgstart",
"name": "DGSTART",
"outputs": 1,
- "x": 148,
- "y": 181.98507690429688,
- "z": "8a089d88.295188",
+ "x": 186,
+ "y": 176.98507690429688,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "6c9cdf9e.f76ce8"
+ "e697dcf2.06a8d8"
]
]
},
{
- "id": "6c9cdf9e.f76ce8",
+ "id": "e697dcf2.06a8d8",
"type": "service-logic",
"name": "GENERIC-RESOURCE-API ${project.version}",
"module": "GENERIC-RESOURCE-API",
@@ -22,2206 +22,2299 @@
"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": 231.28570556640625,
- "y": 243.22317504882812,
- "z": "8a089d88.295188",
+ "x": 269.28570556640625,
+ "y": 238.22317504882812,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "8e0fbdfc.7757f"
+ "97a4dbab.0d758"
]
]
},
{
- "id": "8e0fbdfc.7757f",
+ "id": "97a4dbab.0d758",
"type": "method",
"name": "method vnf-topology-operation",
"xml": "<method rpc='vnf-topology-operation' mode='sync'>\n",
"comments": "",
"outputs": 1,
- "x": 223.42862701416016,
- "y": 305.985071182251,
- "z": "8a089d88.295188",
+ "x": 261.42862701416016,
+ "y": 300.985071182251,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "650bd855.dd73"
+ "8972b0a6.363668"
]
]
},
{
- "id": "f2df8a0c.97f79",
+ "id": "274edea2.7a5922",
"type": "comment",
"name": "vnf-topology-operation",
"info": "",
"comments": "",
- "x": 547.9162979125977,
- "y": 25,
- "z": "8a089d88.295188",
+ "x": 585.9162979125977,
+ "y": 20,
+ "z": "de6608eb.7dee68",
"wires": []
},
{
- "id": "650bd855.dd73",
+ "id": "8972b0a6.363668",
"type": "block",
"name": "block : atomic",
"xml": "<block atomic=\"true\">",
"atomic": "true",
"outputs": 1,
- "x": 247.16676330566406,
- "y": 635.6785974502563,
- "z": "8a089d88.295188",
+ "x": 285.16676330566406,
+ "y": 630.6785974502563,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "694def72.802cb",
- "b7bf3fe5.90e648",
- "ebc84d0f.7ffd4"
+ "133a6775.01f0f9",
+ "1733dfef.3f49f",
+ "705b4f8a.a36358"
]
]
},
{
- "id": "694def72.802cb",
+ "id": "133a6775.01f0f9",
"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": 539.6667175292969,
- "y": 790.8426303863525,
- "z": "8a089d88.295188",
+ "x": 577.6667175292969,
+ "y": 785.8426303863525,
+ "z": "de6608eb.7dee68",
"wires": []
},
{
- "id": "b7bf3fe5.90e648",
+ "id": "1733dfef.3f49f",
"type": "switchNode",
"name": "switch svc-action",
"xml": "<switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-action`'>\n",
"comments": "",
"outputs": 1,
- "x": 542.5714340209961,
- "y": 633.8898410797119,
- "z": "8a089d88.295188",
+ "x": 580.5714340209961,
+ "y": 628.8898410797119,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "93e066f.075fa98",
- "41aa4323.8c223c",
- "c9cbb7de.54a7f",
- "821831d2.aaac2",
- "757274d3.67893c",
- "841f42a4.c5aff8",
- "acb1c0d2.3be27",
- "e097aab2.2677e"
+ "da76de1f.233328",
+ "cbb0455b.e639d8",
+ "79d670d9.ee597",
+ "c020b812.23b0c8",
+ "a7a77904.83da78",
+ "7f804bc8.db579c",
+ "55544e54.3dfca",
+ "b1e9d3b7.9a8aa8"
]
]
},
{
- "id": "93e066f.075fa98",
+ "id": "da76de1f.233328",
"type": "outcome",
"name": "assign",
"xml": "<outcome value='assign'>\n",
"comments": "",
"outputs": 1,
- "x": 877.3809814453125,
- "y": 461.5089511871338,
- "z": "8a089d88.295188",
+ "x": 915.3809814453125,
+ "y": 456.5089511871338,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "1e1ee6bd.a12821"
+ "c4cc184d.0ea4c8"
]
]
},
{
- "id": "41aa4323.8c223c",
+ "id": "cbb0455b.e639d8",
"type": "outcome",
"name": "unassign",
"xml": "<outcome value='unassign'>\n",
"comments": "",
"outputs": 1,
- "x": 939.4287996292114,
- "y": 1433.6997060775757,
- "z": "8a089d88.295188",
+ "x": 977.4287996292114,
+ "y": 1428.6997060775757,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "680ebd88.e7eccc"
+ "62d61b12.b4200c"
]
]
},
{
- "id": "821831d2.aaac2",
+ "id": "c020b812.23b0c8",
"type": "other",
"name": "other",
"xml": "<outcome value='Other'>\n",
"comments": "",
"outputs": 1,
- "x": 918.14306640625,
- "y": 2676.889892578125,
- "z": "8a089d88.295188",
+ "x": 956.14306640625,
+ "y": 2671.889892578125,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "b407995d.9d5a48"
+ "ca1347e2.135d68"
]
]
},
{
- "id": "b407995d.9d5a48",
+ "id": "ca1347e2.135d68",
"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=\"`$vnf-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`\" />\n",
"comments": "",
- "x": 1141.33349609375,
- "y": 2675.889892578125,
- "z": "8a089d88.295188",
+ "x": 1179.33349609375,
+ "y": 2670.889892578125,
+ "z": "de6608eb.7dee68",
"wires": []
},
{
- "id": "ebc84d0f.7ffd4",
+ "id": "705b4f8a.a36358",
"type": "call",
"name": "call GENERIC-RESOURCE-API:validate-vnf-input",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='validate-vnf-input' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 648.4166870117188,
- "y": 386.3661289215088,
- "z": "8a089d88.295188",
+ "x": 686.4166870117188,
+ "y": 381.3661289215088,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "c991dc4c.d3d538",
+ "id": "9613c4e1.d7a7b8",
"type": "call",
"name": "call GENERIC-RESOURCE-API:vnf-topology-operation-deactivate",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-deactivate' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1743.1906127929688,
- "y": 1365.7470703125,
- "z": "8a089d88.295188",
+ "x": 1781.1906127929688,
+ "y": 1360.7470703125,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "680ebd88.e7eccc",
+ "id": "62d61b12.b4200c",
"type": "call",
"name": "call GENERIC-RESOURCE-API:vnf-topology-operation-unassign",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-unassign' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1305.1905822753906,
- "y": 1455.0805206298828,
- "z": "8a089d88.295188",
+ "x": 1343.1905822753906,
+ "y": 1450.0805206298828,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "c9cbb7de.54a7f",
+ "id": "79d670d9.ee597",
"type": "outcome",
"name": "deactivate",
"xml": "<outcome value='deactivate'>\n",
"comments": "",
"outputs": 1,
- "x": 922.5238800048828,
- "y": 970.080415725708,
- "z": "8a089d88.295188",
+ "x": 960.5238800048828,
+ "y": 965.080415725708,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "6ccf58eb.093d6"
+ "2d9f94b0.2d01c4"
]
]
},
{
- "id": "2e110153.91031e",
+ "id": "8e0f98d1.9dab98",
"type": "call",
"name": "call GENERIC-RESOURCE-API:vnf-topology-operation-activate",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-activate' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1725.0001525878906,
- "y": 868.9850616455078,
- "z": "8a089d88.295188",
+ "x": 1763.0001525878906,
+ "y": 863.9850616455078,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "757274d3.67893c",
+ "id": "a7a77904.83da78",
"type": "outcome",
"name": "activate",
"xml": "<outcome value='activate'>\n",
"comments": "",
"outputs": 1,
- "x": 885.3333129882812,
- "y": 631.6517143249512,
- "z": "8a089d88.295188",
+ "x": 923.3333129882812,
+ "y": 626.6517143249512,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "ae3b26d8.2e802"
+ "40e38762.7c1048"
]
]
},
{
- "id": "841f42a4.c5aff8",
+ "id": "7f804bc8.db579c",
"type": "outcome",
"name": "create",
"xml": "<outcome value='create'>\n",
"comments": "",
"outputs": 1,
- "x": 941.0002298355103,
- "y": 1566.0713729858398,
- "z": "8a089d88.295188",
+ "x": 979.0002298355103,
+ "y": 1561.0713729858398,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "e142e7c6.c77bb"
+ "88f36a7a.1ee2b8"
]
]
},
{
- "id": "acb1c0d2.3be27",
+ "id": "55544e54.3dfca",
"type": "outcome",
"name": "delete",
"xml": "<outcome value='delete'>\n",
"comments": "",
"outputs": 1,
- "x": 945.000244140625,
- "y": 1796.0714111328125,
- "z": "8a089d88.295188",
+ "x": 983.000244140625,
+ "y": 1791.0714111328125,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "cb34f16f.df5498"
+ "68be57a6.5cb2c8"
]
]
},
{
- "id": "9efd8586.def1b",
+ "id": "ad146a6b.6c96c",
"type": "switchNode",
"name": "switch request-action",
"xml": "<switch test='`$vnf-topology-operation-input.request-information.request-action`'>\n",
"comments": "",
"outputs": 1,
- "x": 1127.0000839233398,
- "y": 687.0713911056519,
- "z": "8a089d88.295188",
+ "x": 1165.0000839233398,
+ "y": 682.0713911056519,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "3a27087a.eed2b8",
- "98a22bf8.80c23",
- "5001540d.dc5184",
- "99507021.c3127",
- "230795db.ca1882",
- "a47e6dba.2544d8",
- "bcff3d5e.448328",
- "d5f5c122.ae8be8"
+ "6b8c0ccc.46f2dc",
+ "c1bcad35.fa989",
+ "7ab24aab.320da4",
+ "63108138.d2fb18",
+ "7c6d49f7.ca9348",
+ "4b606c40.f0bafc",
+ "12ca0f74.920081",
+ "36852303.31db6c"
]
]
},
{
- "id": "98a22bf8.80c23",
+ "id": "c1bcad35.fa989",
"type": "outcome",
"name": "ActivateSiteInstance",
"xml": "<outcome value='ActivateSiteInstance'>",
"comments": "",
"outputs": 1,
- "x": 1387.4763259887695,
- "y": 508.5506420135498,
- "z": "8a089d88.295188",
+ "x": 1425.4763259887695,
+ "y": 503.5506420135498,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "b1d3d9a7.7df02"
+ "70c5bbde.1c192c"
]
]
},
{
- "id": "3a27087a.eed2b8",
+ "id": "6b8c0ccc.46f2dc",
"type": "other",
"name": "other",
"xml": "<outcome value='Other'>\n",
"comments": "",
"outputs": 1,
- "x": 1357.0476989746094,
- "y": 871.5953521728516,
- "z": "8a089d88.295188",
+ "x": 1395.0476989746094,
+ "y": 866.5953521728516,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "2e110153.91031e"
+ "8e0f98d1.9dab98"
]
]
},
{
- "id": "ae3b26d8.2e802",
+ "id": "40e38762.7c1048",
"type": "block",
"name": "block : atomic",
"xml": "<block atomic=\"true\">",
"atomic": "true",
"outputs": 1,
- "x": 1066.0000839233398,
- "y": 632.0713911056519,
- "z": "8a089d88.295188",
+ "x": 1104.0000839233398,
+ "y": 627.0713911056519,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "9efd8586.def1b"
+ "ad146a6b.6c96c"
]
]
},
{
- "id": "b1d3d9a7.7df02",
+ "id": "70c5bbde.1c192c",
"type": "call",
"name": "call GENERIC-RESOURCE-API:site-vnf-topology-operation-activate",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='site-vnf-topology-operation-activate' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1754.000129699707,
- "y": 511.07142448425293,
- "z": "8a089d88.295188",
+ "x": 1792.000129699707,
+ "y": 506.07142448425293,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "6eabc2e6.9c07cc",
+ "id": "5f642913.4416d8",
"type": "switchNode",
"name": "switch request-action",
"xml": "<switch test='`$vnf-topology-operation-input.request-information.request-action`'>\n",
"comments": "",
"outputs": 1,
- "x": 1185.0001983642578,
- "y": 1003.071382522583,
- "z": "8a089d88.295188",
+ "x": 1223.0001983642578,
+ "y": 998.071382522583,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "f5e55c13.9b4318",
- "e8d4f4c0.996568",
- "e553ae30.24cb58",
- "dec6f60c.912358",
- "55b31023.4a7df8",
- "4f99c024.218c58",
- "bfc4e77.1d06a18",
- "2f120adf.034a9e"
+ "14652ead.0b4c09",
+ "ff1c0dca.9a64e8",
+ "1113a32e.88f275",
+ "ffa9b2e3.752a98",
+ "35e1c8a9.0a4a7",
+ "6a9567cd.770ff",
+ "8df0deb7.6b34f",
+ "a64eaaf7.f8cc3"
]
]
},
{
- "id": "e8d4f4c0.996568",
+ "id": "ff1c0dca.9a64e8",
"type": "outcome",
"name": "DeactivateSiteInstance",
"xml": "<outcome value='DeactivateSiteInstance'>",
"comments": "",
"outputs": 1,
- "x": 1428.4763946533203,
- "y": 954.5506310462952,
- "z": "8a089d88.295188",
+ "x": 1466.4763946533203,
+ "y": 949.5506310462952,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "833dac1e.91b97"
+ "70ecad3d.c05e0c"
]
]
},
{
- "id": "f5e55c13.9b4318",
+ "id": "14652ead.0b4c09",
"type": "other",
"name": "other",
"xml": "<outcome value='Other'>\n",
"comments": "",
"outputs": 1,
- "x": 1380.0477294921875,
- "y": 1364.5953369140625,
- "z": "8a089d88.295188",
+ "x": 1418.0477294921875,
+ "y": 1359.5953369140625,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "c991dc4c.d3d538"
+ "9613c4e1.d7a7b8"
]
]
},
{
- "id": "6ccf58eb.093d6",
+ "id": "2d9f94b0.2d01c4",
"type": "block",
"name": "block : atomic",
"xml": "<block atomic=\"true\">",
"atomic": "true",
"outputs": 1,
- "x": 1124.0001983642578,
- "y": 948.071382522583,
- "z": "8a089d88.295188",
+ "x": 1162.0001983642578,
+ "y": 943.071382522583,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "6eabc2e6.9c07cc"
+ "5f642913.4416d8"
]
]
},
{
- "id": "833dac1e.91b97",
+ "id": "70ecad3d.c05e0c",
"type": "call",
"name": "call GENERIC-RESOURCE-API:site-vnf-topology-operation-deactivate",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='site-vnf-topology-operation-deactivate' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1798.0001983642578,
- "y": 952.0714135169983,
- "z": "8a089d88.295188",
+ "x": 1836.0001983642578,
+ "y": 947.0714135169983,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "9e90ddad.1f7ee",
+ "id": "a7fdb14.12230d",
"type": "switchNode",
"name": "switch request-action",
"xml": "<switch test='`$vnf-topology-operation-input.request-information.request-action`'>\n",
"comments": "",
"outputs": 1,
- "x": 1139.333625793457,
- "y": 1652.6576824188232,
- "z": "8a089d88.295188",
+ "x": 1177.333625793457,
+ "y": 1647.6576824188232,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "55e3c01c.e1c8f",
- "4d08042d.d7fbbc",
- "671b4a3a.f972fc",
- "146f2e29.b29282",
- "f8c28ff4.c8e26",
- "92a4b456.d3d5d8",
- "66ba22f2.06c6ac",
- "200396ca.da6dba",
- "9b55c6a1.642138",
- "9134a5a8.bc4e5"
+ "5e28eb9d.e104a4",
+ "fd38b62c.0bb678",
+ "8e28a5cc.ac0e2",
+ "1476fb1f.a6cbf5",
+ "61a9db30.fa159c",
+ "d9d4b57b.7f4fb",
+ "aaada9e2.ef729",
+ "e2b0912f.196d98",
+ "41d994a4.c5eae4",
+ "d030a525.70e9c8",
+ "1fc4171d.33b849"
]
]
},
{
- "id": "4d08042d.d7fbbc",
+ "id": "fd38b62c.0bb678",
"type": "outcome",
"name": "CreateSiteInstance",
"xml": "<outcome value='CreateSiteInstance'>",
"comments": "",
"outputs": 1,
- "x": 1400.81005859375,
- "y": 1569.136962890625,
- "z": "8a089d88.295188",
+ "x": 1438.81005859375,
+ "y": 1564.136962890625,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "c143e3d3.13aa5"
+ "3d2b2583.58957a"
]
]
},
{
- "id": "55e3c01c.e1c8f",
+ "id": "5e28eb9d.e104a4",
"type": "other",
"name": "other",
"xml": "<outcome value='Other'>\n",
"comments": "",
"outputs": 1,
- "x": 1374.381103515625,
- "y": 1922.1815185546875,
- "z": "8a089d88.295188",
+ "x": 1412.381103515625,
+ "y": 1971.1815185546875,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "7fc59163.4956e8"
+ "f1797bb7.25ea88"
]
]
},
{
- "id": "e142e7c6.c77bb",
+ "id": "88f36a7a.1ee2b8",
"type": "block",
"name": "block : atomic",
"xml": "<block atomic=\"true\">",
"atomic": "true",
"outputs": 1,
- "x": 1123.3337144851685,
- "y": 1563.6577405929565,
- "z": "8a089d88.295188",
+ "x": 1161.3337144851685,
+ "y": 1558.6577405929565,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "9e90ddad.1f7ee"
+ "a7fdb14.12230d"
]
]
},
{
- "id": "c143e3d3.13aa5",
+ "id": "3d2b2583.58957a",
"type": "call",
"name": "call GENERIC-RESOURCE-API:site-vnf-topology-operation-create",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='site-vnf-topology-operation-create' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1777.3337631225586,
- "y": 1567.6577215194702,
- "z": "8a089d88.295188",
+ "x": 1815.3337631225586,
+ "y": 1562.6577215194702,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "7fc59163.4956e8",
+ "id": "f1797bb7.25ea88",
"type": "block",
"name": "block",
"xml": "<block>\n",
"atomic": "false",
"comments": "",
"outputs": 1,
- "x": 1514.6666793823242,
- "y": 1923.2379417419434,
- "z": "8a089d88.295188",
+ "x": 1552.6666793823242,
+ "y": 1972.2379417419434,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "d93816bc.b66f9",
+ "id": "f6846bd6.20577",
"type": "switchNode",
"name": "switch request-action",
"xml": "<switch test='`$vnf-topology-operation-input.request-information.request-action`'>\n",
"comments": "",
"outputs": 1,
- "x": 1180.000244140625,
- "y": 2204.5714111328125,
- "z": "8a089d88.295188",
+ "x": 1218.000244140625,
+ "y": 2199.5714111328125,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "3617c3a0.ca936c",
- "a9b0f47b.285ff8",
- "83a18cb6.1873d8",
- "d35e633f.bbae08",
- "fa035729.45e3c",
- "82fef141.f28ad",
- "10da590d.98b947",
- "fb6200c1.eb497",
- "527d576.7230ea8",
- "1ed033e6.f89f9c"
+ "fddd842c.27cd2",
+ "2010d2f3.2af6c6",
+ "2a1eda3b.cd6aa6",
+ "5b300353.bbdcb4",
+ "4c1ecd80.d07da4",
+ "55b8d324.626f94",
+ "c0084269.158748",
+ "165f464d.107712",
+ "b8d302e7.884668",
+ "783b5217.1ea664",
+ "845ca1dd.f3e83"
]
]
},
{
- "id": "a9b0f47b.285ff8",
+ "id": "2010d2f3.2af6c6",
"type": "outcome",
"name": "DeleteSiteInstance",
"xml": "<outcome value='DeleteSiteInstance'>",
"comments": "",
"outputs": 1,
- "x": 1420.476463317871,
- "y": 2150.050654888153,
- "z": "8a089d88.295188",
+ "x": 1458.476463317871,
+ "y": 2145.050654888153,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "4372c282.d72afc"
+ "8505b17f.bd79f8"
]
]
},
{
- "id": "3617c3a0.ca936c",
+ "id": "fddd842c.27cd2",
"type": "other",
"name": "other",
"xml": "<outcome value='Other'>\n",
"comments": "",
"outputs": 1,
- "x": 1381.38134765625,
- "y": 2526.095703125,
- "z": "8a089d88.295188",
+ "x": 1419.38134765625,
+ "y": 2550.095703125,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "530fbae0.1c905c"
+ "3f77d84b.50975"
]
]
},
{
- "id": "cb34f16f.df5498",
+ "id": "68be57a6.5cb2c8",
"type": "block",
"name": "block : atomic",
"xml": "<block atomic=\"true\">",
"atomic": "true",
"outputs": 1,
- "x": 1119.000244140625,
- "y": 2149.5714111328125,
- "z": "8a089d88.295188",
+ "x": 1157.000244140625,
+ "y": 2144.5714111328125,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "d93816bc.b66f9"
+ "f6846bd6.20577"
]
]
},
{
- "id": "4372c282.d72afc",
+ "id": "8505b17f.bd79f8",
"type": "call",
"name": "call GENERIC-RESOURCE-API:site-vnf-topology-operation-delete",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='site-vnf-topology-operation-delete' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1793.0002670288086,
- "y": 2147.571406841278,
- "z": "8a089d88.295188",
+ "x": 1831.0002670288086,
+ "y": 2142.571406841278,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "530fbae0.1c905c",
+ "id": "3f77d84b.50975",
"type": "block",
"name": "block",
"xml": "<block>\n",
"atomic": "false",
"comments": "",
"outputs": 1,
- "x": 1520.6668701171875,
- "y": 2519.818603515625,
- "z": "8a089d88.295188",
+ "x": 1558.6668701171875,
+ "y": 2543.818603515625,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "5001540d.dc5184",
+ "id": "7ab24aab.320da4",
"type": "outcome",
"name": "ActivateSDWANDeviceInstance",
"xml": "<outcome value='ActivateSDWANDeviceInstance'>",
"comments": "",
"outputs": 1,
- "x": 1418.6667556762695,
- "y": 559.571455001831,
- "z": "8a089d88.295188",
+ "x": 1456.6667556762695,
+ "y": 554.571455001831,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "2ce1f942.6d548e"
+ "1e393b2d.a12e0d"
]
]
},
{
- "id": "2ce1f942.6d548e",
+ "id": "1e393b2d.a12e0d",
"type": "call",
"name": "call GENERIC-RESOURCE-API:sdwan-vnf-topology-operation-device-activate",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-vnf-topology-operation-device-activate' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1858.1904373168945,
- "y": 558.092206954956,
- "z": "8a089d88.295188",
+ "x": 1896.1904373168945,
+ "y": 553.092206954956,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "e553ae30.24cb58",
+ "id": "1113a32e.88f275",
"type": "outcome",
"name": "DeactivateSDWANDeviceInstance",
"xml": "<outcome value='DeactivateSDWANDeviceInstance'>",
"comments": "",
"outputs": 1,
- "x": 1469.666633605957,
- "y": 1002.571409702301,
- "z": "8a089d88.295188",
+ "x": 1507.666633605957,
+ "y": 997.571409702301,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "d64159ae.c7cdf"
+ "3cc29616.1d8c6a"
]
]
},
{
- "id": "d64159ae.c7cdf",
+ "id": "3cc29616.1d8c6a",
"type": "call",
"name": "call GENERIC-RESOURCE-API:sdwan-vnf-topology-operation-device-deactivate",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-vnf-topology-operation-device-deactivate' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1926.190330505371,
- "y": 1002.0922451019287,
- "z": "8a089d88.295188",
+ "x": 1964.190330505371,
+ "y": 997.0922451019287,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "88f1a7e0.dc3b38",
+ "id": "919673a0.a6ef98",
"type": "call",
"name": "call GENERIC-RESOURCE-API:sdwan-vnf-topology-operation-wanport-activate",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-vnf-topology-operation-wanport-activate' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1855.666633605957,
- "y": 598.5713939666748,
- "z": "8a089d88.295188",
+ "x": 1893.666633605957,
+ "y": 593.5713939666748,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "99507021.c3127",
+ "id": "63108138.d2fb18",
"type": "outcome",
"name": "ActivateSDWANPortInstance",
"xml": "<outcome value='ActivateSDWANPortInstance'>",
"comments": "",
"outputs": 1,
- "x": 1412.142951965332,
- "y": 606.0506114959717,
- "z": "8a089d88.295188",
+ "x": 1450.142951965332,
+ "y": 601.0506114959717,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "88f1a7e0.dc3b38"
+ "919673a0.a6ef98"
]
]
},
{
- "id": "dec6f60c.912358",
+ "id": "ffa9b2e3.752a98",
"type": "outcome",
"name": "DeactivateSDWANPortInstance",
"xml": "<outcome value='DeactivateSDWANPortInstance'>",
"comments": "",
"outputs": 1,
- "x": 1461.6666793823242,
- "y": 1040.904725074768,
- "z": "8a089d88.295188",
+ "x": 1499.6666793823242,
+ "y": 1035.904725074768,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "346a35db.30b292"
+ "fe8e579c.e86c28"
]
]
},
{
- "id": "346a35db.30b292",
+ "id": "fe8e579c.e86c28",
"type": "call",
"name": "call GENERIC-RESOURCE-API:sdwan-vnf-topology-operation-wanport-deactivate",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-vnf-topology-operation-wanport-deactivate' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1936.190330505371,
- "y": 1057.4255270957947,
- "z": "8a089d88.295188",
+ "x": 1974.190330505371,
+ "y": 1052.4255270957947,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "671b4a3a.f972fc",
+ "id": "8e28a5cc.ac0e2",
"type": "outcome",
"name": "CreateSDWANPortInstance",
"xml": "<outcome value='CreateSDWANPortInstance'>",
"comments": "",
"outputs": 1,
- "x": 1450.6669540405273,
- "y": 1657.9047973155975,
- "z": "8a089d88.295188",
+ "x": 1488.6669540405273,
+ "y": 1652.9047973155975,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "4b47fc1.6314f04"
+ "a44616aa.573d08"
]
]
},
{
- "id": "4b47fc1.6314f04",
+ "id": "a44616aa.573d08",
"type": "call",
"name": "call GENERIC-RESOURCE-API:sdwan-vnf-topology-operation-wanport-create",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-vnf-topology-operation-wanport-create' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1907.190574645996,
- "y": 1662.4255766868591,
- "z": "8a089d88.295188",
+ "x": 1945.190574645996,
+ "y": 1657.4255766868591,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "83a18cb6.1873d8",
+ "id": "2a1eda3b.cd6aa6",
"type": "outcome",
"name": "DeleteSDWANPortInstance",
"xml": "<outcome value='DeleteSDWANPortInstance'>",
"comments": "",
"outputs": 1,
- "x": 1456.333480834961,
- "y": 2260.9047994613647,
- "z": "8a089d88.295188",
+ "x": 1494.333480834961,
+ "y": 2255.9047994613647,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "9c8bc8aa.3a22f"
+ "5ed4255a.698824"
]
]
},
{
- "id": "9c8bc8aa.3a22f",
+ "id": "5ed4255a.698824",
"type": "call",
"name": "call GENERIC-RESOURCE-API:sdwan-vnf-topology-operation-wanport-delete",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-vnf-topology-operation-wanport-delete' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1882.8572006225586,
- "y": 2260.425654888153,
- "z": "8a089d88.295188",
+ "x": 1920.8572006225586,
+ "y": 2255.425654888153,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "d35e633f.bbae08",
+ "id": "5b300353.bbdcb4",
"type": "outcome",
"name": "DeleteSDWANDeviceInstance",
"xml": "<outcome value='DeleteSDWANDeviceInstance'>",
"comments": "",
"outputs": 1,
- "x": 1465.0316314697266,
- "y": 2201.1027059555054,
- "z": "8a089d88.295188",
+ "x": 1503.0316314697266,
+ "y": 2196.1027059555054,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "8a6b7677.238d58"
+ "c8b7ddea.37977"
]
]
},
{
- "id": "8a6b7677.238d58",
+ "id": "c8b7ddea.37977",
"type": "call",
"name": "call GENERIC-RESOURCE-API:sdwan-vnf-topology-operation-device-delete",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-vnf-topology-operation-device-delete' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1897.5552368164062,
- "y": 2200.6234192848206,
- "z": "8a089d88.295188",
+ "x": 1935.5552368164062,
+ "y": 2195.6234192848206,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "146f2e29.b29282",
+ "id": "1476fb1f.a6cbf5",
"type": "outcome",
"name": "CreateSDWANDeviceInstance",
"xml": "<outcome value='CreateSDWANDeviceInstance'>",
"comments": "",
"outputs": 1,
- "x": 1466.0313034057617,
- "y": 1614.1027607917786,
- "z": "8a089d88.295188",
+ "x": 1504.0313034057617,
+ "y": 1609.1027607917786,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "4c220d5f.f41df4"
+ "61d26564.628b74"
]
]
},
{
- "id": "4c220d5f.f41df4",
+ "id": "61d26564.628b74",
"type": "call",
"name": "call GENERIC-RESOURCE-API:sdwan-vnf-topology-operation-device-create",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='sdwan-vnf-topology-operation-device-create' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1922.5549697875977,
- "y": 1612.6235747337341,
- "z": "8a089d88.295188",
+ "x": 1960.5549697875977,
+ "y": 1607.6235747337341,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "230795db.ca1882",
+ "id": "7c6d49f7.ca9348",
"type": "outcome",
"name": "ActivateSDWANVpnInstance",
"xml": "<outcome value='ActivateSDWANVpnInstance'>",
"comments": "",
"outputs": 1,
- "x": 1421.2961730957031,
- "y": 646.8151397705078,
- "z": "8a089d88.295188",
+ "x": 1459.2961730957031,
+ "y": 641.8151397705078,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "5cc61cba.0493d4"
+ "eaa1b9cf.3f0ac8"
]
]
},
{
- "id": "a47e6dba.2544d8",
+ "id": "4b606c40.f0bafc",
"type": "outcome",
"name": "ActivateSDWANSiteInstance",
"xml": "<outcome value='ActivateSDWANSiteInstance'>",
"comments": "",
"outputs": 1,
- "x": 1425.2961730957031,
- "y": 689.4815826416016,
- "z": "8a089d88.295188",
+ "x": 1463.2961730957031,
+ "y": 684.4815826416016,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "5cc61cba.0493d4"
+ "eaa1b9cf.3f0ac8"
]
]
},
{
- "id": "5cc61cba.0493d4",
+ "id": "eaa1b9cf.3f0ac8",
"type": "block",
"name": "block : atomic",
"xml": "<block atomic=\"true\">",
"atomic": "true",
"outputs": 1,
- "x": 1696.2961654663086,
- "y": 667.4816343784332,
- "z": "8a089d88.295188",
+ "x": 1734.2961654663086,
+ "y": 662.4816343784332,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "f4901264.697d98"
+ "c19dccff.f727c"
]
]
},
{
- "id": "f4901264.697d98",
+ "id": "c19dccff.f727c",
"type": "call",
"name": "call GENERIC-RESOURCE-API:vnf-topology-operation-vpn-site-resource-activate",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-vpn-site-resource-activate' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 2074.296012878418,
- "y": 664.8152935504913,
- "z": "8a089d88.295188",
+ "x": 2112.296012878418,
+ "y": 659.8152935504913,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "6374db99.535b04",
+ "id": "ed482171.811228",
"type": "call",
"name": "call GENERIC-RESOURCE-API:vnf-topology-operation-vpn-site-resource-deactivate",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-vpn-site-resource-deactivate' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 2122.3332138061523,
- "y": 1112.9380941390991,
- "z": "8a089d88.295188",
+ "x": 2160.3332138061523,
+ "y": 1107.9380941390991,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "81010330.b0fa3",
+ "id": "abf042f0.4f832",
"type": "block",
"name": "block : atomic",
"xml": "<block atomic=\"true\">",
"atomic": "true",
"outputs": 1,
- "x": 1725.3333053588867,
- "y": 1114.6044387817383,
- "z": "8a089d88.295188",
+ "x": 1763.3333053588867,
+ "y": 1109.6044387817383,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "6374db99.535b04"
+ "ed482171.811228"
]
]
},
{
- "id": "4f99c024.218c58",
+ "id": "6a9567cd.770ff",
"type": "outcome",
"name": "DeactivateSDWANSiteInstance",
"xml": "<outcome value='DeactivateSDWANSiteInstance'>",
"comments": "",
"outputs": 1,
- "x": 1467.3332901000977,
- "y": 1136.6044034957886,
- "z": "8a089d88.295188",
+ "x": 1505.3332901000977,
+ "y": 1131.6044034957886,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "81010330.b0fa3"
+ "abf042f0.4f832"
]
]
},
{
- "id": "55b31023.4a7df8",
+ "id": "35e1c8a9.0a4a7",
"type": "outcome",
"name": "DeactivateSDWANVpnInstance",
"xml": "<outcome value='DeactivateSDWANVpnInstance'>",
"comments": "",
"outputs": 1,
- "x": 1461.3332595825195,
- "y": 1093.9379558563232,
- "z": "8a089d88.295188",
+ "x": 1499.3332595825195,
+ "y": 1088.9379558563232,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "81010330.b0fa3"
+ "abf042f0.4f832"
]
]
},
{
- "id": "f8c28ff4.c8e26",
+ "id": "61a9db30.fa159c",
"type": "outcome",
"name": "CreateSDWANVpnInstance",
"xml": "<outcome value='CreateSDWANVpnInstance'>",
"comments": "",
"outputs": 1,
- "x": 1446.8516340255737,
- "y": 1712.5928702354431,
- "z": "8a089d88.295188",
+ "x": 1484.8516340255737,
+ "y": 1707.5928702354431,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "816f717b.b608d"
+ "f07f3c83.550a58"
]
]
},
{
- "id": "92a4b456.d3d5d8",
+ "id": "d9d4b57b.7f4fb",
"type": "outcome",
"name": "CreateSDWANSiteInstance",
"xml": "<outcome value='CreateSDWANSiteInstance'>",
"comments": "",
"outputs": 1,
- "x": 1438.8516111373901,
- "y": 1754.2592587471008,
- "z": "8a089d88.295188",
+ "x": 1476.8516111373901,
+ "y": 1749.2592587471008,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "816f717b.b608d"
+ "f07f3c83.550a58"
]
]
},
{
- "id": "816f717b.b608d",
+ "id": "f07f3c83.550a58",
"type": "block",
"name": "block : atomic",
"xml": "<block atomic=\"true\">",
"atomic": "true",
"outputs": 1,
- "x": 1696.8516263961792,
- "y": 1732.2592940330505,
- "z": "8a089d88.295188",
+ "x": 1734.8516263961792,
+ "y": 1727.2592940330505,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "c8697160.686d4"
+ "7af344ec.760b9c"
]
]
},
{
- "id": "c8697160.686d4",
+ "id": "7af344ec.760b9c",
"type": "call",
"name": "call GENERIC-RESOURCE-API:vnf-topology-operation-vpn-site-resource-create",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-vpn-site-resource-create' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 2074.8514738082886,
- "y": 1729.5929532051086,
- "z": "8a089d88.295188",
+ "x": 2112.8514738082886,
+ "y": 1724.5929532051086,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "fa035729.45e3c",
+ "id": "4c1ecd80.d07da4",
"type": "outcome",
"name": "DeleteSDWANVpnInstance",
"xml": "<outcome value='DeleteSDWANVpnInstance'>",
"comments": "",
"outputs": 1,
- "x": 1447.333396911621,
- "y": 2307.938106060028,
- "z": "8a089d88.295188",
+ "x": 1485.333396911621,
+ "y": 2302.938106060028,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "de394769.a28a"
+ "c88802d9.f5598"
]
]
},
{
- "id": "82fef141.f28ad",
+ "id": "55b8d324.626f94",
"type": "outcome",
"name": "DeleteSDWANSiteInstance",
"xml": "<outcome value='DeleteSDWANSiteInstance'>",
"comments": "",
"outputs": 1,
- "x": 1447.333396911621,
- "y": 2348.6046710014343,
- "z": "8a089d88.295188",
+ "x": 1485.333396911621,
+ "y": 2343.6046710014343,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "de394769.a28a"
+ "c88802d9.f5598"
]
]
},
{
- "id": "de394769.a28a",
+ "id": "c88802d9.f5598",
"type": "block",
"name": "block : atomic",
"xml": "<block atomic=\"true\">",
"atomic": "true",
"outputs": 1,
- "x": 1697.3333892822266,
- "y": 2327.6045298576355,
- "z": "8a089d88.295188",
+ "x": 1735.3333892822266,
+ "y": 2322.6045298576355,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "f9c3425f.bdcf5"
+ "5df064c8.71d95c"
]
]
},
{
- "id": "f9c3425f.bdcf5",
+ "id": "5df064c8.71d95c",
"type": "call",
"name": "call GENERIC-RESOURCE-API:vnf-topology-operation-vpn-site-resource-delete",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-vpn-site-resource-delete' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 2075.333236694336,
- "y": 2324.9381890296936,
- "z": "8a089d88.295188",
+ "x": 2113.333236694336,
+ "y": 2319.9381890296936,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "6a298a32.90484c",
+ "id": "2a64d3a1.fda20c",
"type": "set",
"name": "set skip-mdsal-update to Y",
"xml": "<set>\n<parameter name='skip-mdsal-update' value='Y' />\n",
"comments": "",
- "x": 2238.0318908691406,
- "y": 352.4920959472656,
- "z": "8a089d88.295188",
+ "x": 2276.0318908691406,
+ "y": 347.4920959472656,
+ "z": "de6608eb.7dee68",
"wires": []
},
{
- "id": "238df719.c2d83",
+ "id": "aa6afdab.2f8d4",
"type": "set",
"name": "set ack-final to 'N'",
"xml": "<set>\n<parameter name='ack-final' value='N' />\n",
"comments": "",
- "x": 2209.841583251953,
- "y": 416.8401184082031,
- "z": "8a089d88.295188",
+ "x": 2247.841583251953,
+ "y": 411.8401184082031,
+ "z": "de6608eb.7dee68",
"wires": []
},
{
- "id": "dc9fe65c.767c5",
+ "id": "cf6e5057.8ccd2",
"type": "block",
"name": "block : atomic",
"xml": "<block atomic=\"true\">",
"atomic": "true",
"outputs": 1,
- "x": 2001.3811340332031,
- "y": 355.4126281738281,
- "z": "8a089d88.295188",
+ "x": 2039.3811340332031,
+ "y": 350.4126281738281,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "6a298a32.90484c",
- "238df719.c2d83"
+ "2a64d3a1.fda20c",
+ "aa6afdab.2f8d4"
]
]
},
{
- "id": "4af9f52e.68b0ac",
+ "id": "4e6c82fa.178adc",
"type": "comment",
"name": "ack-final=N triggers Provider to call vnf-topology-operation-aysnc DG",
"info": "",
"comments": "",
- "x": 2422.158966064453,
- "y": 457.8094787597656,
- "z": "8a089d88.295188",
+ "x": 2460.158966064453,
+ "y": 452.8094787597656,
+ "z": "de6608eb.7dee68",
"wires": []
},
{
- "id": "3f3504ae.321654",
+ "id": "ca591061.3596c",
"type": "switchNode",
"name": "so-response-url empty?",
"xml": "<switch test='`length($vnf-topology-operation-input.sdnc-request-header.svc-notification-url) == 0`'>\n",
"comments": "",
"outputs": 1,
- "x": 1107.2857971191406,
- "y": 202.28570556640625,
- "z": "8a089d88.295188",
+ "x": 1145.2857971191406,
+ "y": 197.28570556640625,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "594230be.69b1d8",
- "2f05f0b.8ea6c9"
+ "11bfb1b.1f0f34e",
+ "6a6ad95.eb92228"
]
]
},
{
- "id": "594230be.69b1d8",
+ "id": "11bfb1b.1f0f34e",
"type": "outcomeTrue",
"name": "true",
"xml": "<outcome value='true'>\n",
"comments": "",
"outputs": 1,
- "x": 1332.2857971191406,
- "y": 158.28570556640625,
- "z": "8a089d88.295188",
+ "x": 1370.2857971191406,
+ "y": 153.28570556640625,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "bfba585a.37b9d"
+ "bfe20f1a.ab3dc"
]
]
},
{
- "id": "2f05f0b.8ea6c9",
+ "id": "6a6ad95.eb92228",
"type": "outcomeFalse",
"name": "false",
"xml": "<outcome value='false'>\n",
"comments": "",
"outputs": 1,
- "x": 1322.2857971191406,
- "y": 250.28570556640625,
- "z": "8a089d88.295188",
+ "x": 1360.2857971191406,
+ "y": 245.28570556640625,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "476f4a1c.17fa44"
+ "8865e5db.82cf58"
]
]
},
{
- "id": "476f4a1c.17fa44",
+ "id": "8865e5db.82cf58",
"type": "switchNode",
"name": "so-response-url = ignored URL?",
"xml": "<switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-notification-url == $prop.so.ignore-url`'>\n",
"comments": "",
"outputs": 1,
- "x": 1544.2857971191406,
- "y": 251.28570556640625,
- "z": "8a089d88.295188",
+ "x": 1582.2857971191406,
+ "y": 246.28570556640625,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "6b44719f.c3edd",
- "a5b8b9b3.d20088"
+ "43d4d039.c252a8",
+ "ef513436.7e0d"
]
]
},
{
- "id": "bfba585a.37b9d",
+ "id": "bfe20f1a.ab3dc",
"type": "call",
"name": "call vnf-topology-operation-assign-sync",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-assign-sync' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 2008.2857971191406,
- "y": 159.28570556640625,
- "z": "8a089d88.295188",
+ "x": 2046.2857971191406,
+ "y": 154.28570556640625,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "6b44719f.c3edd",
+ "id": "43d4d039.c252a8",
"type": "outcomeTrue",
"name": "true",
"xml": "<outcome value='true'>\n",
"comments": "",
"outputs": 1,
- "x": 1784.2857971191406,
- "y": 250.28570556640625,
- "z": "8a089d88.295188",
+ "x": 1822.2857971191406,
+ "y": 245.28570556640625,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "bfba585a.37b9d"
+ "bfe20f1a.ab3dc"
]
]
},
{
- "id": "a5b8b9b3.d20088",
+ "id": "ef513436.7e0d",
"type": "outcomeFalse",
"name": "false",
"xml": "<outcome value='false'>\n",
"comments": "",
"outputs": 1,
- "x": 1792.2857971191406,
- "y": 351.28570556640625,
- "z": "8a089d88.295188",
+ "x": 1830.2857971191406,
+ "y": 346.28570556640625,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "dc9fe65c.767c5"
+ "cf6e5057.8ccd2"
]
]
},
{
- "id": "ea6e1c18.d5a048",
+ "id": "923cd314.7d8bd",
"type": "execute",
"name": "execute getProperties",
"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": 1120.6622619628906,
- "y": 92.54547119140625,
- "z": "8a089d88.295188",
+ "x": 1158.6622619628906,
+ "y": 87.54547119140625,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "1e1ee6bd.a12821",
+ "id": "c4cc184d.0ea4c8",
"type": "block",
"name": "block",
"xml": "<block>\n",
"atomic": "false",
"comments": "",
"outputs": 1,
- "x": 929.7533264160156,
- "y": 90.727294921875,
- "z": "8a089d88.295188",
+ "x": 967.7533264160156,
+ "y": 85.727294921875,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "3f3504ae.321654",
- "ea6e1c18.d5a048"
+ "ca591061.3596c",
+ "923cd314.7d8bd"
]
]
},
{
- "id": "66ba22f2.06c6ac",
+ "id": "aaada9e2.ef729",
"type": "outcome",
"name": "CreateSOTNUnderlayInstance",
"xml": "<outcome value='CreateSOTNUnderlayInstance'>",
"comments": "",
"outputs": 1,
- "x": 1446.6665983200073,
- "y": 1791.999900341034,
- "z": "8a089d88.295188",
+ "x": 1484.6665983200073,
+ "y": 1786.999900341034,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "ad6e6b0b.369c1"
+ "8c22093f.9d959"
]
]
},
{
- "id": "ad6e6b0b.369c1",
+ "id": "8c22093f.9d959",
"type": "call",
"name": "call GENERIC-RESOURCE-API:sotn-vnf-topology-operation-underlay-create",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-underlay-create' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1903.190218925476,
- "y": 1796.5206797122955,
- "z": "8a089d88.295188",
+ "x": 1941.190218925476,
+ "y": 1791.5206797122955,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "bcff3d5e.448328",
+ "id": "12ca0f74.920081",
"type": "outcome",
"name": "ActivateSOTNUnderlayInstance",
"xml": "<outcome value='ActivateSOTNUnderlayInstance'>",
"comments": "",
"outputs": 1,
- "x": 1437.9999694824219,
- "y": 728.3332703113556,
- "z": "8a089d88.295188",
+ "x": 1475.9999694824219,
+ "y": 723.3332703113556,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "78a59d2a.b40f04"
+ "e49875ef.c52be8"
]
]
},
{
- "id": "78a59d2a.b40f04",
+ "id": "e49875ef.c52be8",
"type": "call",
"name": "call GENERIC-RESOURCE-API:sotn-vnf-topology-operation-underlay-activate",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-underlay-activate' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1897.8569641113281,
- "y": 722.8540802001953,
- "z": "8a089d88.295188",
+ "x": 1935.8569641113281,
+ "y": 717.8540802001953,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "bfc4e77.1d06a18",
+ "id": "8df0deb7.6b34f",
"type": "outcome",
"name": "DeactivateSOTNUnderlayInstance",
"xml": "<outcome value='DeactivateSOTNUnderlayInstance'>",
"comments": "",
"outputs": 1,
- "x": 1469.6666564941406,
- "y": 1172.6665802001953,
- "z": "8a089d88.295188",
+ "x": 1507.6666564941406,
+ "y": 1167.6665802001953,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "e763b4f8.edbd88"
+ "b1ed3246.76087"
]
]
},
{
- "id": "e763b4f8.edbd88",
+ "id": "b1ed3246.76087",
"type": "call",
"name": "call GENERIC-RESOURCE-API:sotn-vnf-topology-operation-underlay-deactivate",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-underlay-deactivate' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1937.8569641113281,
- "y": 1175.520523071289,
- "z": "8a089d88.295188",
+ "x": 1975.8569641113281,
+ "y": 1170.520523071289,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "10da590d.98b947",
+ "id": "c0084269.158748",
"type": "outcome",
"name": "DeleteSOTNUnderlayInstance",
"xml": "<outcome value='DeleteSOTNUnderlayInstance'>",
"comments": "",
"outputs": 1,
- "x": 1455.6666717529297,
- "y": 2382.3333563804626,
- "z": "8a089d88.295188",
+ "x": 1493.6666717529297,
+ "y": 2377.3333563804626,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "acd9ad25.c317a8"
+ "686e0e67.7a751"
]
]
},
{
- "id": "acd9ad25.c317a8",
+ "id": "686e0e67.7a751",
"type": "call",
"name": "call GENERIC-RESOURCE-API:sotn-vnf-topology-operation-underlay-delete",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-underlay-delete' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1893.8571014404297,
- "y": 2378.52073431015,
- "z": "8a089d88.295188",
+ "x": 1931.8571014404297,
+ "y": 2373.52073431015,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "200396ca.da6dba",
+ "id": "e2b0912f.196d98",
"type": "outcome",
"name": "CreateAccessConnectivityInstance",
"xml": "<outcome value='CreateAccessConnectivityInstance'>\n",
"comments": "",
"outputs": 1,
- "x": 1460.5,
- "y": 1495.75,
- "z": "8a089d88.295188",
+ "x": 1498.5,
+ "y": 1490.75,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "e4480788.84b37"
+ "bf116022.c4859"
]
]
},
{
- "id": "e4480788.84b37",
+ "id": "bf116022.c4859",
"type": "for",
"name": "for:vnf-input-paramters",
"xml": "<for index='idx' start='0' end='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param_length`' >\n",
"comments": "",
"outputs": 1,
- "x": 1746.432861328125,
- "y": 1493.033447265625,
- "z": "8a089d88.295188",
+ "x": 1784.432861328125,
+ "y": 1488.033447265625,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "19c6ac9b.0ef423"
+ "c1cf5568.c6dfa8"
]
]
},
{
- "id": "19c6ac9b.0ef423",
+ "id": "c1cf5568.c6dfa8",
"type": "switchNode",
"name": "switch:manufacturer",
"xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'manufacturer'`\">\n",
"comments": "",
"outputs": 1,
- "x": 1983.599365234375,
- "y": 1487.033447265625,
- "z": "8a089d88.295188",
+ "x": 2021.599365234375,
+ "y": 1482.033447265625,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "14f5be.82719a42"
+ "50f3e3de.c203d4"
]
]
},
{
- "id": "14f5be.82719a42",
+ "id": "50f3e3de.c203d4",
"type": "outcomeTrue",
"name": "true",
"xml": "<outcome value='true'>\n",
"comments": "",
"outputs": 1,
- "x": 2177.599365234375,
- "y": 1488.03369140625,
- "z": "8a089d88.295188",
+ "x": 2215.599365234375,
+ "y": 1483.03369140625,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "96037c5b.5b0df8"
+ "cc91a75d.80fb6"
]
]
},
{
- "id": "9b55c6a1.642138",
+ "id": "41d994a4.c5eae4",
"type": "outcome",
"name": "CreateInternetProfileInstance",
"xml": "<outcome value='CreateInternetProfileInstance'>\n",
"comments": "",
"outputs": 1,
- "x": 1438.283203125,
- "y": 1532.616455078125,
- "z": "8a089d88.295188",
+ "x": 1476.283203125,
+ "y": 1527.616455078125,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "7bbf0471.c32844"
+ "dd99ca43.a58fc8"
]
]
},
{
- "id": "7bbf0471.c32844",
+ "id": "dd99ca43.a58fc8",
"type": "for",
"name": "for:vnf-input-paramters",
"xml": "<for index='idx' start='0' end='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param_length`' >\n",
"comments": "",
"outputs": 1,
- "x": 1723.439453125,
- "y": 1531.60595703125,
- "z": "8a089d88.295188",
+ "x": 1761.439453125,
+ "y": 1526.60595703125,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "8eac794b.4ff3d8"
+ "c974314c.cea318"
]
]
},
{
- "id": "8eac794b.4ff3d8",
+ "id": "c974314c.cea318",
"type": "switchNode",
"name": "switch:manufacturer",
"xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'manufacturer'`\">\n",
"comments": "",
"outputs": 1,
- "x": 1976.6058349609375,
- "y": 1528.60595703125,
- "z": "8a089d88.295188",
+ "x": 2014.6058349609375,
+ "y": 1523.60595703125,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "b984ed9a.eddd08"
+ "4b8503a0.e71674"
]
]
},
{
- "id": "b984ed9a.eddd08",
+ "id": "4b8503a0.e71674",
"type": "outcomeTrue",
"name": "true",
"xml": "<outcome value='true'>\n",
"comments": "",
"outputs": 1,
- "x": 2172.605712890625,
- "y": 1544.606201171875,
- "z": "8a089d88.295188",
+ "x": 2210.605712890625,
+ "y": 1539.606201171875,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "8159d690.0c41a8"
+ "67fb1068.fd41f8"
]
]
},
{
- "id": "8159d690.0c41a8",
+ "id": "67fb1068.fd41f8",
"type": "switchNode",
"name": "switch:manufacturer value",
"xml": "<switch test='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`'>\n",
"comments": "",
"outputs": 1,
- "x": 2395.606201171875,
- "y": 1554.6064453125,
- "z": "8a089d88.295188",
+ "x": 2433.606201171875,
+ "y": 1549.6064453125,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "eaffd771.eac41"
+ "7f2dad35.040724"
]
]
},
{
- "id": "96037c5b.5b0df8",
+ "id": "cc91a75d.80fb6",
"type": "switchNode",
"name": "switch:manufacturer value",
"xml": "<switch test='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`'>\n",
"comments": "",
"outputs": 1,
- "x": 2409.599853515625,
- "y": 1488.033935546875,
- "z": "8a089d88.295188",
+ "x": 2447.599853515625,
+ "y": 1483.033935546875,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "3c81fedb.0be4da",
- "72ea67d8.8d2068"
+ "9a690577.7147a8",
+ "5e1152e7.2696dc"
]
]
},
{
- "id": "3c81fedb.0be4da",
+ "id": "9a690577.7147a8",
"type": "outcomeTrue",
"name": "HUAWEI",
"xml": "<outcome value='HUAWEI'>\n",
"comments": "",
"outputs": 1,
- "x": 2641.433349609375,
- "y": 1490.03369140625,
- "z": "8a089d88.295188",
+ "x": 2679.433349609375,
+ "y": 1485.03369140625,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "ceb29836.0408d8"
+ "ae3a7d63.ff15f8"
]
]
},
{
- "id": "72ea67d8.8d2068",
+ "id": "5e1152e7.2696dc",
"type": "other",
"name": "Other",
"xml": "<outcome value='Other'>\n",
"comments": "",
"outputs": 1,
- "x": 2635.833251953125,
- "y": 1521.75,
- "z": "8a089d88.295188",
+ "x": 2673.833251953125,
+ "y": 1516.75,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "3ef298a3.b4b2f"
+ "d48ba9fe.9916a8"
]
]
},
{
- "id": "eaffd771.eac41",
+ "id": "7f2dad35.040724",
"type": "outcomeTrue",
"name": "HUAWEI",
"xml": "<outcome value='HUAWEI'>\n",
"comments": "",
"outputs": 1,
- "x": 2623.439453125,
- "y": 1584.606201171875,
- "z": "8a089d88.295188",
+ "x": 2661.439453125,
+ "y": 1579.606201171875,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "8974e065.42cf68"
+ "ea39a012.0f4f1"
]
]
},
{
- "id": "ceb29836.0408d8",
+ "id": "ae3a7d63.ff15f8",
"type": "call",
"name": "call GENERIC-RESOURCE-API:bbs-access-connectivity-vnf-topology-operation-create-huawei",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='bbs-access-connectivity-vnf-topology-operation-create-huawei' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 3138.2769165039062,
- "y": 1490.044189453125,
- "z": "8a089d88.295188",
+ "x": 3176.2769165039062,
+ "y": 1485.044189453125,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "3ef298a3.b4b2f",
+ "id": "d48ba9fe.9916a8",
"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=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name+' is invalid manufacturer,please check!'`\" />",
"comments": "",
- "x": 2884.166259765625,
- "y": 1533.4166259765625,
- "z": "8a089d88.295188",
+ "x": 2922.166259765625,
+ "y": 1528.4166259765625,
+ "z": "de6608eb.7dee68",
"wires": []
},
{
- "id": "8974e065.42cf68",
+ "id": "ea39a012.0f4f1",
"type": "call",
"name": "call GENERIC-RESOURCE-API:bbs-internet-profile-vnf-topology-operation-create-huawei",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='bbs-internet-profile-vnf-topology-operation-create-huawei' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 3124.283447265625,
- "y": 1586.616943359375,
- "z": "8a089d88.295188",
+ "x": 3162.283447265625,
+ "y": 1581.616943359375,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "fb6200c1.eb497",
+ "id": "165f464d.107712",
"type": "outcome",
"name": "DeleteAccessConnectivityInstance",
"xml": "<outcome value='DeleteAccessConnectivityInstance'>\n",
"comments": "",
"outputs": 1,
- "x": 1471.75,
- "y": 2058.75,
- "z": "8a089d88.295188",
+ "x": 1509.75,
+ "y": 2053.75,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "4579a656.ff8dd8"
+ "3524df44.6fd078"
]
]
},
{
- "id": "4579a656.ff8dd8",
+ "id": "3524df44.6fd078",
"type": "for",
"name": "for:vnf-input-paramters",
"xml": "<for index='idx' start='0' end='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param_length`' >\n",
"comments": "",
"outputs": 1,
- "x": 1784.5732421875,
- "y": 2049.73974609375,
- "z": "8a089d88.295188",
+ "x": 1822.5732421875,
+ "y": 2044.73974609375,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "24d33b4e.2021f4"
+ "85c9002a.349e6"
]
]
},
{
- "id": "24d33b4e.2021f4",
+ "id": "85c9002a.349e6",
"type": "switchNode",
"name": "switch:manufacturer",
"xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'manufacturer'`\">\n",
"comments": "",
"outputs": 1,
- "x": 2055.7393798828125,
- "y": 2043.73974609375,
- "z": "8a089d88.295188",
+ "x": 2093.7393798828125,
+ "y": 2038.73974609375,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "2a6c48b.af53938"
+ "b32cabaf.bacda8"
]
]
},
{
- "id": "2a6c48b.af53938",
+ "id": "b32cabaf.bacda8",
"type": "outcomeTrue",
"name": "true",
"xml": "<outcome value='true'>\n",
"comments": "",
"outputs": 1,
- "x": 2255.739501953125,
- "y": 2043.7396240234375,
- "z": "8a089d88.295188",
+ "x": 2293.739501953125,
+ "y": 2038.7396240234375,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "316a2818.d2249"
+ "841727b2.fc43c8"
]
]
},
{
- "id": "527d576.7230ea8",
+ "id": "b8d302e7.884668",
"type": "outcome",
"name": "DeleteInternetProfileInstance",
"xml": "<outcome value='DeleteInternetProfileInstance'>\n",
"comments": "",
"outputs": 1,
- "x": 1453.316650390625,
- "y": 2098.800048828125,
- "z": "8a089d88.295188",
+ "x": 1491.316650390625,
+ "y": 2093.800048828125,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "c75e1f48.570c8"
+ "3f16f881.9bf11"
]
]
},
{
- "id": "c75e1f48.570c8",
+ "id": "3f16f881.9bf11",
"type": "for",
"name": "for:vnf-input-paramters",
"xml": "<for index='idx' start='0' end='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param_length`' >\n",
"comments": "",
"outputs": 1,
- "x": 1730.6500244140625,
- "y": 2110.5167236328125,
- "z": "8a089d88.295188",
+ "x": 1768.6500244140625,
+ "y": 2105.5167236328125,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "76730627.802e4"
+ "12fa6cf1.712bb3"
]
]
},
{
- "id": "76730627.802e4",
+ "id": "12fa6cf1.712bb3",
"type": "switchNode",
"name": "switch:manufacturer",
"xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'manufacturer'`\">\n",
"comments": "",
"outputs": 1,
- "x": 1958.8163528442383,
- "y": 2099.516764640808,
- "z": "8a089d88.295188",
+ "x": 1996.8163528442383,
+ "y": 2094.516764640808,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "cd073b6.c768fc8"
+ "93b663df.15b9d8"
]
]
},
{
- "id": "cd073b6.c768fc8",
+ "id": "93b663df.15b9d8",
"type": "outcomeTrue",
"name": "true",
"xml": "<outcome value='true'>\n",
"comments": "",
"outputs": 1,
- "x": 2148.816230773926,
- "y": 2099.517008781433,
- "z": "8a089d88.295188",
+ "x": 2186.816230773926,
+ "y": 2094.517008781433,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "693da3bc.719dd4"
+ "a3704e9.eb7593"
]
]
},
{
- "id": "693da3bc.719dd4",
+ "id": "a3704e9.eb7593",
"type": "switchNode",
"name": "switch:manufacturer value",
"xml": "<switch test='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`'>\n",
"comments": "",
"outputs": 1,
- "x": 2362.816719055176,
- "y": 2095.517252922058,
- "z": "8a089d88.295188",
+ "x": 2400.816719055176,
+ "y": 2090.517252922058,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "989e3e19.ec1b3"
+ "b25d7a6c.2d20b8"
]
]
},
{
- "id": "316a2818.d2249",
+ "id": "841727b2.fc43c8",
"type": "switchNode",
"name": "switch:manufacturer value",
"xml": "<switch test='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`'>\n",
"comments": "",
"outputs": 1,
- "x": 2514.7398986816406,
- "y": 2036.739761352539,
- "z": "8a089d88.295188",
+ "x": 2552.7398986816406,
+ "y": 2031.739761352539,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "ed96987b.eb92f"
+ "ce1c777.780d788"
]
]
},
{
- "id": "ed96987b.eb92f",
+ "id": "ce1c777.780d788",
"type": "outcomeTrue",
"name": "HUAWEI",
"xml": "<outcome value='HUAWEI'>\n",
"comments": "",
"outputs": 1,
- "x": 2717.5732421875,
- "y": 2045.7396240234375,
- "z": "8a089d88.295188",
+ "x": 2755.5732421875,
+ "y": 2040.7396240234375,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "c27ef8a5.eaf72"
+ "74540f1f.a1ddd8"
]
]
},
{
- "id": "989e3e19.ec1b3",
+ "id": "b25d7a6c.2d20b8",
"type": "outcomeTrue",
"name": "HUAWEI",
"xml": "<outcome value='HUAWEI'>\n",
"comments": "",
"outputs": 1,
- "x": 2550.6497802734375,
- "y": 2091.5169677734375,
- "z": "8a089d88.295188",
+ "x": 2588.6497802734375,
+ "y": 2086.5169677734375,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "6cdbeeec.cd0338"
+ "5eff96f4.fc3fe8"
]
]
},
{
- "id": "6cdbeeec.cd0338",
+ "id": "5eff96f4.fc3fe8",
"type": "call",
"name": "call GENERIC-RESOURCE-API:bbs-internet-profile-vnf-topology-operation-delete-huawei",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='bbs-internet-profile-vnf-topology-operation-delete-huawei' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 2893.493896484375,
- "y": 2151.527587890625,
- "z": "8a089d88.295188",
+ "x": 2931.493896484375,
+ "y": 2146.527587890625,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "c27ef8a5.eaf72",
+ "id": "74540f1f.a1ddd8",
"type": "call",
"name": "call GENERIC-RESOURCE-API:bbs-access-connectivity-vnf-topology-operation-delete-huawei",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='bbs-access-connectivity-vnf-topology-operation-delete-huawei' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 3158.750732421875,
- "y": 2094.7506103515625,
- "z": "8a089d88.295188",
+ "x": 3196.750732421875,
+ "y": 2089.7506103515625,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "e097aab2.2677e",
+ "id": "b1e9d3b7.9a8aa8",
"type": "outcome",
"name": "update",
"xml": "<outcome value='update'>\n",
"comments": "",
"outputs": 1,
- "x": 936.499942779541,
- "y": 2519.00008392334,
- "z": "8a089d88.295188",
+ "x": 974.499942779541,
+ "y": 2514.00008392334,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "e09113a.c56c7f"
+ "4a660084.f9bd28"
]
]
},
{
- "id": "e09113a.c56c7f",
+ "id": "4a660084.f9bd28",
"type": "switchNode",
"name": "switch request-action",
"xml": "<switch test='`$vnf-topology-operation-input.request-information.request-action`'>\n",
"comments": "",
"outputs": 1,
- "x": 1139.4999732971191,
- "y": 2612.50008392334,
- "z": "8a089d88.295188",
+ "x": 1177.4999732971191,
+ "y": 2607.50008392334,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "b6ed3a36.59e06",
- "58994378.ac8fb4"
+ "b5226790.62d05",
+ "8ab2dfbb.a1916",
+ "3c8354f5.d5e214"
]
]
},
{
- "id": "b6ed3a36.59e06",
+ "id": "b5226790.62d05",
"type": "outcome",
"name": "ChangeInternetProfileInstance",
"xml": "<outcome value='ChangeInternetProfileInstance'>\n",
"comments": "",
"outputs": 1,
- "x": 1412.499912261963,
- "y": 2609.00008392334,
- "z": "8a089d88.295188",
+ "x": 1450.499912261963,
+ "y": 2604.00008392334,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "ad17451.58d3cb8"
+ "b5959f12.cf2018"
]
]
},
{
- "id": "ad17451.58d3cb8",
+ "id": "b5959f12.cf2018",
"type": "for",
"name": "for:vnf-input-paramters",
"xml": "<for index='idx' start='0' end='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param_length`' >\n",
"comments": "",
"outputs": 1,
- "x": 1736.6561279296875,
- "y": 2607.98974609375,
- "z": "8a089d88.295188",
+ "x": 1774.6561279296875,
+ "y": 2602.98974609375,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "6a825308.0265a4"
+ "c791de21.3161a"
]
]
},
{
- "id": "6a825308.0265a4",
+ "id": "c791de21.3161a",
"type": "switchNode",
"name": "switch:manufacturer",
"xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'manufacturer'`\">\n",
"comments": "",
"outputs": 1,
- "x": 1997.822509765625,
- "y": 2605.98974609375,
- "z": "8a089d88.295188",
+ "x": 2035.822509765625,
+ "y": 2600.98974609375,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "7e2629d.b42f5d8"
+ "9a634162.bb58a"
]
]
},
{
- "id": "7e2629d.b42f5d8",
+ "id": "9a634162.bb58a",
"type": "outcomeTrue",
"name": "true",
"xml": "<outcome value='true'>\n",
"comments": "",
"outputs": 1,
- "x": 2185.822395324707,
- "y": 2607.989908218384,
- "z": "8a089d88.295188",
+ "x": 2223.822395324707,
+ "y": 2602.989908218384,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "a7970042.cda818"
+ "a31b2229.3b0b6"
]
]
},
{
- "id": "a7970042.cda818",
+ "id": "a31b2229.3b0b6",
"type": "switchNode",
"name": "switch:manufacturer value",
"xml": "<switch test='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`'>\n",
"comments": "",
"outputs": 1,
- "x": 2396.8230361938477,
- "y": 2607.9902334213257,
- "z": "8a089d88.295188",
+ "x": 2434.8230361938477,
+ "y": 2602.9902334213257,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "318d0243.9afc36"
+ "db546338.55a6a"
]
]
},
{
- "id": "318d0243.9afc36",
+ "id": "db546338.55a6a",
"type": "outcomeTrue",
"name": "HUAWEI",
"xml": "<outcome value='HUAWEI'>\n",
"comments": "",
"outputs": 1,
- "x": 2648.6562690734863,
- "y": 2533.989896774292,
- "z": "8a089d88.295188",
+ "x": 2686.6562690734863,
+ "y": 2528.989896774292,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "e89018af.6420d"
+ "f54d61cc.01d07"
]
]
},
{
- "id": "e89018af.6420d",
+ "id": "f54d61cc.01d07",
"type": "call",
"name": "call GENERIC-RESOURCE-API:bbs-internet-profile-vnf-topology-operation-change-huawei",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='bbs-internet-profile-vnf-topology-operation-change-huawei' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 3112.5008239746094,
- "y": 2535.000228881836,
- "z": "8a089d88.295188",
+ "x": 3150.5008239746094,
+ "y": 2530.000228881836,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "d5f5c122.ae8be8",
+ "id": "36852303.31db6c",
"type": "outcome",
"name": "ActivateTransportSliceInstance",
"xml": "<outcome value='ActivateTransportSliceInstance'>",
"comments": "",
"outputs": 1,
- "x": 1434,
- "y": 792,
- "z": "8a089d88.295188",
+ "x": 1472,
+ "y": 787,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "8223237b.e7a338"
+ "2ec0ae18.6972ba"
]
]
},
{
- "id": "8223237b.e7a338",
+ "id": "2ec0ae18.6972ba",
"type": "call",
"name": "call GENERIC-RESOURCE-API:tsli-vnf-topology-operation-trans-slice-activate",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='tsli-vnf-topology-operation-trans-slice-activate' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1893.8569946289062,
- "y": 786.5208098888397,
- "z": "8a089d88.295188",
+ "x": 1931.8569946289062,
+ "y": 781.5208098888397,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "1ed033e6.f89f9c",
+ "id": "783b5217.1ea664",
"type": "outcome",
"name": "DeleteTransportSliceInstance",
"xml": "<outcome value='DeleteTransportSliceInstance'>",
"comments": "",
"outputs": 1,
- "x": 1450,
- "y": 2450,
- "z": "8a089d88.295188",
+ "x": 1488,
+ "y": 2445,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "dbf8a40f.0e189"
+ "4d5e1a9e.f28edc"
]
]
},
{
- "id": "dbf8a40f.0e189",
+ "id": "4d5e1a9e.f28edc",
"type": "call",
"name": "call GENERIC-RESOURCE-API:tsli-vnf-topology-operation-trans-slice-delete",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='tsli-vnf-topology-operation-trans-slice-delete' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1888.1904296875,
- "y": 2446.1873779296875,
- "z": "8a089d88.295188",
+ "x": 1926.1904296875,
+ "y": 2441.1873779296875,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "9134a5a8.bc4e5",
+ "id": "d030a525.70e9c8",
"type": "outcome",
"name": "AllocateTransportSliceInstance",
"xml": "<outcome value='AllocateTransportSliceInstance'>",
"comments": "",
"outputs": 1,
- "x": 1443,
- "y": 1860,
- "z": "8a089d88.295188",
+ "x": 1481,
+ "y": 1855,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "adba3298.28a47"
+ "d2ac7ea8.556cf8"
]
]
},
{
- "id": "adba3298.28a47",
+ "id": "d2ac7ea8.556cf8",
"type": "call",
"name": "call GENERIC-RESOURCE-API:tsli-vnf-topology-operation-trans-slice-allocate",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='tsli-vnf-topology-operation-trans-slice-allocate' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1895.523681640625,
- "y": 1854.520751953125,
- "z": "8a089d88.295188",
+ "x": 1933.523681640625,
+ "y": 1849.520751953125,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "2f120adf.034a9e",
+ "id": "a64eaaf7.f8cc3",
"type": "outcome",
"name": "DeactivateTransportSliceInstance",
"xml": "<outcome value='DeactivateTransportSliceInstance'>",
"comments": "",
"outputs": 1,
- "x": 1468,
- "y": 1245,
- "z": "8a089d88.295188",
+ "x": 1506,
+ "y": 1240,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "173b2976.ff4bff"
+ "ace1a0de.86c7b"
]
]
},
{
- "id": "173b2976.ff4bff",
+ "id": "ace1a0de.86c7b",
"type": "call",
"name": "call GENERIC-RESOURCE-API:tsli-vnf-topology-operation-trans-slice-deactivate",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='tsli-vnf-topology-operation-trans-slice-deactivate' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1936.1903076171875,
- "y": 1247.8539428710938,
- "z": "8a089d88.295188",
+ "x": 1974.1903076171875,
+ "y": 1242.8539428710938,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
},
{
- "id": "58994378.ac8fb4",
+ "id": "8ab2dfbb.a1916",
"type": "outcome",
"name": "ModifyTransportSliceInstance",
"xml": "<outcome value='DeleteTransportSliceInstance'>",
"comments": "",
"outputs": 1,
- "x": 1407,
- "y": 2666,
- "z": "8a089d88.295188",
+ "x": 1445,
+ "y": 2661,
+ "z": "de6608eb.7dee68",
"wires": [
[
- "278d780.1be9f88"
+ "8e513e9b.02f858"
]
]
},
{
- "id": "278d780.1be9f88",
+ "id": "8e513e9b.02f858",
"type": "call",
"name": "call GENERIC-RESOURCE-API:tsli-vnf-topology-operation-trans-slice-modify",
"xml": "<call module='GENERIC-RESOURCE-API' rpc='tsli-vnf-topology-operation-trans-slice-modify' mode='sync' >\n",
"comments": "",
"outputs": 1,
- "x": 1845.1904296875,
- "y": 2662.1873779296875,
- "z": "8a089d88.295188",
+ "x": 1883.1904296875,
+ "y": 2657.1873779296875,
+ "z": "de6608eb.7dee68",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "1fc4171d.33b849",
+ "type": "outcome",
+ "name": "CreateCloudLeasedLineInstance",
+ "xml": "<outcome value='CreateCloudLeasedLineInstance'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1480,
+ "y": 1911,
+ "z": "de6608eb.7dee68",
+ "wires": [
+ [
+ "fcc35da5.66b088"
+ ]
+ ]
+ },
+ {
+ "id": "fcc35da5.66b088",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-create-clean",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-create-clean' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1932.523681640625,
+ "y": 1905.520751953125,
+ "z": "de6608eb.7dee68",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "845ca1dd.f3e83",
+ "type": "outcome",
+ "name": "DeleteCloudLeasedLineInstance",
+ "xml": "<outcome value='DeleteCloudLeasedLineInstance'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1497,
+ "y": 2493,
+ "z": "de6608eb.7dee68",
+ "wires": [
+ [
+ "d1528432.c809d"
+ ]
+ ]
+ },
+ {
+ "id": "d1528432.c809d",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-delete",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-delete' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1940.523681640625,
+ "y": 2493.520751953125,
+ "z": "de6608eb.7dee68",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "3c8354f5.d5e214",
+ "type": "outcome",
+ "name": "ModifyCloudLeasedLineInstance",
+ "xml": "<outcome value='ModifyCloudLeasedLineInstance'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1447,
+ "y": 2716,
+ "z": "de6608eb.7dee68",
+ "wires": [
+ [
+ "47ca6bac.c33744"
+ ]
+ ]
+ },
+ {
+ "id": "47ca6bac.c33744",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-delete",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-delete' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1890.523681640625,
+ "y": 2716.520751953125,
+ "z": "de6608eb.7dee68",
"wires": [
[]
]
diff --git a/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1-Activate.json b/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1-Activate.json
new file mode 100644
index 00000000..81e0415a
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1-Activate.json
@@ -0,0 +1,3445 @@
+[
+ {
+ "id": "ee012476.423b98",
+ "type": "save",
+ "name": "get all-vpn-bindings from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"vpn-bindings\"\n\t key=\"selflink = 'https://aai.onap:8443/aai/v24/network/vpn-bindings\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"tmp.aai.all-vpn-bindings\" >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 339,
+ "y": 363,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "2b361ed4.488d22",
+ "8a293b14.096a28",
+ "e711b658.aa0458"
+ ]
+ ]
+ },
+ {
+ "id": "2b361ed4.488d22",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 527,
+ "y": 376,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "d45a4635.eb8678"
+ ]
+ ]
+ },
+ {
+ "id": "8a293b14.096a28",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 527.490966796875,
+ "y": 421.57403564453125,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "abb54833.f0129"
+ ]
+ ]
+ },
+ {
+ "id": "e711b658.aa0458",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 525,
+ "y": 465,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "f29b4663.f669b"
+ ]
+ ]
+ },
+ {
+ "id": "d45a4635.eb8678",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 700,
+ "y": 374,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "f31c0d53.86d7f8"
+ ]
+ ]
+ },
+ {
+ "id": "abb54833.f0129",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 690.0623779296875,
+ "y": 421.8597717285156,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "f29b4663.f669b",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 692,
+ "y": 464,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "f31c0d53.86d7f8",
+ "type": "for",
+ "name": "for vpnidx in all-vpn-bindings",
+ "xml": "<for index='vpnbidx' start='0' end='`$tmp.aai.all-vpn-bindings.vpn-binding_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 929,
+ "y": 375,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "b49d17ad.574c7"
+ ]
+ ]
+ },
+ {
+ "id": "b49d17ad.574c7",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1144,
+ "y": 376,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "59104900.730b5"
+ ]
+ ]
+ },
+ {
+ "id": "59104900.730b5",
+ "type": "switchNode",
+ "name": "switch vpnuuid is for this slice",
+ "xml": "<!--<switch test=\"`$tmp.slicevpnuuids[$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-id] != '' `\">-->\n\n<!-- Replace vpn-type with slice-id (a new attribbute in the latest AAI) -->\n<switch test=\"`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].slice-id == $tmp.aai.service-instance.service-instance-id `\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1388,
+ "y": 375,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "a081cc3f.ed90c8",
+ "c86127b7.79d09"
+ ]
+ ]
+ },
+ {
+ "id": "a081cc3f.ed90c8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1605,
+ "y": 354,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "99d2c91.f0beeb8"
+ ]
+ ]
+ },
+ {
+ "id": "c86127b7.79d09",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1605,
+ "y": 403,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "99d2c91.f0beeb8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1799,
+ "y": 363,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "1cc75cf0.e01a9b",
+ "171d3657.f2327a",
+ "e9e324cf.d34fa8"
+ ]
+ ]
+ },
+ {
+ "id": "63d9b9e3.c39a3",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 158,
+ "y": 104,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "13826703.6fe8f9"
+ ]
+ ]
+ },
+ {
+ "id": "13826703.6fe8f9",
+ "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": 442.2856903076172,
+ "y": 165.23810863494873,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "a18ada65.df1b6"
+ ]
+ ]
+ },
+ {
+ "id": "a18ada65.df1b6",
+ "type": "method",
+ "name": "method cll-vnf-topology-operation-cll-F1-Activate",
+ "xml": "<method rpc='cll-vnf-topology-operation-cll-F1-Activate' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 448.42860412597656,
+ "y": 250.00003051757812,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "e68623b.1ed71e"
+ ]
+ ]
+ },
+ {
+ "id": "e68623b.1ed71e",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 758.238037109375,
+ "y": 241.66668701171875,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "ee012476.423b98",
+ "1d423866.3abba8",
+ "63268214.354d14",
+ "2b86835c.8d9024",
+ "5a6a7d0e.a2f89c"
+ ]
+ ]
+ },
+ {
+ "id": "1cc75cf0.e01a9b",
+ "type": "set",
+ "name": "set tmp.aai.vpn-binding",
+ "xml": "<set>\n<parameter name='tmp.aai.vpn-binding.' value=\"`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].`\" />\n",
+ "comments": "",
+ "x": 2016,
+ "y": 301,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "acb2a33f.d7ec9",
+ "type": "set",
+ "name": "set attachment_param for OTN A",
+ "xml": "<set>\n<parameter name='src-node-id' value='`$tmp.aai.vpn-bindingA.src-access-node-id`' />\n<parameter name='dst-node-id' value='`$tmp.aai.vpn-bindingA.dst-access-node-id`' />\n<!--<parameter name='dst-tpn-id' value='1' />-->\n<parameter name='dst-tpn-id' value='`$tmp.aai.vpn-bindingA.customer-vpn-id`' />\n<parameter name='dst-ttp-id' value='`$tmp.aai.vpn-bindingA.dst-access-ltp-id`' />\n<parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n<parameter name='otn-tunnel-name-src-domain' value='`$tmp.aai.vpn-bindingA.vpn-name`' />\n<parameter name='client-id' value='`$tmp.aai.vpn-bindingA.access-client-id`' />\n<parameter name='provider-id' value='`$tmp.aai.vpn-bindingA.access-provider-id`' />\n<parameter name='topology-id' value='`$tmp.aai.vpn-bindingA.access-topology-id`' />\n",
+ "comments": "",
+ "x": 4185,
+ "y": 187,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "1a2b69e5.bdb2ae",
+ "type": "execute",
+ "name": "execute RestApiCallNode Create OTN tunnel with token",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.cll-otn-src-domain-creation.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainA.url + '/restconf/data/ietf-te:te'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainA.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainA.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"patch\"/>\n<parameter name=\"responsePrefix\" value=\"otn-oof\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.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": 4266,
+ "y": 502,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "c13bac2.6ce225",
+ "54c65da.56603a4"
+ ]
+ ]
+ },
+ {
+ "id": "c13bac2.6ce225",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4575.5,
+ "y": 471,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "9c791a1e.520a28"
+ ]
+ ]
+ },
+ {
+ "id": "54c65da.56603a4",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4580.5,
+ "y": 536,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "b016fce4.beba"
+ ]
+ ]
+ },
+ {
+ "id": "9c791a1e.520a28",
+ "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 OTN tunnel rest api\" />\n",
+ "comments": "",
+ "x": 4751.5,
+ "y": 471,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "b016fce4.beba",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 4747,
+ "y": 536,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "2227e8a2.0665b8",
+ "type": "set",
+ "name": "set sotn_value",
+ "xml": "<set>\n<!--<parameter name='eth-service-name' value='`$tmp.aai.connectivityA.connectivity-id`' />-->\n<parameter name='eth-service-name' value='`$tmp.aai.connectivityA.etht-svc-name`' />\n<parameter name='slice-id' value='`$vnf-topology-operation-input.service-information.service-instance-id`' />\n<parameter name='provider-id' value='`$tmp.aai.connectivityA.access-provider-id`' />\n<parameter name='client-id' value='`$tmp.aai.connectivityA.access-client-id`' />\n<parameter name='topology-id' value='`$tmp.aai.connectivityA.access-topology-id`' />\n<parameter name='otn-tunnel-name' value='`$tmp.aai.vpn-bindingA.vpn-name`' />\n<parameter name='ethernet-end-point-name' value='`$tmp.aai.connectivityA.connectivity-id`' />\n<parameter name='index-number' value='0' />\n<parameter name='eth-node-id' value='`$tmp.aai.connectivityA.access-node-id`' />\n<parameter name='eth-node-tp-id' value='`$tmp.aai.connectivityA.access-ltp-id`' />\n<parameter name='CIR' value='`$tmp.aai.vpn-bindingA.route-distinguisher *1000000`' />\n<parameter name='EIR' value='`$tmp.aai.vpn-bindingA.route-distinguisher *1000000`' />\n<parameter name='cvlan' value='`$tmp.aai.connectivityA.cvlan`' />\n",
+ "comments": "",
+ "x": 4130.5,
+ "y": 756,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "f70fce2d.7485",
+ "type": "execute",
+ "name": "execute RestApiCallNode Create ethernet Service without token",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.ts-ethernet-service.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainA.url + '/restconf/data/ietf-eth-tran-service:etht-svc'`\" />\n<!--<parameter name=\"restapiUrl\" value=\"`$prop.restapi.connection-oof-url`\" />-->\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainA.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainA.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"patch\"/>\n<parameter name='dirPath' value=\"/opt/onap/sdnc/restconfapi/yang\" />\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.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",
+ "comments": "",
+ "outputs": 1,
+ "x": 4284.5,
+ "y": 804,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "8ffe5287.d9d0e8",
+ "5f6b3e31.55961"
+ ]
+ ]
+ },
+ {
+ "id": "8ffe5287.d9d0e8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4630,
+ "y": 785,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "8c837eb9.336b9"
+ ]
+ ]
+ },
+ {
+ "id": "5f6b3e31.55961",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4634,
+ "y": 825,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "575c5f0f.3503d8"
+ ]
+ ]
+ },
+ {
+ "id": "8c837eb9.336b9",
+ "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 ethernet service rest api\" />\n",
+ "comments": "",
+ "x": 4788,
+ "y": 785,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "575c5f0f.3503d8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 4791.5,
+ "y": 825,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "25e6aa4e.9a9cde",
+ "1cebed54.09e3f3"
+ ]
+ ]
+ },
+ {
+ "id": "25e6aa4e.9a9cde",
+ "type": "save",
+ "name": "update vpn-binding A resource (aka. OTN domainA) in AAI",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $tmp.aai.vpn-bindingA.vpn-id' >\n<parameter name='vpn-id' value='`$tmp.aai.vpn-bindingA.vpn-id`' />\n<parameter name='vpn-name' value='`$tmp.aai.vpn-bindingA.vpn-name`' />\n\n<parameter name='operational-status' value='Activated' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5122,
+ "y": 790,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "57cb404e.88a3a8",
+ "type": "comment",
+ "name": "TODO: FIXME",
+ "info": "use proper vpn-binding id and connectivity id\n\nAlso, does CCSDK support \"update\" operation for vpn-binding and connectivity?",
+ "comments": "",
+ "x": 4986,
+ "y": 749,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "1cebed54.09e3f3",
+ "type": "save",
+ "name": "update connectivity resource in AAI",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \n key='connectivity.connectivity-id = $tmp.aai.connectivityA.connectivity-id'>\n<parameter name='connectivity-id' value='`$tmp.aai.connectivityA.connectivity-id`' />\n<parameter name='operational-status' value='Activated' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5049,
+ "y": 836,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "adcc0fc7.59b628",
+ "type": "set",
+ "name": "set pnf-name",
+ "xml": "<set>\n<parameter name='tmp.src.domainA.pnf-name' value=\"`'networkId-providerId-' +\n $tmp.aai.vpn-bindingA.access-provider-id + '-clientId-' +\n $tmp.aai.vpn-bindingA.access-client-id + '-topologyId-' +\n $tmp.aai.vpn-bindingA.access-topology-id + '-nodeId-' +\n $tmp.aai.vpn-bindingA.src-access-node-id`\" />\n",
+ "comments": "",
+ "x": 4123,
+ "y": 235,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "36f9f62e.004372",
+ "type": "get-resource",
+ "name": "get-resource src pnf",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"pnf\" \n\t\tkey=\"pnf.pnf-name = $tmp.src.domainA.pnf-name\"\n pfx='tmp.aai.source-pnf' local-only='false' >\n\n <!--AND depth = '0'\"-->\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4149,
+ "y": 352,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "37680b24.ccfd7c",
+ "da1cdd66.16c98",
+ "923405db.542c"
+ ]
+ ]
+ },
+ {
+ "id": "37680b24.ccfd7c",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4344.5001220703125,
+ "y": 304,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "3021ee1b.904b12"
+ ]
+ ]
+ },
+ {
+ "id": "da1cdd66.16c98",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4336.5001220703125,
+ "y": 359,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "12605fae.863058"
+ ]
+ ]
+ },
+ {
+ "id": "3021ee1b.904b12",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4488.8824462890625,
+ "y": 303.6556701660156,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "dd5c14b5.d1837"
+ ]
+ ]
+ },
+ {
+ "id": "67c4003.ef8f28",
+ "type": "outcome",
+ "name": "esr-thirdparty-sdnc",
+ "xml": "<outcome value='esr-thirdparty-sdnc'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5071,
+ "y": 306,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "108d04fa.bf4053"
+ ]
+ ]
+ },
+ {
+ "id": "dd5c14b5.d1837",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='spvidx' start='0' end='`$tmp.aai.source-pnf.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4673,
+ "y": 302,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "d5f86c5d.16c4"
+ ]
+ ]
+ },
+ {
+ "id": "d5f86c5d.16c4",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4868,
+ "y": 302,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "67c4003.ef8f28"
+ ]
+ ]
+ },
+ {
+ "id": "923405db.542c",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4341.5001220703125,
+ "y": 416,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "b180d8b0.c43f88"
+ ]
+ ]
+ },
+ {
+ "id": "b180d8b0.c43f88",
+ "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": 4493.5001220703125,
+ "y": 417,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "12605fae.863058",
+ "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": 4504.5001220703125,
+ "y": 360,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "f9899c24.7b705",
+ "type": "execute",
+ "name": "get 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.domainA.esr-thirdparty-id AND \n\t\t depth = '1'\"\n pfx='tmp.aai.domainA.esr-thirdparty-sdnc' local-only='false' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 5456,
+ "y": 319,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "d378bd87.63a5c8",
+ "5261c81e.fbb5b8",
+ "634ff531.a525f4"
+ ]
+ ]
+ },
+ {
+ "id": "108d04fa.bf4053",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 5250,
+ "y": 306,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "20f95b42.b2257c",
+ "f9899c24.7b705"
+ ]
+ ]
+ },
+ {
+ "id": "20f95b42.b2257c",
+ "type": "set",
+ "name": "set esr-thirdparty-sdnc domainA id",
+ "xml": "<set>\n<parameter name='tmp.domainA.esr-thirdparty-id' value=\"`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 5486,
+ "y": 267,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "d378bd87.63a5c8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5666,
+ "y": 310,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "1cbdaba0.674dd4"
+ ]
+ ]
+ },
+ {
+ "id": "5261c81e.fbb5b8",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5658,
+ "y": 365,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "66b4dbad.a4949c"
+ ]
+ ]
+ },
+ {
+ "id": "634ff531.a525f4",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5663,
+ "y": 422,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "21f2fdd8.0e601a"
+ ]
+ ]
+ },
+ {
+ "id": "21f2fdd8.0e601a",
+ "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": 5815,
+ "y": 423,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "66b4dbad.a4949c",
+ "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": 5826,
+ "y": 368,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "1cbdaba0.674dd4",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 5810.38232421875,
+ "y": 307.6556701660156,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "ebf10644.3cf328"
+ ]
+ ]
+ },
+ {
+ "id": "ebf10644.3cf328",
+ "type": "set",
+ "name": "set controller domainA data",
+ "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainA.url' value=\"`$tmp.aai.domainA.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainA.user' value=\"`$tmp.aai.domainA.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainA.password' value=\"`$tmp.aai.domainA.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`\" />\n\n\n<!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->\n<!--<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`\" />-->\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=\"get\"/>-->\n<!--<parameter name=\"responsePrefix\" value=\"topology\"/>-->\n<!--<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.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",
+ "comments": "",
+ "x": 6025,
+ "y": 304,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "204badf8.a5ba12",
+ "type": "set",
+ "name": "set attachment_param for OTN B",
+ "xml": "<set>\n<parameter name='src-node-id' value='`$tmp.aai.vpn-bindingB.src-access-node-id`' />\n<parameter name='dst-node-id' value='`$tmp.aai.vpn-bindingB.dst-access-node-id`' />\n<!--<parameter name='src-tpn-id' value='1' />-->\n<parameter name='src-tpn-id' value='`$tmp.aai.vpn-bindingB.customer-vpn-id`' />\n<parameter name='src-ttp-id' value='`$tmp.aai.vpn-bindingB.src-access-ltp-id`' />\n<parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n<parameter name='otn-tunnel-name-dst-domain' value='`$tmp.aai.vpn-bindingB.vpn-name`' />\n<parameter name='client-id' value='`$tmp.aai.vpn-bindingB.access-client-id`' />\n<parameter name='provider-id' value='`$tmp.aai.vpn-bindingB.access-provider-id`' />\n<parameter name='topology-id' value='`$tmp.aai.vpn-bindingB.access-topology-id`' />\n",
+ "comments": "",
+ "x": 3592,
+ "y": 1644,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "4d3bca29.9af50c",
+ "type": "execute",
+ "name": "execute RestApiCallNode Create OTN tunnel with token",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.cll-otn-dst-domain-creation.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainB.url + '/restconf/data/ietf-te:te'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainB.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainB.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"patch\"/>\n<parameter name=\"responsePrefix\" value=\"otn-oof\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.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": 3655,
+ "y": 1973,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "30186c33.4929f4",
+ "868e39af.adebc8"
+ ]
+ ]
+ },
+ {
+ "id": "30186c33.4929f4",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3950.5,
+ "y": 1940,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "2aae4501.2c69e2"
+ ]
+ ]
+ },
+ {
+ "id": "868e39af.adebc8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3955.5,
+ "y": 2005,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "7501d4e8.c8d944"
+ ]
+ ]
+ },
+ {
+ "id": "2aae4501.2c69e2",
+ "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 OTN tunnel rest api\" />\n",
+ "comments": "",
+ "x": 4118.5,
+ "y": 1940,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "7501d4e8.c8d944",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 4129,
+ "y": 2005,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "cc294dbc.f351c",
+ "type": "set",
+ "name": "set pnf-name",
+ "xml": "<set>\n<parameter name='tmp.dst.domainB.pnf-name' value=\"`'networkId-providerId-' +\n $tmp.aai.vpn-bindingB.access-provider-id + '-clientId-' +\n $tmp.aai.vpn-bindingB.access-client-id + '-topologyId-' +\n $tmp.aai.vpn-bindingB.access-topology-id + '-nodeId-' +\n $tmp.aai.vpn-bindingB.dst-access-node-id`\" />\n",
+ "comments": "",
+ "x": 3531,
+ "y": 1701,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "c8227bea.321b5",
+ "type": "get-resource",
+ "name": "get-resource dst pnf",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"pnf\" \n\t\tkey=\"pnf.pnf-name = $tmp.dst.domainB.pnf-name\"\n pfx='tmp.aai.destination-pnf' local-only='false' >\n\n <!--AND depth = '0'\"-->\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3551,
+ "y": 1798,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "9f19ba3f.539ea8",
+ "e4125ed0.f068f8",
+ "de95537a.826588"
+ ]
+ ]
+ },
+ {
+ "id": "9f19ba3f.539ea8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3753.5001220703125,
+ "y": 1751,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "e35cf2ca.728ed8"
+ ]
+ ]
+ },
+ {
+ "id": "e4125ed0.f068f8",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3745.5001220703125,
+ "y": 1806,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "c80b6676.b0f198"
+ ]
+ ]
+ },
+ {
+ "id": "e35cf2ca.728ed8",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 3897.8824462890625,
+ "y": 1748.6556701660156,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "57d9c9b8.81d7a8"
+ ]
+ ]
+ },
+ {
+ "id": "57d9c9b8.81d7a8",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='dpvidx' start='0' end='`$tmp.aai.destination-pnf.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4082,
+ "y": 1763,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "2837eada.0816e6"
+ ]
+ ]
+ },
+ {
+ "id": "de95537a.826588",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3750.5001220703125,
+ "y": 1863,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "6ac21b2f.35237c"
+ ]
+ ]
+ },
+ {
+ "id": "6ac21b2f.35237c",
+ "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": 3902.5001220703125,
+ "y": 1864,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "c80b6676.b0f198",
+ "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": 3913.5001220703125,
+ "y": 1809,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "b2f2b82b.20ac9",
+ "type": "outcome",
+ "name": "esr-thirdparty-sdnc",
+ "xml": "<outcome value='esr-thirdparty-sdnc'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4480,
+ "y": 1767,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "e8c4648e.2f16b8"
+ ]
+ ]
+ },
+ {
+ "id": "2837eada.0816e6",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.destination-pnf.relationship-list.relationship[$dpvidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4277,
+ "y": 1763,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "b2f2b82b.20ac9"
+ ]
+ ]
+ },
+ {
+ "id": "7fa6120f.8bbc34",
+ "type": "execute",
+ "name": "get 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.domainB.esr-thirdparty-id AND \n\t\t depth = '1'\"\n pfx='tmp.aai.domainB.esr-thirdparty-sdnc' local-only='false' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 4865,
+ "y": 1766,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "2004b12.ed9d54e",
+ "ffd8f42d.6ff66",
+ "7412d147.be04a8"
+ ]
+ ]
+ },
+ {
+ "id": "e8c4648e.2f16b8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4657,
+ "y": 1759,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "619505d8.279204",
+ "7fa6120f.8bbc34"
+ ]
+ ]
+ },
+ {
+ "id": "619505d8.279204",
+ "type": "set",
+ "name": "set esr-thirdparty-sdnc domainB id",
+ "xml": "<set>\n<parameter name='tmp.domainB.esr-thirdparty-id' value=\"`$tmp.aai.destination-pnf.relationship-list.relationship[$dpvidx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 4895,
+ "y": 1714,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "407265d3.d9387c",
+ "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": 5224,
+ "y": 1870,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "70bb8ce1.2b5a7c",
+ "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": 5235,
+ "y": 1815,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "474b0f12.6a5378",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 5219.38232421875,
+ "y": 1754.6556701660156,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "4664ee87.d9fd18"
+ ]
+ ]
+ },
+ {
+ "id": "4664ee87.d9fd18",
+ "type": "set",
+ "name": "set controller domainB data",
+ "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainB.url' value=\"`$tmp.aai.domainB.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainB.user' value=\"`$tmp.aai.domainB.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainB.password' value=\"`$tmp.aai.domainB.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`\" />\n\n\n<!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->\n<!--<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`\" />-->\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=\"get\"/>-->\n<!--<parameter name=\"responsePrefix\" value=\"topology\"/>-->\n<!--<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.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",
+ "comments": "",
+ "x": 5434,
+ "y": 1751,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "2004b12.ed9d54e",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5075,
+ "y": 1757,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "474b0f12.6a5378"
+ ]
+ ]
+ },
+ {
+ "id": "ffd8f42d.6ff66",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5067,
+ "y": 1812,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "70bb8ce1.2b5a7c"
+ ]
+ ]
+ },
+ {
+ "id": "7412d147.be04a8",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5072,
+ "y": 1869,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "407265d3.d9387c"
+ ]
+ ]
+ },
+ {
+ "id": "79f7771a.baa2f",
+ "type": "switchNode",
+ "name": "switch vpn-binding has dst-access-ltp",
+ "xml": "<switch test='`$tmp.aai.vpn-binding.dst-access-ltp-id`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3106,
+ "y": 715,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "6b315a67.2be854",
+ "7ca64a28.96fff4"
+ ]
+ ]
+ },
+ {
+ "id": "6b315a67.2be854",
+ "type": "outcome",
+ "name": "Null",
+ "xml": "<outcome value=''>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3320,
+ "y": 752,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "e26333e1.9f2a38"
+ ]
+ ]
+ },
+ {
+ "id": "7ca64a28.96fff4",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3322,
+ "y": 690,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "89cb81b5.af1468"
+ ]
+ ]
+ },
+ {
+ "id": "e26333e1.9f2a38",
+ "type": "switchNode",
+ "name": "switch vpn-binding has src-access-ltp",
+ "xml": "<switch test='`$tmp.aai.vpn-binding.src-access-ltp-id`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2900,
+ "y": 1995,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "5c3b586f.467af",
+ "6b4dbd17.81909c"
+ ]
+ ]
+ },
+ {
+ "id": "5c3b586f.467af",
+ "type": "outcome",
+ "name": "Null",
+ "xml": "<outcome value=''>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3153,
+ "y": 2029,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "a3ab9951.4bdf08"
+ ]
+ ]
+ },
+ {
+ "id": "6b4dbd17.81909c",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3153,
+ "y": 1973,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "29d8f363.c99594"
+ ]
+ ]
+ },
+ {
+ "id": "a3ab9951.4bdf08",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 3304,
+ "y": 2029,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "c7f2aefb.cead08",
+ "type": "set",
+ "name": "set vpn-bindingA and connectivityA",
+ "xml": "<set>\n<parameter name='tmp.aai.vpn-bindingA.' value=\"`$tmp.aai.vpn-binding.`\" />\n<parameter name='tmp.aai.connectivityA.' value=\"`$tmp.aai.connectivity.`\" />\n",
+ "comments": "",
+ "x": 4180,
+ "y": 127,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "8d65460e.504db8",
+ "type": "set",
+ "name": "set vpn-bindingB and connectivityB",
+ "xml": "<set>\n<parameter name='tmp.aai.vpn-bindingB.' value=\"`$tmp.aai.vpn-binding.`\" />\n<parameter name='tmp.aai.connectivityB.' value=\"`$tmp.aai.connectivity.`\" />\n\n",
+ "comments": "",
+ "x": 3588,
+ "y": 1586,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "3e2a76dd.233f7a",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 3871,
+ "y": 384,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "c7f2aefb.cead08",
+ "acb2a33f.d7ec9",
+ "adcc0fc7.59b628",
+ "36f9f62e.004372",
+ "1a2b69e5.bdb2ae",
+ "7d01ae3.e59e8d",
+ "91a8f363.33b6d",
+ "8c296a00.ae82e8"
+ ]
+ ]
+ },
+ {
+ "id": "29d8f363.c99594",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3304,
+ "y": 1972,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "8d65460e.504db8",
+ "204badf8.a5ba12",
+ "cc294dbc.f351c",
+ "c8227bea.321b5",
+ "4d3bca29.9af50c",
+ "605c7758.9853c8",
+ "d3fdc974.92df9",
+ "52902dc6.5c041c"
+ ]
+ ]
+ },
+ {
+ "id": "59dac694.235a08",
+ "type": "set",
+ "name": "set sotn_value",
+ "xml": "<set>\n<!--<parameter name='eth-service-name' value='`$tmp.aai.connectivityB.connectivity-id`' />-->\n<parameter name='eth-service-name' value='`$tmp.aai.connectivityB.etht-svc-name`' />\n<parameter name='slice-id' value='`$vnf-topology-operation-input.service-information.service-instance-id`' />\n<parameter name='provider-id' value='`$tmp.aai.connectivityB.access-provider-id`' />\n<parameter name='client-id' value='`$tmp.aai.connectivityB.access-client-id`' />\n<parameter name='topology-id' value='`$tmp.aai.connectivityB.access-topology-id`' />\n<parameter name='otn-tunnel-name' value='`$tmp.aai.vpn-bindingB.vpn-name`' />\n<parameter name='ethernet-end-point-name' value='`$tmp.aai.connectivityB.connectivity-id`' />\n<parameter name='index-number' value='0' />\n<parameter name='eth-node-id' value='`$tmp.aai.connectivityB.access-node-id`' />\n<parameter name='eth-node-tp-id' value='`$tmp.aai.connectivityB.access-ltp-id`' />\n<parameter name='CIR' value='`$tmp.aai.vpn-bindingB.route-distinguisher *1000000`' />\n<parameter name='EIR' value='`$tmp.aai.vpn-bindingB.route-distinguisher *1000000`' />\n<parameter name='cvlan' value='`$tmp.aai.connectivityB.cvlan`' />\n\n",
+ "comments": "",
+ "x": 3542,
+ "y": 2271,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "704c6.41b9333ac",
+ "type": "execute",
+ "name": "execute RestApiCallNode Create ethernet Service without token",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.ts-ethernet-service.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainB.url + '/restconf/data/ietf-eth-tran-service:etht-svc'`\" />\n<!--<parameter name=\"restapiUrl\" value=\"`$prop.restapi.connection-oof-url`\" />-->\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainB.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainB.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"patch\"/>\n<parameter name='dirPath' value=\"/opt/onap/sdnc/restconfapi/yang\" />\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.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",
+ "comments": "",
+ "outputs": 1,
+ "x": 3696,
+ "y": 2319,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "5cc2fc76.782a54",
+ "be48f3e2.0fbf"
+ ]
+ ]
+ },
+ {
+ "id": "5cc2fc76.782a54",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4041.5,
+ "y": 2300,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "a76d95f1.d45e1"
+ ]
+ ]
+ },
+ {
+ "id": "be48f3e2.0fbf",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4045.5,
+ "y": 2340,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "1991eff2.b8a15"
+ ]
+ ]
+ },
+ {
+ "id": "a76d95f1.d45e1",
+ "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 ethernet service rest api\" />\n",
+ "comments": "",
+ "x": 4199.5,
+ "y": 2300,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "1991eff2.b8a15",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 4203,
+ "y": 2340,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "69ca6e83.833b58",
+ "1ce7897f.5077ef"
+ ]
+ ]
+ },
+ {
+ "id": "69ca6e83.833b58",
+ "type": "save",
+ "name": "update vpn-binding B resource (aka. OTN domainB) in AAI",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $tmp.aai.vpn-bindingB.vpn-id' >\n<parameter name='vpn-id' value='`$tmp.aai.vpn-bindingB.vpn-id`' />\n<parameter name='vpn-name' value='`$tmp.aai.vpn-bindingB.vpn-name`' />\n\n<parameter name='operational-status' value='Activated' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4543,
+ "y": 2339,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "47268bd4.d29394",
+ "type": "comment",
+ "name": "TODO: FIXME",
+ "info": "use proper vpn-binding id and connectivity\n\nAlso, does CCSDK support \"update\" operation for vpn-binding and connectivity?",
+ "comments": "",
+ "x": 4401,
+ "y": 2297,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "1ce7897f.5077ef",
+ "type": "save",
+ "name": "update connectivity resource in AAI",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \n key='connectivity.connectivity-id = $tmp.aai.connectivityB.connectivity-id'>\n<parameter name='connectivity-id' value='`$tmp.aai.connectivityB.connectivity-id`' />\n<parameter name='operational-status' value='Activated' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4472,
+ "y": 2388,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "adf25f68.f6874",
+ "type": "set",
+ "name": "set attachment_param (gfp-n) for OTN",
+ "xml": "<set>\n<parameter name='gfp-n' value='`$tmp.aai.vpn-binding.route-distinguisher`' />\n",
+ "comments": "",
+ "x": 3097,
+ "y": 655,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "5011571a.f2ffc8",
+ "type": "comment",
+ "name": "only dst ttp exists. No src",
+ "info": "",
+ "comments": "",
+ "x": 3692,
+ "y": 341,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "69454f54.a632a",
+ "type": "comment",
+ "name": "only src ttp exists. No dst",
+ "info": "",
+ "comments": "",
+ "x": 3249,
+ "y": 1919,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "89cb81b5.af1468",
+ "type": "switchNode",
+ "name": "switch vpn-binding has src-access-ltp",
+ "xml": "<switch test='`$tmp.aai.vpn-binding.src-access-ltp-id`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3428,
+ "y": 503,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "89a2367.f810e48",
+ "76abc6c6.50ef4"
+ ]
+ ]
+ },
+ {
+ "id": "76abc6c6.50ef4",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3670,
+ "y": 1092,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "fdc63597.3712e"
+ ]
+ ]
+ },
+ {
+ "id": "89a2367.f810e48",
+ "type": "outcome",
+ "name": "Null",
+ "xml": "<outcome value=''>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3664,
+ "y": 383,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "3e2a76dd.233f7a"
+ ]
+ ]
+ },
+ {
+ "id": "fdc63597.3712e",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3828,
+ "y": 1091,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "1793312b.927ef7",
+ "41401fda.2be158",
+ "9005ec38.4e5e88",
+ "dd0899e7.f82f08",
+ "ecd7f356.de7408",
+ "b3054d0f.9c60c"
+ ]
+ ]
+ },
+ {
+ "id": "41401fda.2be158",
+ "type": "set",
+ "name": "set attachment_param for OTN G",
+ "xml": "<set>\n<parameter name='src-node-id' value='`$tmp.aai.vpn-bindingG.src-access-node-id`' />\n<parameter name='dst-node-id' value='`$tmp.aai.vpn-bindingG.dst-access-node-id`' />\n<!--<parameter name='dst-tpn-id' value='1' />-->\n<parameter name='src-tpn-id' value='`$tmp.aai.vpn-bindingG.customer-vpn-id`' />\n<parameter name='dst-tpn-id' value='`$tmp.aai.vpn-bindingG.customer-vpn-id`' />\n<parameter name='src-ttp-id' value='`$tmp.aai.vpn-bindingG.src-access-ltp-id`' />\n<parameter name='dst-ttp-id' value='`$tmp.aai.vpn-bindingG.dst-access-ltp-id`' />\n<parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n<parameter name='otn-tunnel-name-domainG' value='`$tmp.aai.vpn-bindingG.vpn-name`' />\n<parameter name='client-id' value='`$tmp.aai.vpn-bindingG.access-client-id`' />\n<parameter name='provider-id' value='`$tmp.aai.vpn-bindingG.access-provider-id`' />\n<parameter name='topology-id' value='`$tmp.aai.vpn-bindingG.access-topology-id`' />\n",
+ "comments": "",
+ "x": 4092,
+ "y": 974,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "ecd7f356.de7408",
+ "type": "execute",
+ "name": "execute RestApiCallNode Create OTN tunnel with token",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.cll-otn-domainG-creation.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainG.url + '/restconf/data/ietf-te:te'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainG.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainG.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"patch\"/>\n<parameter name=\"responsePrefix\" value=\"otn-oof\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.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": 4173,
+ "y": 1289,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "e0518882.6fa588",
+ "87218147.0fa418"
+ ]
+ ]
+ },
+ {
+ "id": "e0518882.6fa588",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4482.5,
+ "y": 1258,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "57c63933.072c5"
+ ]
+ ]
+ },
+ {
+ "id": "87218147.0fa418",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4487.5,
+ "y": 1323,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "7dd1782c.b2154"
+ ]
+ ]
+ },
+ {
+ "id": "57c63933.072c5",
+ "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 OTN tunnel rest api\" />\n",
+ "comments": "",
+ "x": 4658.5,
+ "y": 1258,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "7dd1782c.b2154",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 4654,
+ "y": 1323,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "9005ec38.4e5e88",
+ "type": "set",
+ "name": "set pnf-name",
+ "xml": "<set>\n<parameter name='tmp.domainG.pnf-name' value=\"`'networkId-providerId-' +\n $tmp.aai.vpn-bindingG.access-provider-id + '-clientId-' +\n $tmp.aai.vpn-bindingG.access-client-id + '-topologyId-' +\n $tmp.aai.vpn-bindingG.access-topology-id + '-nodeId-' +\n $tmp.aai.vpn-bindingG.src-access-node-id`\" />\n",
+ "comments": "",
+ "x": 4030,
+ "y": 1022,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "dd0899e7.f82f08",
+ "type": "get-resource",
+ "name": "get-resource src pnf",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"pnf\" \n\t\tkey=\"pnf.pnf-name = $tmp.domainG.pnf-name\"\n pfx='tmp.aai.domainG-pnf' local-only='false' >\n\n <!--AND depth = '0'\"-->\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4056,
+ "y": 1139,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "7a284ffa.3cc17",
+ "aa72c818.28213",
+ "f0ca75e3.4407d"
+ ]
+ ]
+ },
+ {
+ "id": "7a284ffa.3cc17",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4251.5001220703125,
+ "y": 1091,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "25701aeb.93625e"
+ ]
+ ]
+ },
+ {
+ "id": "aa72c818.28213",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4243.5001220703125,
+ "y": 1146,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "f502d128.6eafe8"
+ ]
+ ]
+ },
+ {
+ "id": "25701aeb.93625e",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4395.8824462890625,
+ "y": 1090.6556701660156,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "86d32773.3465f8"
+ ]
+ ]
+ },
+ {
+ "id": "86d32773.3465f8",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='spvidx' start='0' end='`$tmp.aai.domainG-pnf.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4580,
+ "y": 1089,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "e526c1c.efff3c"
+ ]
+ ]
+ },
+ {
+ "id": "e526c1c.efff3c",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.domainG-pnf.relationship-list.relationship[$spvidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4775,
+ "y": 1089,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "b3ad7614.48799"
+ ]
+ ]
+ },
+ {
+ "id": "f0ca75e3.4407d",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4248.5001220703125,
+ "y": 1203,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "f3b0b426.0ebd8"
+ ]
+ ]
+ },
+ {
+ "id": "f3b0b426.0ebd8",
+ "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": 4400.5001220703125,
+ "y": 1204,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "f502d128.6eafe8",
+ "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": 4411.5001220703125,
+ "y": 1147,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "1793312b.927ef7",
+ "type": "set",
+ "name": "set vpn-bindingG and connectivityG",
+ "xml": "<set>\n<parameter name='tmp.aai.vpn-bindingG.' value=\"`$tmp.aai.vpn-binding.`\" />\n<parameter name='tmp.aai.connectivityG.' value=\"`$tmp.aai.connectivity.`\" />\n",
+ "comments": "",
+ "x": 4087,
+ "y": 914,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "b3ad7614.48799",
+ "type": "outcome",
+ "name": "esr-thirdparty-sdnc",
+ "xml": "<outcome value='esr-thirdparty-sdnc'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4978,
+ "y": 1093,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "96db10e5.ea83"
+ ]
+ ]
+ },
+ {
+ "id": "306d874d.b412d8",
+ "type": "execute",
+ "name": "get 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.domainG.esr-thirdparty-id AND \n\t\t depth = '1'\"\n pfx='tmp.aai.domainG.esr-thirdparty-sdnc' local-only='false' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 5363,
+ "y": 1106,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "c6eb6256.83f998",
+ "45038891.4f4538",
+ "daa4d789.597db8"
+ ]
+ ]
+ },
+ {
+ "id": "96db10e5.ea83",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 5157,
+ "y": 1093,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "d230885e.9519f8",
+ "306d874d.b412d8"
+ ]
+ ]
+ },
+ {
+ "id": "d230885e.9519f8",
+ "type": "set",
+ "name": "set esr-thirdparty-sdnc domainG id",
+ "xml": "<set>\n<parameter name='tmp.domainG.esr-thirdparty-id' value=\"`$tmp.aai.domainG-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 5393,
+ "y": 1054,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "c6eb6256.83f998",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5573,
+ "y": 1097,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "a3266db3.e5e668"
+ ]
+ ]
+ },
+ {
+ "id": "45038891.4f4538",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5565,
+ "y": 1152,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "c1656fec.754d9"
+ ]
+ ]
+ },
+ {
+ "id": "daa4d789.597db8",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5570,
+ "y": 1209,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "e2730778.5b349"
+ ]
+ ]
+ },
+ {
+ "id": "e2730778.5b349",
+ "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": 5722,
+ "y": 1210,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "c1656fec.754d9",
+ "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": 5733,
+ "y": 1155,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "a3266db3.e5e668",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 5717.38232421875,
+ "y": 1094.6556701660156,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "eeffd7c6.a525f"
+ ]
+ ]
+ },
+ {
+ "id": "eeffd7c6.a525f",
+ "type": "set",
+ "name": "set controller domainG data",
+ "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainG.url' value=\"`$tmp.aai.domainG.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainG.user' value=\"`$tmp.aai.domainG.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainG.password' value=\"`$tmp.aai.domainG.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`\" />\n\n\n<!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->\n<!--<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`\" />-->\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=\"get\"/>-->\n<!--<parameter name=\"responsePrefix\" value=\"topology\"/>-->\n<!--<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.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",
+ "comments": "",
+ "x": 5932,
+ "y": 1091,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "24ea3ba5.00c9cc",
+ "type": "comment",
+ "name": "both src and dst exist",
+ "info": "",
+ "comments": "",
+ "x": 3706,
+ "y": 1032,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "171d3657.f2327a",
+ "type": "switchNode",
+ "name": "switch vpn-binding is not already Activated (i.e. is either Created or Modified)",
+ "xml": "<switch test=\"`$tmp.aai.vpn-binding.operational-status != 'Activated' `\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2268,
+ "y": 759,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "76b248ab.29f1f8",
+ "a2a1c5ad.da7c28"
+ ]
+ ]
+ },
+ {
+ "id": "a2a1c5ad.da7c28",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2675,
+ "y": 777,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "4b53f5cd.6e4a64"
+ ]
+ ]
+ },
+ {
+ "id": "76b248ab.29f1f8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2675,
+ "y": 722,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "ed700187.4c0438"
+ ]
+ ]
+ },
+ {
+ "id": "ed700187.4c0438",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2831,
+ "y": 720,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "adf25f68.f6874",
+ "79f7771a.baa2f"
+ ]
+ ]
+ },
+ {
+ "id": "4b53f5cd.6e4a64",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2808,
+ "y": 778,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "1d423866.3abba8",
+ "type": "set",
+ "name": "unset tmp.aai.all-vpn-bindings",
+ "xml": "<set>\n<parameter name='tmp.aai.all-vpn-bindings.' value=\"\" />\n",
+ "comments": "",
+ "x": 985,
+ "y": 194,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "b7ea63f5.b58c8",
+ "type": "comment",
+ "name": "CLL new",
+ "info": "construct two array structures like these:\n\n${otn-tunnels-name-list[${1}].otn-tunnel-name}\n\n----------------\n${ethernet-srv-end-points-list[${1}].ethernet-end-point-name}\n${ethernet-srv-end-points-list[${1}].index-number},\n${ethernet-srv-end-points-list[${1}].eth-node-id},\n${ethernet-srv-end-points-list[${1}].eth-node-tp-id},\n${ethernet-srv-end-points-list[${1}].leafOrRootAccess}\n${ethernet-srv-end-points-list[${1}].cvlan}\n${ethernet-srv-end-points-list[${1}].CIR}\n${ethernet-srv-end-points-list[${1}].EIR}",
+ "comments": "",
+ "x": 4102,
+ "y": 612,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "7d01ae3.e59e8d",
+ "type": "set",
+ "name": "set leaf-otn-tunnels-list array",
+ "xml": "<set>\n<parameter name='`leaf-tunnels-list[$leaftunsidx].tunnel-name`' value='`$tmp.aai.vpn-binding.vpn-name`' />\n<parameter name='`leaf-tunnels-list[$leaftunsidx].vpn-id`' value='`$tmp.aai.vpn-binding.vpn-id`' />\n<parameter name='`leaf-tunnels-list_length`' value='`$leaftunsidx + 1`' />\n",
+ "comments": "",
+ "x": 4162,
+ "y": 651,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "63268214.354d14",
+ "type": "set",
+ "name": "unset leaf-otn-tunnels-list array",
+ "xml": "<set>\n<parameter name='`leaf-tunnels-list.`' value='' />\n<parameter name='`leaf-tunnels-list_length`' value='0' />\n<parameter name='`leaftunsidx`' value='0' />\n",
+ "comments": "",
+ "x": 978,
+ "y": 102,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "ad2fff57.f164d",
+ "type": "comment",
+ "name": "CLL new",
+ "info": "construct two array structures like these:\n\n${otn-tunnels-name-list[${1}].otn-tunnel-name}\n\n----------------\n${ethernet-srv-end-points-list[${1}].ethernet-end-point-name}\n${ethernet-srv-end-points-list[${1}].index-number},\n${ethernet-srv-end-points-list[${1}].eth-node-id},\n${ethernet-srv-end-points-list[${1}].eth-node-tp-id},\n${ethernet-srv-end-points-list[${1}].leafOrRootAccess}\n${ethernet-srv-end-points-list[${1}].cvlan}\n${ethernet-srv-end-points-list[${1}].CIR}\n${ethernet-srv-end-points-list[${1}].EIR}",
+ "comments": "",
+ "x": 3514,
+ "y": 2128,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "605c7758.9853c8",
+ "type": "set",
+ "name": "set root-otn-tunnels-list array",
+ "xml": "<set>\n<parameter name='`root-tunnels-list[$roottunsidx].tunnel-name`' value='`$tmp.aai.vpn-binding.vpn-name`' />\n<parameter name='`root-tunnels-list[$roottunsidx].vpn-id`' value='`$tmp.aai.vpn-binding.vpn-id`' />\n<parameter name='`root-tunnels-list_length`' value='`$roottunsidx + 1`' />\n",
+ "comments": "",
+ "x": 3570,
+ "y": 2177,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "45ce7d67.6029dc",
+ "type": "set",
+ "name": "unset root-otn-tunnels-list array",
+ "xml": "<set>\n<parameter name='`root-tunnels-list.`' value='' />\n<parameter name='`root-tunnels-list_length`' value='0' />\n<parameter name='`roottunsidx`' value='0' />\n",
+ "comments": "",
+ "x": 978,
+ "y": 141,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "2b86835c.8d9024",
+ "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' />",
+ "comments": "",
+ "outputs": 1,
+ "x": 1009,
+ "y": 242,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "5a6a7d0e.a2f89c",
+ "type": "save",
+ "name": "get service-instance from aai",
+ "xml": "<!--<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" -->\n<!--\tresource=\"service-instance\"-->\n<!--\tkey='service-instance.service-instance-id = $service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.service-instance-id-->\n<!-- AND customer.global-customer-id = $service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.global-customer-id -->\n<!-- AND service-subscription.service-type = $service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.subscription-service-type'-->\n<!--\tlocal-only=\"false\"-->\n<!--\tforce=\"true\" pfx=\"tmp.aai.service-instance\">-->\n\n<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"service-instance\"\n\tkey='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id\n AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id \n AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type'\n\tlocal-only=\"false\"\n\tforce=\"true\" pfx=\"tmp.aai.service-instance\">\n\n\n<!--$vnf-topology-operation-input.service-information.service-instance-id-->",
+ "comments": "",
+ "outputs": 1,
+ "x": 219,
+ "y": 717,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "bd2f8dbe.e61408",
+ "cacc237e.394a4",
+ "f05100c1.a77fd8"
+ ]
+ ]
+ },
+ {
+ "id": "bd2f8dbe.e61408",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 438,
+ "y": 655,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "64d16331.36ee54"
+ ]
+ ]
+ },
+ {
+ "id": "cacc237e.394a4",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 447.490966796875,
+ "y": 697.5740356445312,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "537fe800.387e68"
+ ]
+ ]
+ },
+ {
+ "id": "f05100c1.a77fd8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 436,
+ "y": 744,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "4626cafb.2ab55c"
+ ]
+ ]
+ },
+ {
+ "id": "64d16331.36ee54",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for index='rel-index' start='0' end='`$tmp.aai.service-instance.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 635,
+ "y": 651,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "f0f139f4.8e2a48"
+ ]
+ ]
+ },
+ {
+ "id": "537fe800.387e68",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 601.0623779296875,
+ "y": 700.8597717285156,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "4626cafb.2ab55c",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 605,
+ "y": 745,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "f0f139f4.8e2a48",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.service-instance.relationship-list.relationship[$rel-index].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 858.33349609375,
+ "y": 650.9999389648438,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "2762e6c2.94358a"
+ ]
+ ]
+ },
+ {
+ "id": "2762e6c2.94358a",
+ "type": "outcome",
+ "name": "connectivity",
+ "xml": "<outcome value='connectivity'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1059.0001335144043,
+ "y": 652.000020980835,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "37a60584.767442"
+ ]
+ ]
+ },
+ {
+ "id": "37a60584.767442",
+ "type": "save",
+ "name": "get connectivity from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"connectivity\"\n\t key=\"connectivity.connectivity-id = $tmp.aai.service-instance.relationship-list.relationship[$rel-index].relationship-data[0].relationship-value\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"tmp.aai.connectivity\" >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 189,
+ "y": 914,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "99239678.d76be8",
+ "87a24056.0cfc9",
+ "b29ec635.8a7db"
+ ]
+ ]
+ },
+ {
+ "id": "99239678.d76be8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 397,
+ "y": 878,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "bb3094ff.e3cd78"
+ ]
+ ]
+ },
+ {
+ "id": "87a24056.0cfc9",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 397.490966796875,
+ "y": 923.5740356445312,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "816ef02e.772828"
+ ]
+ ]
+ },
+ {
+ "id": "b29ec635.8a7db",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 395,
+ "y": 967,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "b9990c7b.83fc7"
+ ]
+ ]
+ },
+ {
+ "id": "816ef02e.772828",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 560.0623779296875,
+ "y": 923.8597717285156,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "b9990c7b.83fc7",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 564,
+ "y": 968,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "30524cd6.9ca834",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='cridx' start='0' end='`$tmp.aai.connectivity.relationship-list.relationship_length`' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 534,
+ "y": 1474,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "b7324e21.fe4538"
+ ]
+ ]
+ },
+ {
+ "id": "b7324e21.fe4538",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.connectivity.relationship-list.relationship[$cridx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 739,
+ "y": 1474,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "fd6dca36.4f2ef"
+ ]
+ ]
+ },
+ {
+ "id": "fd6dca36.4f2ef",
+ "type": "outcome",
+ "name": "UNI",
+ "xml": "<outcome value='uni'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 905,
+ "y": 1471,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "14e5640a.2c60e4"
+ ]
+ ]
+ },
+ {
+ "id": "14e5640a.2c60e4",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1066,
+ "y": 1468,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "a961c0c2.954588",
+ "bfc93479.bb02c8",
+ "ea108501.b7cec8",
+ "9c9a6caf.c302e",
+ "520b6d65.f95b0c"
+ ]
+ ]
+ },
+ {
+ "id": "bfc93479.bb02c8",
+ "type": "set",
+ "name": "unset tmp.aai.uni",
+ "xml": "<set>\n<parameter name='tmp.aai.uni.' value='' />\n",
+ "comments": "",
+ "x": 1270,
+ "y": 1426,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "a961c0c2.954588",
+ "type": "save",
+ "name": "get uni from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"uni\"\n\t key=\"uni.id = $tmp.aai.connectivity.relationship-list.relationship[$cridx].relationship-data[0].relationship-value\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"tmp.aai.uni\" >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1267,
+ "y": 1471,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "ae34427.3665d4",
+ "2e0f53f9.af66fc",
+ "e67056c5.33255"
+ ]
+ ]
+ },
+ {
+ "id": "2e0f53f9.af66fc",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1462.490966796875,
+ "y": 1444.573974609375,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "c471a2c5.a52548"
+ ]
+ ]
+ },
+ {
+ "id": "e67056c5.33255",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1458,
+ "y": 1488.9999389648438,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "ff2d9a38.ef94a"
+ ]
+ ]
+ },
+ {
+ "id": "c471a2c5.a52548",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 1625.0625,
+ "y": 1443.8596801757812,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "ff2d9a38.ef94a",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 1626,
+ "y": 1488.9999389648438,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "de28fbd6.aeb6d8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1628,
+ "y": 1535.9999389648438,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "ae34427.3665d4",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1459,
+ "y": 1535.9999389648438,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "de28fbd6.aeb6d8"
+ ]
+ ]
+ },
+ {
+ "id": "30e36623.144df2",
+ "type": "switchNode",
+ "name": "switch conn type",
+ "xml": "<switch test=\"`$tmp.aai.connectivity.vpn-type`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 148.5,
+ "y": 1133,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "f6f4ecca.51b1b8",
+ "c489f9fc.e5ffb8",
+ "a9b0c19e.2c84b8"
+ ]
+ ]
+ },
+ {
+ "id": "3438a7d7.53b84",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 278.5,
+ "y": 1491,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "f6f4ecca.51b1b8",
+ "type": "outcome",
+ "name": "leaf",
+ "xml": "<outcome value='leaf'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 134.5,
+ "y": 1379,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "96322198.44279"
+ ]
+ ]
+ },
+ {
+ "id": "c489f9fc.e5ffb8",
+ "type": "outcome",
+ "name": "root",
+ "xml": "<outcome value='root'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 135.5,
+ "y": 1437,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "398da5.544e025c"
+ ]
+ ]
+ },
+ {
+ "id": "a9b0c19e.2c84b8",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 137.5,
+ "y": 1491,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "3438a7d7.53b84"
+ ]
+ ]
+ },
+ {
+ "id": "e5287808.34bdc8",
+ "type": "comment",
+ "name": "CLL new",
+ "info": "construct two array structures like these:\n\n${otn-tunnels-name-list[${1}].otn-tunnel-name}\n\n----------------\n${ethernet-srv-end-points-list[${1}].ethernet-end-point-name}\n${ethernet-srv-end-points-list[${1}].index-number},\n${ethernet-srv-end-points-list[${1}].eth-node-id},\n${ethernet-srv-end-points-list[${1}].eth-node-tp-id},\n${ethernet-srv-end-points-list[${1}].leafOrRootAccess}\n${ethernet-srv-end-points-list[${1}].cvlan}\n${ethernet-srv-end-points-list[${1}].CIR}\n${ethernet-srv-end-points-list[${1}].EIR}",
+ "comments": "",
+ "x": 1243,
+ "y": 1699,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "ea108501.b7cec8",
+ "type": "set",
+ "name": "set ethernet-srv-end-points-list array",
+ "xml": "<set>\n<parameter name='`ethernet-srv-end-points-list[$epidx].ethernet-end-point-name`' value='`$tmp.aai.connectivity.connectivity-id`' />\n<parameter name='`ethernet-srv-end-points-list[$epidx].index-number`' value='0' />\n<parameter name='`ethernet-srv-end-points-list[$epidx].eth-node-id`' value='`$tmp.uni-node-id-short`' />\n<parameter name='`ethernet-srv-end-points-list[$epidx].eth-node-tp-id`' value='`$tmp.aai.uni.tp-id`' />\n<parameter name='`ethernet-srv-end-points-list[$epidx].leafOrRootAccess`' value='`$leafOrRootAccess`' />\n<parameter name='`ethernet-srv-end-points-list[$epidx].cvlan`' value='`$tmp.aai.connectivity.cvlan`' />\n<parameter name='`ethernet-srv-end-points-list[$epidx].CIR`' value='`$tmp.aai.connectivity.cir`' />\n<parameter name='`ethernet-srv-end-points-list[$epidx].EIR`' value='`$tmp.aai.connectivity.eir`' />\n\n<parameter name='`ethernet-srv-end-points-list_length`' value='`$epidx + 1`' />\n",
+ "comments": "",
+ "x": 1334,
+ "y": 1753,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "398da5.544e025c",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 277.5,
+ "y": 1437,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "f5ac679b.0c3448",
+ "30524cd6.9ca834",
+ "4bb59d5e.d5f6bc",
+ "c1ca24e2.0ded08",
+ "f1761a56.ef5438",
+ "6a3c09b5.9a3f5",
+ "62e9a9e6.6ea9a8",
+ "94499eb7.5f7bf8",
+ "24306e49.ece4e2",
+ "527621da.e42f6",
+ "f1193850.b7d1f"
+ ]
+ ]
+ },
+ {
+ "id": "96322198.44279",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 276.5,
+ "y": 1379,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "30524cd6.9ca834",
+ "4806b9e7.4221c",
+ "4f3ecf27.4c11b",
+ "c1ca24e2.0ded08",
+ "f1761a56.ef5438",
+ "6a3c09b5.9a3f5",
+ "62e9a9e6.6ea9a8",
+ "94499eb7.5f7bf8",
+ "24306e49.ece4e2",
+ "527621da.e42f6",
+ "f1193850.b7d1f"
+ ]
+ ]
+ },
+ {
+ "id": "4806b9e7.4221c",
+ "type": "set",
+ "name": "unset ethernet-srv-end-points-list",
+ "xml": "<set>\n<parameter name='`ethernet-srv-end-points-list.`' value='' />\n<parameter name='`ethernet-srv-end-points-list_length`' value='0' />\n<parameter name='`epidx`' value='0' />",
+ "comments": "",
+ "x": 555.5,
+ "y": 1255,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "f5ac679b.0c3448",
+ "type": "set",
+ "name": "unset ethernet-srv-end-points-list",
+ "xml": "<set>\n<parameter name='`ethernet-srv-end-points-list.`' value='' />\n<parameter name='`ethernet-srv-end-points-list_length`' value='0' />\n<parameter name='`epidx`' value='0' />",
+ "comments": "",
+ "x": 572.5,
+ "y": 1349,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "c1ca24e2.0ded08",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='cridx' start='0' end='`$tmp.aai.connectivity.relationship-list.relationship_length`' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 479,
+ "y": 1714,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "835a7483.88e81"
+ ]
+ ]
+ },
+ {
+ "id": "835a7483.88e81",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.connectivity.relationship-list.relationship[$cridx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 731,
+ "y": 1717,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "51c29716.e56f9"
+ ]
+ ]
+ },
+ {
+ "id": "51c29716.e56f9",
+ "type": "outcome",
+ "name": "vpn-binding",
+ "xml": "<outcome value='vpn-binding'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 943,
+ "y": 1718,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "ed212632.132b88"
+ ]
+ ]
+ },
+ {
+ "id": "ed212632.132b88",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 199,
+ "y": 1874,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "56f85a0e.adc1bc",
+ "4a52a34d.b3a154"
+ ]
+ ]
+ },
+ {
+ "id": "4a52a34d.b3a154",
+ "type": "set",
+ "name": "unset tmp.aai.vpn-binding",
+ "xml": "<set>\n<parameter name='tmp.aai.vpn-binding.' value='' />\n",
+ "comments": "",
+ "x": 434,
+ "y": 1861,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "56f85a0e.adc1bc",
+ "type": "save",
+ "name": "get vpn-binding from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"vpn-binding\"\n\t key=\"vpn-binding.vpn-id = $tmp.aai.connectivity.relationship-list.relationship[$cridx].relationship-data[0].relationship-value\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"tmp.aai.vpn-binding\" >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 424,
+ "y": 1922,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "29bd05cb.6887aa",
+ "769c56b6.046928",
+ "2ae22544.9de39a"
+ ]
+ ]
+ },
+ {
+ "id": "769c56b6.046928",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 637.490966796875,
+ "y": 1906.5740356445312,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "9a05194a.a2cf9"
+ ]
+ ]
+ },
+ {
+ "id": "2ae22544.9de39a",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 633,
+ "y": 1951,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "55ecc37f.47d76c"
+ ]
+ ]
+ },
+ {
+ "id": "29bd05cb.6887aa",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 635,
+ "y": 2011,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "d6336d05.5f3c98"
+ ]
+ ]
+ },
+ {
+ "id": "9a05194a.a2cf9",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 800.0625,
+ "y": 1905.8597412109375,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "55ecc37f.47d76c",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 801,
+ "y": 1951,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "d6336d05.5f3c98",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 804,
+ "y": 2010,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "84a52064.39d0f",
+ "fd245192.c0f68"
+ ]
+ ]
+ },
+ {
+ "id": "62e9a9e6.6ea9a8",
+ "type": "set",
+ "name": "set sotn_value",
+ "xml": "<set>\n<!--<parameter name='eth-service-name' value='`$tmp.aai.connectivityA.connectivity-id`' />-->\n<parameter name='eth-service-name' value='`$tmp.aai.connectivity.etht-svc-name`' />\n<parameter name='slice-id' value='`$vnf-topology-operation-input.service-information.service-instance-id`' />\n<parameter name='provider-id' value='`$tmp.aai.connectivity.access-provider-id`' />\n<parameter name='client-id' value='`$tmp.aai.connectivity.access-client-id`' />\n<parameter name='topology-id' value='`$tmp.aai.connectivity.access-topology-id`' />\n<!--<parameter name='otn-tunnel-name' value='`$tmp.aai.vpn-bindingA.vpn-name`' />-->\n<!--<parameter name='ethernet-end-point-name' value='`$tmp.aai.connectivityA.connectivity-id`' />-->\n<!--<parameter name='index-number' value='0' />-->\n<!--<parameter name='eth-node-id' value='`$tmp.aai.connectivityA.access-node-id`' />-->\n<!--<parameter name='eth-node-tp-id' value='`$tmp.aai.connectivityA.access-ltp-id`' />-->\n<!--<parameter name='CIR' value='`$tmp.aai.vpn-bindingA.route-distinguisher *1000000`' />-->\n<!--<parameter name='EIR' value='`$tmp.aai.vpn-bindingA.route-distinguisher *1000000`' />-->\n<!--<parameter name='cvlan' value='`$tmp.aai.connectivityA.cvlan`' />-->\n",
+ "comments": "",
+ "x": 213,
+ "y": 2153,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "94499eb7.5f7bf8",
+ "type": "execute",
+ "name": "execute RestApiCallNode Create ethernet Service without token",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.cll-ethernet-service-loop.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainA.url + '/restconf/data/ietf-eth-tran-service:etht-svc'`\" />\n<!--<parameter name=\"restapiUrl\" value=\"`$prop.restapi.connection-oof-url`\" />-->\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainA.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainA.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"patch\"/>\n<parameter name='dirPath' value=\"/opt/onap/sdnc/restconfapi/yang\" />\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.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",
+ "comments": "",
+ "outputs": 1,
+ "x": 369,
+ "y": 2201,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "a73a5a95.120de",
+ "bca2a5aa.f6cc3"
+ ]
+ ]
+ },
+ {
+ "id": "a73a5a95.120de",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 681.5,
+ "y": 2178,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "bca2a5aa.f6cc3",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 685.5,
+ "y": 2218,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "10f6c019.f86f7"
+ ]
+ ]
+ },
+ {
+ "id": "60ee3bcb.03ac64",
+ "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 ethernet service rest api\" />\n",
+ "comments": "",
+ "x": 861.5,
+ "y": 2182,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "10f6c019.f86f7",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 877,
+ "y": 2236,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "67f0aa7d.43690c"
+ ]
+ ]
+ },
+ {
+ "id": "ca5ee847.cad2",
+ "type": "save",
+ "name": "update vpn-binding resource (aka. OTN ) in AAI",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $tmp.aai.vpn-binding.vpn-id' >\n<parameter name='vpn-id' value='`$tmp.aai.vpn-binding.vpn-id`' />\n<parameter name='vpn-name' value='`$tmp.aai.vpn-binding.vpn-name`' />\n\n<parameter name='operational-status' value='Activated' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1172.5,
+ "y": 2205,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "c6e95b64.3418d8",
+ "type": "comment",
+ "name": "TODO: FIXME",
+ "info": "use proper vpn-binding id and connectivity id\n\nAlso, does CCSDK support \"update\" operation for vpn-binding and connectivity?",
+ "comments": "",
+ "x": 2616.5,
+ "y": 1924,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "67f0aa7d.43690c",
+ "type": "save",
+ "name": "update connectivity resource in AAI",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \n key='connectivity.connectivity-id = $tmp.aai.connectivity.connectivity-id'>\n<parameter name='connectivity-id' value='`$tmp.aai.connectivity.connectivity-id`' />\n<parameter name='operational-status' value='Activated' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1134.5,
+ "y": 2247,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "4f3ecf27.4c11b",
+ "type": "set",
+ "name": "set leafOrRootAccess",
+ "xml": "<set>\n<parameter name='`leafOrRootAccess`' value='ietf-eth-tran-types:leaf-access' />\n",
+ "comments": "",
+ "x": 521.5,
+ "y": 1293,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "4bb59d5e.d5f6bc",
+ "type": "set",
+ "name": "set leafOrRootAccess",
+ "xml": "<set>\n<parameter name='`leafOrRootAccess`' value='ietf-eth-tran-types:root-primary' />\n",
+ "comments": "",
+ "x": 534.5,
+ "y": 1389,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "91a8f363.33b6d",
+ "type": "save",
+ "name": "update vpn-binding A resource (aka. OTN domainA) in AAI",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $tmp.aai.vpn-bindingA.vpn-id' >\n<parameter name='vpn-id' value='`$tmp.aai.vpn-bindingA.vpn-id`' />\n<parameter name='vpn-name' value='`$tmp.aai.vpn-bindingA.vpn-name`' />\n\n<parameter name='operational-status' value='Activated' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4271,
+ "y": 565,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "b3054d0f.9c60c",
+ "type": "save",
+ "name": "update vpn-binding G resource (aka. OTN domainA) in AAI",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $tmp.aai.vpn-bindingG.vpn-id' >\n<parameter name='vpn-id' value='`$tmp.aai.vpn-bindingG.vpn-id`' />\n<parameter name='vpn-name' value='`$tmp.aai.vpn-bindingG.vpn-name`' />\n\n<parameter name='operational-status' value='Activated' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4174,
+ "y": 1384,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "d3fdc974.92df9",
+ "type": "save",
+ "name": "update vpn-binding B resource (aka. OTN domainB) in AAI",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $tmp.aai.vpn-bindingB.vpn-id' >\n<parameter name='vpn-id' value='`$tmp.aai.vpn-bindingB.vpn-id`' />\n<parameter name='vpn-name' value='`$tmp.aai.vpn-bindingB.vpn-name`' />\n\n<parameter name='operational-status' value='Activated' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3668,
+ "y": 2056,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "bb3094ff.e3cd78",
+ "type": "switchNode",
+ "name": "switch connectivity is not already Activated (i.e. is either Created or Modified)",
+ "xml": "<switch test=\"`$tmp.aai.connectivity.operational-status != 'Activated' `\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 769,
+ "y": 864,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "282392e2.d6f746",
+ "f0518341.6afb1"
+ ]
+ ]
+ },
+ {
+ "id": "282392e2.d6f746",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1132,
+ "y": 887,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "77c0bd36.331cac"
+ ]
+ ]
+ },
+ {
+ "id": "f0518341.6afb1",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1132,
+ "y": 836,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "e54c87c8.43eeb8"
+ ]
+ ]
+ },
+ {
+ "id": "77c0bd36.331cac",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1288,
+ "y": 885,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "30e36623.144df2"
+ ]
+ ]
+ },
+ {
+ "id": "e54c87c8.43eeb8",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1265,
+ "y": 837,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "e9e324cf.d34fa8",
+ "type": "set",
+ "name": "unset tmp.aai.vpn-binding",
+ "xml": "<set>\n<parameter name='tmp.aai.vpn-binding.' value=\"\" />\n",
+ "comments": "",
+ "x": 2025,
+ "y": 235,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "52902dc6.5c041c",
+ "type": "set",
+ "name": "set root-otn-tunnels-list array",
+ "xml": "<set>\n<parameter name='`roottunsidx`' value='`$roottunsidx + 1`' />\n",
+ "comments": "",
+ "x": 3567,
+ "y": 2216,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "8c296a00.ae82e8",
+ "type": "set",
+ "name": "set leaf-otn-tunnels-list array",
+ "xml": "<set>\n<parameter name='`leaftunsidx`' value='`$leaftunsidx + 1`' />\n",
+ "comments": "",
+ "x": 4157,
+ "y": 689,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "9c9a6caf.c302e",
+ "type": "set",
+ "name": "set ethernet-srv-end-points-list array",
+ "xml": "<set>\n<parameter name='`epidx`' value='`$epidx + 1`' />\n",
+ "comments": "",
+ "x": 1331,
+ "y": 1795,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "f1761a56.ef5438",
+ "type": "set",
+ "name": "set filename",
+ "xml": "<set>\n<parameter name='filenameclleths' value=\"`$leafOrRootAccess + $tmp.aai.connectivity.access-node-id`\" />",
+ "comments": "",
+ "x": 510,
+ "y": 1529,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "6a3c09b5.9a3f5",
+ "type": "execute",
+ "name": "execute printContext",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\n <parameter name=\"filename\" value=\"`$filenameclleths`\" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 541,
+ "y": 1569,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "84a52064.39d0f",
+ "type": "set",
+ "name": "set otn-tunnels-name-list array",
+ "xml": "<set>\n<parameter name='`otn-tunnels-name-list[$otntunsidx].otn-tunnel-name`' value='`$tmp.aai.vpn-binding.vpn-name`' />\n<parameter name='`otn-tunnels-name-list[$otntunsidx].vpn-id`' value='`$tmp.aai.vpn-binding.vpn-id`' />\n<parameter name='`otn-tunnels-name-list_length`' value='`$otntunsidx + 1`' />\n",
+ "comments": "",
+ "x": 1089,
+ "y": 1977,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "fd245192.c0f68",
+ "type": "set",
+ "name": "set otn-tunnels-name-list array",
+ "xml": "<set>\n<parameter name='`otntunsidx`' value='`$otntunsidx + 1`' />\n",
+ "comments": "",
+ "x": 1092,
+ "y": 2019,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "24306e49.ece4e2",
+ "type": "set",
+ "name": "unset otn-tunnels-name-list array",
+ "xml": "<set>\n<parameter name='`otn-tunnels-name-list.`' value='' />\n<parameter name='`otn-tunnels-name-list_length`' value='0' />\n<parameter name='`otntunsidx`' value='0' />\n",
+ "comments": "",
+ "x": 516,
+ "y": 1663,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "527621da.e42f6",
+ "type": "set",
+ "name": "set filename",
+ "xml": "<set>\n<parameter name='filenamecllotns' value=\"`leafrootOTNtunnelnames`\" />",
+ "comments": "",
+ "x": 290,
+ "y": 2038,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "f1193850.b7d1f",
+ "type": "execute",
+ "name": "execute printContext",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\n <parameter name=\"filename\" value=\"`$filenamecllotns`\" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 298,
+ "y": 2095,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "520b6d65.f95b0c",
+ "type": "execute",
+ "name": "execute split tp-id to get pnf-name",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$tmp.aai.uni.id`'/>\n<!--<parameter name=\"regex\" value=\"[^-]+$\"/>-->\n<parameter name=\"regex\" value=\"[-]+\"/>\n<parameter name=\"ctx_memory_result_key\" value=\"param-prefix-uni\"/>\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1309,
+ "y": 1644,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "19e13e29.006812",
+ "9d0e6726.e149c8"
+ ]
+ ]
+ },
+ {
+ "id": "9d0e6726.e149c8",
+ "type": "failure",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1532,
+ "y": 1599,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "2d20dd4b.751b72"
+ ]
+ ]
+ },
+ {
+ "id": "19e13e29.006812",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1534,
+ "y": 1663,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "1dc48abe.a6b4ad"
+ ]
+ ]
+ },
+ {
+ "id": "2d20dd4b.751b72",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1697,
+ "y": 1596,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": [
+ [
+ "c6b49f04.8bee18"
+ ]
+ ]
+ },
+ {
+ "id": "1dc48abe.a6b4ad",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while splitting sna1_route\" />\n",
+ "comments": "",
+ "x": 1696,
+ "y": 1659,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ },
+ {
+ "id": "c6b49f04.8bee18",
+ "type": "set",
+ "name": "set tmp.uni-node-id-short",
+ "xml": "<set>\n<parameter name='tmp.uni-node-id-short' value='`$param-prefix-uni[$param-prefix-uni_length -3]`' />\n",
+ "comments": "",
+ "x": 1917,
+ "y": 1610,
+ "z": "bbeb6c6b.9e8ac8",
+ "wires": []
+ }
+] \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1.json b/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1.json
new file mode 100644
index 00000000..376401b0
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1.json
@@ -0,0 +1,2796 @@
+[
+ {
+ "id": "917062ba.849008",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 218,
+ "y": 53,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "1c89f912.b4a1a7"
+ ]
+ ]
+ },
+ {
+ "id": "1c89f912.b4a1a7",
+ "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": 502.2856903076172,
+ "y": 114.23810863494873,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "79c37e31.b46698"
+ ]
+ ]
+ },
+ {
+ "id": "79c37e31.b46698",
+ "type": "method",
+ "name": "method cll-vnf-topology-operation-cll-F1",
+ "xml": "<method rpc='cll-vnf-topology-operation-cll-F1' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 418.4285888671875,
+ "y": 192.00003051757812,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "e40aa944.361218"
+ ]
+ ]
+ },
+ {
+ "id": "e40aa944.361218",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 152.238037109375,
+ "y": 695.6666870117188,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "91449a53.15abc8",
+ "52206559.265cbc",
+ "dc5388ea.7452c",
+ "cd1cf50b.3447d",
+ "36cc6c32.a7a5bc",
+ "ef8123f7.a43b88",
+ "349f069b.2d098a"
+ ]
+ ]
+ },
+ {
+ "id": "91449a53.15abc8",
+ "type": "set",
+ "name": "set query_param",
+ "xml": "<set>\n<parameter name='prop.ethsrvType' value='`$network-route-A`' />\n\n",
+ "comments": "",
+ "x": 425,
+ "y": 650,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "52206559.265cbc",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:tsli-vnf-topology-operation-get-otn-tunnel-path-from-oof",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='tsli-vnf-topology-operation-get-otn-tunnel-path-from-oof' mode='sync' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 646,
+ "y": 718,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "dc5388ea.7452c",
+ "type": "execute",
+ "name": "execute printContext",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\n <parameter name=\"filename\" value=\"`$filenamemm`\" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 436,
+ "y": 764,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "349f069b.2d098a",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:cll-vnf-topology-operation-find-maximum-used-tpn",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-find-maximum-used-tpn' mode='sync' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 629,
+ "y": 828,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "cd1cf50b.3447d",
+ "type": "for",
+ "name": "for vidx..tmp.otninfo_length[]",
+ "xml": "<for index='otnidx' start='0' end='`$tmp.otninfo_length`' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 456,
+ "y": 984,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "4719cb7a.a9766c"
+ ]
+ ]
+ },
+ {
+ "id": "4719cb7a.a9766c",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 725,
+ "y": 984,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "ffc8e265.c8aca8",
+ "13f1d395.eb898c",
+ "b91b98db.dabfa",
+ "66797943.9e353",
+ "c2e19c98.abbc4",
+ "11040b46.8e035d",
+ "130409d7.ba1cfe",
+ "3e17d72f.d352d",
+ "1ea79a81.da9f1d",
+ "f0ca8ca2.d5c31"
+ ]
+ ]
+ },
+ {
+ "id": "ffc8e265.c8aca8",
+ "type": "execute",
+ "name": "execute UUID generator for vpn-binding $otnidx",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.vpn-binding-otnidx-uuid\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1618,
+ "y": 798,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "13f1d395.eb898c",
+ "type": "switchNode",
+ "name": "switch dstPort == NULL",
+ "xml": "<switch test=\"`$tmp.otninfo[$otnidx].dstPort.dst-access-provider-id == ''`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1332,
+ "y": 888,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "467187d6.5cb93",
+ "dac264a6.6c03c8"
+ ]
+ ]
+ },
+ {
+ "id": "467187d6.5cb93",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1698,
+ "y": 849,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "6cf7a6e6.d655a8"
+ ]
+ ]
+ },
+ {
+ "id": "dac264a6.6c03c8",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1699,
+ "y": 895,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "5ca74bf6.9d33ac"
+ ]
+ ]
+ },
+ {
+ "id": "6cf7a6e6.d655a8",
+ "type": "set",
+ "name": "set access-provider-id and client-id",
+ "xml": "<set>\n<parameter name='tmp.access-provider-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-provider-id`' />\n<parameter name='tmp.access-client-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-client-id`' />\n<parameter name='tmp.access-topology-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-topology-id`' />\n<parameter name='tmp.srcdstpnf-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-node-id`' />\n",
+ "comments": "",
+ "x": 1912,
+ "y": 848,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "5ca74bf6.9d33ac",
+ "type": "set",
+ "name": "set access-provider-id and client-id",
+ "xml": "<set>\n<parameter name='tmp.access-provider-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-provider-id`' />\n<parameter name='tmp.access-client-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-client-id`' />\n<parameter name='tmp.access-topology-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-topology-id`' />\n<parameter name='tmp.srcdstpnf-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-node-id`' />\n",
+ "comments": "",
+ "x": 1910,
+ "y": 893,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "b91b98db.dabfa",
+ "type": "set",
+ "name": "set srcdstpnf-name",
+ "xml": "<set>\n<parameter name='tmp.srcdstpnf-name' value=\"`'networkId-providerId-' + \n $tmp.access-provider-id + '-clientId-' +\n $tmp.access-client-id + '-topologyId-' + \n $tmp.access-topology-id + '-nodeId-' + \n $tmp.srcdstpnf-id`\" />\n\n",
+ "comments": "",
+ "x": 1508,
+ "y": 962,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "66797943.9e353",
+ "type": "get-resource",
+ "name": "get-resource tmp.srcdstpnf-name",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"pnf\" \n\t\tkey=\"pnf.pnf-name = $tmp.srcdstpnf-name\"\n pfx='tmp.aai.srcdst-pnf' local-only='false' >\n\n <!--AND depth = '0'\"-->\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1552,
+ "y": 1010,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "2fed2218.d10326",
+ "6a522d09.043e1c",
+ "4f95b3dd.ef9534"
+ ]
+ ]
+ },
+ {
+ "id": "2fed2218.d10326",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1764.5,
+ "y": 957,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "66f51b5e.6158fc"
+ ]
+ ]
+ },
+ {
+ "id": "6a522d09.043e1c",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1776.5,
+ "y": 1007,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "8e681ebe.696e48"
+ ]
+ ]
+ },
+ {
+ "id": "4f95b3dd.ef9534",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1767.5,
+ "y": 1062,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "6977d582.14091c"
+ ]
+ ]
+ },
+ {
+ "id": "6977d582.14091c",
+ "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": 1912.5,
+ "y": 1061,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "8e681ebe.696e48",
+ "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": 1923.5,
+ "y": 1004,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "66f51b5e.6158fc",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1889.8824462890625,
+ "y": 950.6556701660156,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "3a1d3f10.5d9028"
+ ]
+ ]
+ },
+ {
+ "id": "3a1d3f10.5d9028",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='spvidx' start='0' end='`$tmp.aai.srcdst-pnf.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2051,
+ "y": 965,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "c1512230.2580e"
+ ]
+ ]
+ },
+ {
+ "id": "c1512230.2580e",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.srcdst-pnf.relationship-list.relationship[$spvidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2246,
+ "y": 965,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "b1b8c338.420ea"
+ ]
+ ]
+ },
+ {
+ "id": "fd7930d3.be8638",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2626,
+ "y": 961,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "ac1612ad.b61828",
+ "27939c6a.4866bc"
+ ]
+ ]
+ },
+ {
+ "id": "27939c6a.4866bc",
+ "type": "execute",
+ "name": "get 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.domainG.esr-thirdparty-id AND \n\t\t depth = '1'\"\n pfx='tmp.aai.domainG.esr-thirdparty-sdnc' local-only='false' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 2834,
+ "y": 968,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "b52d7285.57757",
+ "3657321a.c3ba86",
+ "c044af78.310578"
+ ]
+ ]
+ },
+ {
+ "id": "ac1612ad.b61828",
+ "type": "set",
+ "name": "set esr-thirdparty-sdnc domainG id",
+ "xml": "<set>\n<parameter name='tmp.domainG.esr-thirdparty-id' value=\"`$tmp.aai.srcdst-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 2864,
+ "y": 916,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "b52d7285.57757",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3044,
+ "y": 959,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "cbaaba15.349bc8"
+ ]
+ ]
+ },
+ {
+ "id": "3657321a.c3ba86",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3036,
+ "y": 1014,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "f52e6392.eb1be8"
+ ]
+ ]
+ },
+ {
+ "id": "c044af78.310578",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3041,
+ "y": 1071,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "7b6a4d1e.bd1e74"
+ ]
+ ]
+ },
+ {
+ "id": "7b6a4d1e.bd1e74",
+ "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": 3193,
+ "y": 1072,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "f52e6392.eb1be8",
+ "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": 3204,
+ "y": 1017,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "cbaaba15.349bc8",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 3188.38232421875,
+ "y": 956.6556701660156,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "37241585.bf56ba"
+ ]
+ ]
+ },
+ {
+ "id": "b1b8c338.420ea",
+ "type": "outcome",
+ "name": "esr-thirdparty-sdnc",
+ "xml": "<outcome value='esr-thirdparty-sdnc'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2449,
+ "y": 969,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "fd7930d3.be8638"
+ ]
+ ]
+ },
+ {
+ "id": "37241585.bf56ba",
+ "type": "set",
+ "name": "set controller domainA data",
+ "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainG.url' value=\"`$tmp.aai.domainG.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainG.user' value=\"`$tmp.aai.domainG.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainG.password' value=\"`$tmp.aai.domainG.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`\" />\n\n\n<!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->\n<!--<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`\" />-->\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=\"get\"/>-->\n<!--<parameter name=\"responsePrefix\" value=\"topology\"/>-->\n<!--<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.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",
+ "comments": "",
+ "x": 3403,
+ "y": 953,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "5bdba13b.1ae3d",
+ "type": "save",
+ "name": "save vpn-binding otnIdx resource (aka. OTN) in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $prop.vpn-binding-otnidx-uuid' >\n<parameter name='vpn-id' value='`$prop.vpn-binding-otnidx-uuid`' />\n<parameter name='vpn-name' value='`$prop.otn-tunnel-name`' />\n<!--<parameter name='customer-vpn-id' value='`($idx + 1) * 10`' />-->\n<parameter name='customer-vpn-id' value='`($maxtpn + $gfp)`' />\n<!--<parameter name='access-provider-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-provider-id`' />-->\n<parameter name='access-provider-id' value='`$tmp.access-provider-id`' />\n<!--<parameter name='access-client-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-client-id`' />-->\n<parameter name='access-client-id' value='`$tmp.access-client-id`' />\n<!--<parameter name='access-topology-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-topology-id`' />-->\n<parameter name='access-topology-id' value='`$tmp.access-topology-id`' />\n<!--<parameter name='src-access-node-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-node-id`' />-->\n<parameter name='src-access-node-id' value='`$tmp.domainG-src-access-node-id`' />\n<parameter name='src-access-ltp-id' value='`$tmp.otninfo[$otnidx].srcPort.src-tunnel-tp-id`' />\n<!--<parameter name='dst-access-node-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-node-id`' />-->\n<parameter name='dst-access-node-id' value='`$tmp.domainG-dst-access-node-id`' />\n<parameter name='dst-access-ltp-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-tunnel-tp-id`' />\n<parameter name='route-distinguisher' value='`$gfp`' />\n<parameter name='operational-status' value='Created' />\n<parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />\n\n\n<parameter name='vpn-region' value='`$prop.sdncRestApi.thirdpartySdnc.domainG.url`' />\n<parameter name='vpn-description' value='`$prop.sdncRestApi.thirdpartySdnc.domainG.user`' />\n<parameter name='vpn-platform' value='`$prop.sdncRestApi.thirdpartySdnc.domainG.password`' />\n\n<!-- The following line is in lieu of vpn-binding.slice-id (new attribute in latest AAI) -->\n<!--<parameter name='ops-note' value='`$tmp.aai.service-instance.service-instance-id`' />-->\n<parameter name='slice-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n<parameter name='ops-note' value='`$tmp.srcTtpOtnLayer`' />\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1562,
+ "y": 2859,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "2982a228.f40e1e"
+ ]
+ ]
+ },
+ {
+ "id": "e79aedfa.249",
+ "type": "save",
+ "name": "save connectivity-A relationship to vpn-binding-A, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding:relationship-list' \n key='vpn-binding.vpn-id = $prop.vpn-binding-otnidx-uuid' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $uuid.connectivity-domainA-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$uuid.connectivity-domainA-uuid`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 2134.5,
+ "y": 2963,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "2982a228.f40e1e",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1868,
+ "y": 2858,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "3d256a26.ef6a26"
+ ]
+ ]
+ },
+ {
+ "id": "3d256a26.ef6a26",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2077.5,
+ "y": 2858.25390625,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "7e7c0247.8ba9f4",
+ "type": "switchNode",
+ "name": "switch otnidx == 0",
+ "xml": "<switch test='`$otnidx == 0`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1471,
+ "y": 2976,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "2d5f380b.a9d4d8",
+ "4f3979ad.4a4e48"
+ ]
+ ]
+ },
+ {
+ "id": "2d5f380b.a9d4d8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1654,
+ "y": 2976,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "ffef74e0.d4b7c"
+ ]
+ ]
+ },
+ {
+ "id": "4f3979ad.4a4e48",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1479,
+ "y": 3123,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "a4296e1e.d8981"
+ ]
+ ]
+ },
+ {
+ "id": "1a4f2a93.c11d2d",
+ "type": "switchNode",
+ "name": "switch otnidx == last",
+ "xml": "<switch test='`$otnidx == $tmp.otninfo_length - 1`'>\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1820,
+ "y": 3204,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "b3a20bdf.7738d8",
+ "b291bad0.bdbf18"
+ ]
+ ]
+ },
+ {
+ "id": "b3a20bdf.7738d8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1996,
+ "y": 3205,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "6075d4e4.60740c"
+ ]
+ ]
+ },
+ {
+ "id": "c49019c0.e84e08",
+ "type": "set",
+ "name": "set attachment_param domain A",
+ "xml": "<set>\n<parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n\n\n\n",
+ "comments": "",
+ "x": 2059,
+ "y": 3020,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "ffef74e0.d4b7c",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1795,
+ "y": 2966,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "e79aedfa.249",
+ "c49019c0.e84e08",
+ "733089d7.e1acb"
+ ]
+ ]
+ },
+ {
+ "id": "5a6ce6ad.7fc7a",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 2701,
+ "y": 3155,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "424b4783.7d233"
+ ]
+ ]
+ },
+ {
+ "id": "cc1f97b8.8c6ce8",
+ "type": "set",
+ "name": "set",
+ "xml": "<set>\n<parameter name='testingvalue' value='$tmp.otninfo_length -1' />\n",
+ "comments": "",
+ "x": 1768,
+ "y": 3155,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "a4296e1e.d8981",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1603,
+ "y": 3130,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "cc1f97b8.8c6ce8",
+ "1a4f2a93.c11d2d"
+ ]
+ ]
+ },
+ {
+ "id": "c2e19c98.abbc4",
+ "type": "switchNode",
+ "name": "switch dmnsidx == 0 (domainA)",
+ "xml": "<switch test='`$otnidx == 0`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1522,
+ "y": 1179,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "11383ee6.e1d7d9",
+ "6fa9ae0c.501d18"
+ ]
+ ]
+ },
+ {
+ "id": "11383ee6.e1d7d9",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1723,
+ "y": 1177,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "b4854ac4.e47338"
+ ]
+ ]
+ },
+ {
+ "id": "e2b0b006.cad94",
+ "type": "set",
+ "name": "set pce-src-node",
+ "xml": "<set>\n<parameter name='tmp.pce-src-node' value='`$tmp.srcdstpnf-name`' />",
+ "comments": "",
+ "x": 2004,
+ "y": 1127,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "5b58456d.2aa8c4",
+ "type": "switchNode",
+ "name": "switch dmnsidx == last (domainB)",
+ "xml": "<switch test='`$otnidx == $tmp.otninfo_length - 1`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1940,
+ "y": 1228,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "7d1f463f.75db48",
+ "1703470e.535939"
+ ]
+ ]
+ },
+ {
+ "id": "7d1f463f.75db48",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2170,
+ "y": 1224,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "1c45c1ae.cc5246"
+ ]
+ ]
+ },
+ {
+ "id": "6fa9ae0c.501d18",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1723,
+ "y": 1226,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "5b58456d.2aa8c4"
+ ]
+ ]
+ },
+ {
+ "id": "1703470e.535939",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2171,
+ "y": 1270,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "9a461e80.88ba58"
+ ]
+ ]
+ },
+ {
+ "id": "9a461e80.88ba58",
+ "type": "set",
+ "name": "set attachment_param domain G",
+ "xml": "<set>\n<parameter name='tmp.domainG-src-access-node-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-node-id`' />\n<parameter name='tmp.domainG-dst-access-node-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-node-id`' />",
+ "comments": "",
+ "x": 2385,
+ "y": 1270,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "d9594ef.146e23",
+ "type": "set",
+ "name": "set attachment_param domain A",
+ "xml": "<set>\n<parameter name='tmp.domainG-src-access-node-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />\n<parameter name='tmp.domainG-dst-access-node-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-node-id`' />",
+ "comments": "",
+ "x": 2059,
+ "y": 1174,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "b4854ac4.e47338",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1847,
+ "y": 1168,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "d9594ef.146e23"
+ ]
+ ]
+ },
+ {
+ "id": "1c45c1ae.cc5246",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2303,
+ "y": 1200,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "c5fb0dfd.a15ba"
+ ]
+ ]
+ },
+ {
+ "id": "ca07a786.2d259",
+ "type": "set",
+ "name": "set pce-src-node",
+ "xml": "<set>\n<parameter name='tmp.pce-dst-node' value='`$tmp.srcdstpnf-name`' />",
+ "comments": "",
+ "x": 2459,
+ "y": 1216,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "c5fb0dfd.a15ba",
+ "type": "set",
+ "name": "set attachment_param domain B",
+ "xml": "<set>\n<parameter name='tmp.domainG-src-access-node-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-node-id`' />\n<parameter name='tmp.domainG-dst-access-node-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -3]`' />",
+ "comments": "",
+ "x": 2507,
+ "y": 1168,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "b291bad0.bdbf18",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2024,
+ "y": 3471,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "62a1848.f7c8bfc"
+ ]
+ ]
+ },
+ {
+ "id": "ec243f0e.e78df8",
+ "type": "execute",
+ "name": "execute UUID generator for connectivity domain otnidx",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"uuid.connectivity-otnidx-uuid\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2499,
+ "y": 3456,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "b5d0d456.d5e17",
+ "type": "save",
+ "name": "save connectivity resource in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \n key='connectivity.connectivity-id = $uuid.connectivity-otnidx-uuid'>\n<parameter name='connectivity-id' value='`$uuid.connectivity-otnidx-uuid`' />\n<!--<parameter name='etht-svc-name' value='`$prop.ethernet-service-name`' />-->\n<parameter name='operational-status' value='Created' />\n<!--<parameter name='access-provider-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-provider-id`' />-->\n<!--<parameter name='access-client-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-client-id`' />-->\n<!--<parameter name='access-topology-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-topology-id`' />-->\n<!--<parameter name='access-node-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-node-id`' />-->\n<!--<parameter name='access-ltp-id' value='``' />-->\n<!--<parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />-->\n\n<!--<parameter name='bandwidth-profile-name' value='`$prop.sotn.etht-svc-name`' />-->\n<parameter name='bandwidth-profile-name' value='`$gfp`' />\n<parameter name='vpn-type' value='dummy' />\n<parameter name='cir' value='`$gfp *1000000`' />\n<parameter name='eir' value='`$gfp *1000000`' />\n<!--<parameter name='cbs' value='`$prop.sotn.cbs`' />-->\n<!--<parameter name='ebs' value='`$prop.sotn.ebs`' />-->\n<!--<parameter name='color-aware' value='`$prop.sotn.colorAware`' />-->\n<!--<parameter name='coupling-flag' value='`$prop.sotn.couplingFlag`' />-->\n<!--<parameter name='etht-svc-name' value='`$prop.sotn.etht-svc-name`' />-->\n<parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />\n<parameter name='connectivity-selflink' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $network-topology-operation-input.service-information.service-instance-id + '/service-data/networks/network/' + $prop.sotn.network-id + '/network-data/'` \" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2437,
+ "y": 3506,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "1472c185.25ef66",
+ "type": "save",
+ "name": "save TNNSSI (transport service instance) relationship to connectivity in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' \n key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id\n AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id \n AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $uuid.connectivity-otnidx-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$uuid.connectivity-otnidx-uuid`\" />\n\n\n<!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' -->\n<!-- key='service-instance.service-instance-id = $service-data.service-information.service-instance-id -->\n<!-- AND customer.global-customer-id = $service-data.networks.network[$nidx].network-data.service-information.global-customer-id -->\n<!-- AND service-subscription.service-type = $service-data.networks.network[$nidx].network-data.service-information.subscription-service-type' -->\n<!-- force=\"true\" pfx=\"tmp.AnAI-data\">-->\n<!--<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.sotn.network-id`\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.sotn.network-id`\" />-->",
+ "comments": "",
+ "outputs": 1,
+ "x": 2574,
+ "y": 3605,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "937a1753.6c2cd",
+ "type": "comment",
+ "name": "connectivity has not been created for middle domains, so we have to create one",
+ "info": "",
+ "comments": "",
+ "x": 2577,
+ "y": 3397,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "3fb48dac.724cba",
+ "type": "save",
+ "name": "save connectivity-otnidx relationship to vpn-binding-otnidx, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding:relationship-list' \n key='vpn-binding.vpn-id = $prop.vpn-binding-otnidx-uuid' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $uuid.connectivity-otnidx-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$uuid.connectivity-otnidx-uuid`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 2542,
+ "y": 3664,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "62a1848.f7c8bfc",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 2181,
+ "y": 3472,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "ec243f0e.e78df8",
+ "b5d0d456.d5e17",
+ "1472c185.25ef66",
+ "3fb48dac.724cba",
+ "d9f949c2.b1be88",
+ "d2c94e3.4db213"
+ ]
+ ]
+ },
+ {
+ "id": "d9f949c2.b1be88",
+ "type": "set",
+ "name": "set attachment_param domain otnidx",
+ "xml": "<set>\n<parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n\n",
+ "comments": "",
+ "x": 2456,
+ "y": 3724,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "ef8123f7.a43b88",
+ "type": "set",
+ "name": "unset parameters",
+ "xml": "<set>\n<parameter name='domain-A.tunnel-tp-id' value='' />\n<parameter name='domain-A.node-id' value='' />\n<parameter name='domain-A.network-id' value=\"\" />\n<parameter name='domain-A.provider-id' value=\"\" />\n<parameter name='domain-A.client-id' value=\"\" />\n<parameter name='domain-A.te-topo-id' value=\"\" />\n<parameter name='domain-A.network-type' value=\"\" />\n<parameter name='domain-A.ltpId' value=\"\" />\n<parameter name='tmp.domain-A.network-id' value=\"\" />\n<parameter name='tmp.domain-A.ttp-id' value=\"\" />\n<parameter name='network-route-A' value=\"\" />\n<!--<parameter name='domain-A.' value=\"\" />-->\n\n<parameter name='request-id' value='' />\n<parameter name='otn-source-node' value='' />\n<parameter name='otn-dest-node' value='' />\n<parameter name='bw-odu' value=\"\" />\n<parameter name='src-ttp-id' value='' />\n<parameter name='dst-ttp-id' value='' />\n\n<parameter name='domain-B.tunnel-tp-id' value='' />\n<parameter name='domain-B.node-id' value='' />\n<parameter name='domain-B.network-id' value=\"\" />\n<parameter name='domain-B.provider-id' value=\"\" />\n<parameter name='domain-B.client-id' value=\"\" />\n<parameter name='domain-B.te-topo-id' value=\"\" />\n<parameter name='domain-B.network-type' value=\"\" />\n<parameter name='domain-B.ltpId' value=\"\" />\n<parameter name='tmp.domain-B.network-id' value=\"\" />\n<parameter name='tmp.domain-B.ttp-id' value=\"\" />\n<parameter name='network-route-B' value=\"\" />\n<!--<parameter name='domain-B.' value=\"\" />-->\n\n\n\n\n\n",
+ "comments": "",
+ "x": 392,
+ "y": 2894,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "36cc6c32.a7a5bc",
+ "type": "set",
+ "name": "set srcTtp OTN layer",
+ "xml": "<set>\n<!--<parameter name='tmp.srcTtpOtnLayer' value=\"`$tmp.pce-src-node + '-' + -->\n<!-- $param-prefix-domainA[$param-prefix-domainA_length -2] + '-' +-->\n<!-- $tmp.source.ttp-id`\" />-->\n\n<parameter name='tmp.srcTtpOtnLayer' value=\"`$tmp.pce-src-node`\" />\n\n\n",
+ "comments": "",
+ "x": 433,
+ "y": 906,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "424b4783.7d233",
+ "type": "save",
+ "name": "save middle-man-conn relationship to connectivity-B, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $middle-man-conn.connectivity-id' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.connectivity-domainB-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.connectivity-domainB-uuid`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 3025,
+ "y": 3155,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "733089d7.e1acb",
+ "type": "save",
+ "name": "save middle-man-conn relationship to connectivity-A, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $middle-man-conn.connectivity-id' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.connectivity-domainA-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.connectivity-domainA-uuid`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 2139,
+ "y": 2911,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "d2c94e3.4db213",
+ "type": "save",
+ "name": "save middle-man-conn relationship to connectivity-otnidx, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $middle-man-conn.connectivity-id' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $uuid.connectivity-otnidx-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$uuid.connectivity-otnidx-uuid`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 2538,
+ "y": 3551,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "a7261999.9881d8",
+ "type": "switchNode",
+ "name": "switch found-middle-man?",
+ "xml": "<switch test='`$found-middle-man`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2357,
+ "y": 3155,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "2bb32459.fcac64"
+ ]
+ ]
+ },
+ {
+ "id": "2bb32459.fcac64",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2544,
+ "y": 3155,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "5a6ce6ad.7fc7a"
+ ]
+ ]
+ },
+ {
+ "id": "6075d4e4.60740c",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 2139,
+ "y": 3205,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "7c7e82f.b5a9efc",
+ "383da81a.536a28",
+ "a7261999.9881d8"
+ ]
+ ]
+ },
+ {
+ "id": "7c7e82f.b5a9efc",
+ "type": "save",
+ "name": "save connectivity-B relationship to vpn-binding-B, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding:relationship-list' \n key='vpn-binding.vpn-id = $prop.vpn-binding-otnidx-uuid' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.connectivity-domainB-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.connectivity-domainB-uuid`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 2455,
+ "y": 3253,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "383da81a.536a28",
+ "type": "set",
+ "name": "set attachment_param domain B",
+ "xml": "<set>\n<parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n\n\n",
+ "comments": "",
+ "x": 2382,
+ "y": 3313,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "cddff981.827d58",
+ "type": "save",
+ "name": "get all-vpn-bindings from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"vpn-bindings\"\n\t key=\"selflink = 'https://aai.onap:8443/aai/v21/network/vpn-bindings\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"tmp.aai.all-vpn-bindings\" >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 443,
+ "y": 3913,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "2d49e0b.d9e87a",
+ "73d650d6.cd1c1",
+ "77ce79ba.222c68"
+ ]
+ ]
+ },
+ {
+ "id": "2d49e0b.d9e87a",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 631,
+ "y": 3926,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "886559d2.9d2008"
+ ]
+ ]
+ },
+ {
+ "id": "73d650d6.cd1c1",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 631.490966796875,
+ "y": 3971.5740356445312,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "22427bb5.1c0494"
+ ]
+ ]
+ },
+ {
+ "id": "77ce79ba.222c68",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 629,
+ "y": 4015,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "8183af0e.979c3"
+ ]
+ ]
+ },
+ {
+ "id": "886559d2.9d2008",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 804,
+ "y": 3924,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "5d380762.82e9"
+ ]
+ ]
+ },
+ {
+ "id": "22427bb5.1c0494",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 794.0623779296875,
+ "y": 3971.8597717285156,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "8183af0e.979c3",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 796,
+ "y": 4014,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "7aad5876.b17588",
+ "type": "for",
+ "name": "for vidx..tmp.otninfo_length[]",
+ "xml": "<for index='dmnsidx' start='0' end='`$otn-tunnel-slice_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 432,
+ "y": 4104,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "d9d281f0.871208"
+ ]
+ ]
+ },
+ {
+ "id": "7032c836.ea98e",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1242,
+ "y": 4104,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "bcf06c77.b9d56"
+ ]
+ ]
+ },
+ {
+ "id": "d6fa6f89.c5ed98",
+ "type": "for",
+ "name": "for vidx..tmp.otninfo_length[]",
+ "xml": "<for index='stunidx' start='0' end='`$otn-tunnel-slice[$dmnsidx].list_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1014,
+ "y": 4104,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "7032c836.ea98e"
+ ]
+ ]
+ },
+ {
+ "id": "5d380762.82e9",
+ "type": "for",
+ "name": "for vpnidx in all-vpn-bindings",
+ "xml": "<for index='vpnbidx' start='0' end='`$tmp.aai.all-vpn-bindings.vpn-binding_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1033,
+ "y": 3925,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "4b806fec.cf791"
+ ]
+ ]
+ },
+ {
+ "id": "4b806fec.cf791",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1248,
+ "y": 3926,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "5269aed8.1067"
+ ]
+ ]
+ },
+ {
+ "id": "bcf06c77.b9d56",
+ "type": "set",
+ "name": "set attachment_param sliceG",
+ "xml": "<set>\n<parameter name='`otn-tunnel-sliceG-list[$stunidx].request-id`' value='`$otn-tunnel-slice[$dmnsidx].list[$stunidx].request-id`' />\n<parameter name='`otn-tunnel-sliceG-list[$stunidx].otn-source-node`' value='`$otn-tunnel-slice[$dmnsidx].list[$stunidx].otn-source-node`' />\n<parameter name='`otn-tunnel-sliceG-list[$stunidx].otn-dest-node`' value='`$otn-tunnel-slice[$dmnsidx].list[$stunidx].otn-dest-node`' />\n<parameter name='`otn-tunnel-sliceG-list[$stunidx].bw-odu`' value=\"`$otn-tunnel-slice[$dmnsidx].list[$stunidx].bw-odu`\" />\n<parameter name='`otn-tunnel-sliceG-list[$stunidx].src-ttp-id`' value='`$otn-tunnel-slice[$dmnsidx].list[$stunidx].src-ttp-id`' />\n<parameter name='`otn-tunnel-sliceG-list[$stunidx].dst-ttp-id`' value='`$otn-tunnel-slice[$dmnsidx].list[$stunidx].dst-ttp-id`' />\n<parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n\n<parameter name='otn-tunnel-sliceG-list_length' value='`$stunidx + 1`' />\n\n\n<parameter name=\"tmp.domainG.restapiUrl\" value=\"`$otn-tunnel-slice[$dmnsidx].list[$stunidx].domainurl`\" />\n<parameter name=\"tmp.domainG.restapiUser\" value=\"`$otn-tunnel-slice[$dmnsidx].list[$stunidx].domainuser`\" />\n<parameter name=\"tmp.domainG.restapiPassword\" value=\"`$otn-tunnel-slice[$dmnsidx].list[$stunidx].domainpassword`\" />",
+ "comments": "",
+ "x": 1495,
+ "y": 4102,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "678bb9be.2e7528",
+ "type": "execute",
+ "name": "execute RestApiCallNode sliceG creation domainG",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.transport-sliceG-list-creation.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$tmp.domainG.restapiUrl + '/restconf/operations/ietf-optical-slice:create-optical-slice'`\" />\n<parameter name=\"restapiUser\" value=\"`$tmp.domainG.restapiUser`\" />\n<parameter name=\"restapiPassword\" value=\"`tmp.domainG.restapiPassword`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"otn-oof\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.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`\" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1080,
+ "y": 4210,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "273fc863.468be8",
+ "6eaa45ca.9bba14"
+ ]
+ ]
+ },
+ {
+ "id": "6eaa45ca.9bba14",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1363,
+ "y": 4190,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "562a3e0b.c715a8"
+ ]
+ ]
+ },
+ {
+ "id": "273fc863.468be8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1364.0002136230469,
+ "y": 4240.99990940094,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "3cb4038b.3f740c"
+ ]
+ ]
+ },
+ {
+ "id": "562a3e0b.c715a8",
+ "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 slice creation api for domain A\" />\n",
+ "comments": "",
+ "x": 1503.0002479553223,
+ "y": 4190.000000953674,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "3cb4038b.3f740c",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1509.0272598266602,
+ "y": 4238.745394706726,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "d9d281f0.871208",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 664,
+ "y": 4102,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "d6fa6f89.c5ed98",
+ "678bb9be.2e7528"
+ ]
+ ]
+ },
+ {
+ "id": "5269aed8.1067",
+ "type": "switchNode",
+ "name": "switch vpnuuid is for this slice",
+ "xml": "<!--<switch test=\"`$tmp.slicevpnuuids[$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-id] != '' `\">-->\n\n<!-- Replace vpn-type with slice-id (a new attribbute in the latest AAI) -->\n<switch test=\"`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].slice-id == $tmp.aai.service-instance.service-instance-id `\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1492,
+ "y": 3925,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "ff386dcd.32782",
+ "224e1e2e.4d20a2"
+ ]
+ ]
+ },
+ {
+ "id": "502add97.5e708c",
+ "type": "set",
+ "name": "set providerValue",
+ "xml": "<set>\n<parameter name='providerValue' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].access-provider-id`' />\n<parameter name='found' value='false' />\n\n\n",
+ "comments": "",
+ "x": 2134,
+ "y": 3871,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "521605a6.12e2d4",
+ "type": "switchNode",
+ "name": "switch $tmp.arr_length != 0",
+ "xml": "<switch test='`$tmp.arr_length != 0`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2167,
+ "y": 3926,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "b6840948.dcaf28",
+ "16f9a591.80cc1a"
+ ]
+ ]
+ },
+ {
+ "id": "b6840948.dcaf28",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2363,
+ "y": 3896,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "d20ee31a.4da818"
+ ]
+ ]
+ },
+ {
+ "id": "16f9a591.80cc1a",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2364,
+ "y": 3967,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "932a25a5.21db58"
+ ]
+ ]
+ },
+ {
+ "id": "ff386dcd.32782",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1709,
+ "y": 3904,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "fa5ee789.0417f8"
+ ]
+ ]
+ },
+ {
+ "id": "224e1e2e.4d20a2",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1709,
+ "y": 3953,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "fa5ee789.0417f8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1877,
+ "y": 3904,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "502add97.5e708c",
+ "521605a6.12e2d4"
+ ]
+ ]
+ },
+ {
+ "id": "d20ee31a.4da818",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 2514,
+ "y": 3894,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "4f6df904.ee87c",
+ "66254394.195084"
+ ]
+ ]
+ },
+ {
+ "id": "932a25a5.21db58",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 2516,
+ "y": 3967,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "de1fa04c.85c2d",
+ "2aeb6e74.e24be2"
+ ]
+ ]
+ },
+ {
+ "id": "4f6df904.ee87c",
+ "type": "for",
+ "name": "for arridx in tmp.arr",
+ "xml": "<for index='arridx' start='0' end='`$tmp.arr_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2701,
+ "y": 3846,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "e9ecc81b.49bbd"
+ ]
+ ]
+ },
+ {
+ "id": "e9ecc81b.49bbd",
+ "type": "switchNode",
+ "name": "switch tmp.arr[$arridx] == $providerValue",
+ "xml": "<switch test='`$tmp.arr[$arridx] == $providerValue`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2992,
+ "y": 3846,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "42d5ed25.b49c94",
+ "c705b865.d0eb4"
+ ]
+ ]
+ },
+ {
+ "id": "42d5ed25.b49c94",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3267,
+ "y": 3815,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "5660632c.265cdc"
+ ]
+ ]
+ },
+ {
+ "id": "c705b865.d0eb4",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3268,
+ "y": 3886,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "a7a2aba3.cd08b8"
+ ]
+ ]
+ },
+ {
+ "id": "5660632c.265cdc",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 3418,
+ "y": 3813,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "99e18478.d4208",
+ "c48a358e.19c528",
+ "23bf4d27.c1b37a",
+ "85bd9e57.66c34",
+ "747fe7dc.036f4"
+ ]
+ ]
+ },
+ {
+ "id": "de1fa04c.85c2d",
+ "type": "save",
+ "name": "store $arridx somewhere in vpn-binding",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-id' >\n<parameter name='vpn-id' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-id`' />\n<parameter name='vpn-type' value='0' />\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2771,
+ "y": 3960,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "2aeb6e74.e24be2",
+ "type": "set",
+ "name": "set twoD array",
+ "xml": "<set>\n<parameter name='tmp.arr[0]' value='`$providerValue`' />\n<parameter name='tmp.arr_length' value='1' />\n\n<parameter name='`otn-tunnel-slice[0].list[0].request-id`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-id`' />\n<parameter name='`otn-tunnel-slice[0].list[0].otn-source-node`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].src-access-node-id`' />\n<parameter name='`otn-tunnel-slice[0].list[0].otn-dest-node`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].dst-access-node-id`' />\n<parameter name='`otn-tunnel-slice[0].list[0].bw-odu`' value=\"`'0,' + $gfp`\" />\n<parameter name='`otn-tunnel-slice[0].list[0].src-ttp-id`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].src-access-ltp-id`' />\n<parameter name='`otn-tunnel-slice[0].list[0].dst-ttp-id`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].dst-access-ltp-id`' />\n<parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n\n<parameter name='`otn-tunnel-slice[0].list[0].domainurl`' value=\"`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-region`\" />\n<parameter name='`otn-tunnel-slice[0].list[0].domainuser`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-description`' />\n<parameter name='`otn-tunnel-slice[0].list[0].domainpassword`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-platform`' />\n\n<parameter name='otn-tunnel-slice_length' value='1' />\n<parameter name='otn-tunnel-slice[0].list_length' value='1' />\n\n",
+ "comments": "",
+ "x": 2699,
+ "y": 4007,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "66254394.195084",
+ "type": "switchNode",
+ "name": "switch found?",
+ "xml": "<switch test='`$found`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2692,
+ "y": 3891,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "6f0ec490.03677c",
+ "bc11802a.75d5c8"
+ ]
+ ]
+ },
+ {
+ "id": "6f0ec490.03677c",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2852,
+ "y": 3883,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "843f963d.3c00d"
+ ]
+ ]
+ },
+ {
+ "id": "bc11802a.75d5c8",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2850,
+ "y": 3920,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "f82ccccf.a16c6"
+ ]
+ ]
+ },
+ {
+ "id": "843f963d.3c00d",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2977,
+ "y": 3883,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "dc11c549.4cf3f",
+ "type": "save",
+ "name": "store $arridx+1 somewhere in vpn-binding",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-id' >\n<parameter name='vpn-id' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-id`' />\n<parameter name='vpn-type' value='`$arridx + 1`' />\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3284,
+ "y": 3941,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "f82ccccf.a16c6",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 3010,
+ "y": 3928,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "dc11c549.4cf3f",
+ "3879ac46.8861b4"
+ ]
+ ]
+ },
+ {
+ "id": "3879ac46.8861b4",
+ "type": "set",
+ "name": "set twoD array",
+ "xml": "<set>\n<parameter name='`tmp.arr[$arridx + 1]`' value='`$providerValue`' />\n<parameter name='tmp.arr_length' value='`$tmp.arr_length + 1`' />\n\n<parameter name='`otn-tunnel-slice[$arridx + 1].list[0].request-id`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-id`' />\n<parameter name='`otn-tunnel-slice[$arridx + 1].list[0].otn-source-node`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].src-access-node-id`' />\n<parameter name='`otn-tunnel-slice[$arridx + 1].list[0].otn-dest-node`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].dst-access-node-id`' />\n<parameter name='`otn-tunnel-slice[$arridx + 1].list[0].bw-odu`' value=\"`'0,' + $gfp`\" />\n<parameter name='`otn-tunnel-slice[$arridx + 1].list[0].src-ttp-id`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].src-access-ltp-id`' />\n<parameter name='`otn-tunnel-slice[$arridx + 1].list[0].dst-ttp-id`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].dst-access-ltp-id`' />\n<parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n\n<parameter name='`otn-tunnel-slice[$arridx + 1].list[0].domainurl`' value=\"`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-region`\" />\n<parameter name='`otn-tunnel-slice[$arridx + 1].list[0].domainuser`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-description`' />\n<parameter name='`otn-tunnel-slice[$arridx + 1].list[0].domainpassword`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-platform`' />\n\n<parameter name='otn-tunnel-slice_length' value='`$arridx + 2`' />\n<parameter name='`otn-tunnel-slice[$arridx + 1].list_length`' value='1' />\n\n",
+ "comments": "",
+ "x": 3201,
+ "y": 3987,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "a7a2aba3.cd08b8",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 3401,
+ "y": 3885,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "99e18478.d4208",
+ "type": "set",
+ "name": "set found to true",
+ "xml": "<set>\n<parameter name='found' value='true' />\n\n\n",
+ "comments": "",
+ "x": 3606,
+ "y": 3773,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "c48a358e.19c528",
+ "type": "save",
+ "name": "store $arridx somewhere in vpn-binding",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-id' >\n<parameter name='vpn-id' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-id`' />\n<parameter name='vpn-type' value='`$arridx`' />\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3678,
+ "y": 3818,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "747fe7dc.036f4",
+ "type": "set",
+ "name": "set twoD arr",
+ "xml": "<set>\n\n<!--<parameter name='`tmp.arr[$arridx + 1]`' value='`$providerValue`' />-->\n<!--<parameter name='tmp.arr_length' value='`$tmp.arr_length + 1`' />-->\n\n<parameter name='`otn-tunnel-slice[$arridx].list[$sizeOfSliceList].request-id`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-id`' />\n<parameter name='`otn-tunnel-slice[$arridx].list[$sizeOfSliceList].otn-source-node`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].src-access-node-id`' />\n<parameter name='`otn-tunnel-slice[$arridx].list[$sizeOfSliceList].otn-dest-node`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].dst-access-node-id`' />\n<parameter name='`otn-tunnel-slice[$arridx].list[$sizeOfSliceList].bw-odu`' value=\"`'0,' + $gfp`\" />\n<parameter name='`otn-tunnel-slice[$arridx].list[$sizeOfSliceList].src-ttp-id`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].src-access-ltp-id`' />\n<parameter name='`otn-tunnel-slice[$arridx].list[$sizeOfSliceList].dst-ttp-id`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].dst-access-ltp-id`' />\n<parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n\n<parameter name='`otn-tunnel-slice[$arridx].list[$sizeOfSliceList].domainurl`' value=\"`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-region`\" />\n<parameter name='`otn-tunnel-slice[$arridx].list[$sizeOfSliceList].domainuser`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-description`' />\n<parameter name='`otn-tunnel-slice[$arridx].list[$sizeOfSliceList].domainpassword`' value='`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-platform`' />\n\n<!--<parameter name='otn-tunnel-slice_length' value='`$arridx + 2`' />-->\n<parameter name='`otn-tunnel-slice[$arridx].list_length`' value='`$sizeOfSliceList + 1`' />\n\n",
+ "comments": "",
+ "x": 3593,
+ "y": 3945,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "85bd9e57.66c34",
+ "type": "set",
+ "name": "set sizeOfSliceList",
+ "xml": "<set>\n<parameter name='sizeOfSliceList' value='`$otn-tunnel-slice[$arridx].list_length`' />\n\n\n",
+ "comments": "",
+ "x": 3614,
+ "y": 3881,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "23bf4d27.c1b37a",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 3572,
+ "y": 4012,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "c99e01d1.0f1de8",
+ "type": "comment",
+ "name": "Important Comment",
+ "info": "When we are in F1, it means that, either:\nno-middle-man found\nor\nmiddle-man was found but PCE is needed.\n\nNo matter which scenario brings us to F1, vpn-binding-B is a \nnew vpn-binding so it needs to be attached to the:\nmiddle-man && connectivityB",
+ "comments": "",
+ "x": 2352,
+ "y": 3202,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "11040b46.8e035d",
+ "type": "set",
+ "name": "set srcTtp+dstTtp pair",
+ "xml": "<set>\n<parameter name='tmp.srcTtpdstTtpPair' value=\"`$tmp.otninfo[$otnidx].srcPort.src-tunnel-tp-id + ',' +\n $tmp.otninfo[$otnidx].dstPort.dst-tunnel-tp-id`\" />\n\n\n",
+ "comments": "",
+ "x": 1498,
+ "y": 1259,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "3e17d72f.d352d",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:cll-vnf-topology-operation-cll-helper-find-connectivity",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-helper-find-connectivity' mode='sync' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1691,
+ "y": 1356,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "130409d7.ba1cfe",
+ "type": "set",
+ "name": "set current-provider-id and current-cvlan-id",
+ "xml": "<set>\n<parameter name='tmp.current-provider-id' value='`$tmp.access-provider-id`' />\n<parameter name='tmp.current-cvlan-id' value='`$tmp.aai.network-route-A.logical-interface-id`' />\n\n",
+ "comments": "",
+ "x": 1562,
+ "y": 1310,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "1ea79a81.da9f1d",
+ "type": "switchNode",
+ "name": "switch found-connectivity?",
+ "xml": "\n<switch test=\"`$found-connectivity`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1371,
+ "y": 1511,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "1956e28a.ad4365",
+ "404765c9.b1c294"
+ ]
+ ]
+ },
+ {
+ "id": "1956e28a.ad4365",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1657,
+ "y": 2330,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "cd58f3fe.5b5bd"
+ ]
+ ]
+ },
+ {
+ "id": "e6504cf8.a4c5e",
+ "type": "comment",
+ "name": "call string.contains to check if the cache has srcTtpdstTtpPair",
+ "info": "if it had: then no new otn/vpn-binding is needed\n ==> find the otn. ==>look into the relationships of this connectivity and find the one that has same srcTtp and dstTtp\n ==> increase the bw\nif not, create a new vpn-binding, attach this vpn-binding into the founded connectivity, and attach it to the middle-man-conn as well.",
+ "comments": "",
+ "x": 2083,
+ "y": 2275,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "8c480e3.f82397",
+ "type": "comment",
+ "name": "create a new connectivity",
+ "info": "(this should not be for LEAF side or ROOT side, otherwise error)\n\ncreate a new vpn-binding (done here)\ncreate a new connectivity (done below)\nadd srcTtpdstTtpPair into the cache in this connectivity\nattach the vpn-binding into the connectivity relationship\nattach this connectivity into the middle man\nattach this connectivity into the service-instance",
+ "comments": "",
+ "x": 1894,
+ "y": 1487,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "b5847157.d9e138",
+ "type": "save",
+ "name": "save vpn-binding otnIdx resource (aka. OTN) in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $prop.vpn-binding-otnidx-uuid' >\n<parameter name='vpn-id' value='`$prop.vpn-binding-otnidx-uuid`' />\n<parameter name='vpn-name' value='`$prop.otn-tunnel-name`' />\n<!--<parameter name='customer-vpn-id' value='`($idx + 1) * 10`' />-->\n<!--<parameter name='customer-vpn-id' value='`($maxtpn + $gfp)`' />-->\n<parameter name='customer-vpn-id' value='`$newToBeUsedMaxtpn`' />\n<!--<parameter name='access-provider-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-provider-id`' />-->\n<parameter name='access-provider-id' value='`$tmp.access-provider-id`' />\n<!--<parameter name='access-client-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-client-id`' />-->\n<parameter name='access-client-id' value='`$tmp.access-client-id`' />\n<!--<parameter name='access-topology-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-topology-id`' />-->\n<parameter name='access-topology-id' value='`$tmp.access-topology-id`' />\n<!--<parameter name='src-access-node-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-node-id`' />-->\n<parameter name='src-access-node-id' value='`$tmp.domainG-src-access-node-id`' />\n<parameter name='src-access-ltp-id' value='`$tmp.otninfo[$otnidx].srcPort.src-tunnel-tp-id`' />\n<!--<parameter name='dst-access-node-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-node-id`' />-->\n<parameter name='dst-access-node-id' value='`$tmp.domainG-dst-access-node-id`' />\n<parameter name='dst-access-ltp-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-tunnel-tp-id`' />\n<parameter name='route-distinguisher' value='`$gfp`' />\n<parameter name='operational-status' value='Created' />\n<parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />\n\n\n<parameter name='vpn-region' value='`$prop.sdncRestApi.thirdpartySdnc.domainG.url`' />\n<parameter name='vpn-description' value='`$prop.sdncRestApi.thirdpartySdnc.domainG.user`' />\n<parameter name='vpn-platform' value='`$prop.sdncRestApi.thirdpartySdnc.domainG.password`' />\n\n<!-- The following line is in lieu of vpn-binding.slice-id (new attribute in latest AAI) -->\n<!--<parameter name='ops-note' value='`$tmp.aai.service-instance.service-instance-id`' />-->\n<parameter name='slice-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n<parameter name='ops-note' value='`$tmp.srcTtpOtnLayer`' />\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1997,
+ "y": 1523,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "dff931e6.5a9578"
+ ]
+ ]
+ },
+ {
+ "id": "dff931e6.5a9578",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2285,
+ "y": 1524,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "bf3d635b.09f94"
+ ]
+ ]
+ },
+ {
+ "id": "bf3d635b.09f94",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2468.5,
+ "y": 1522.25390625,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "6cbdac8a.378604",
+ "type": "execute",
+ "name": "execute string.contains srcTtpdstTtpPair",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' >\n<parameter name=\"source\" value='`$tmp.the-connectivity.coupling-flag`'/>\n<parameter name=\"target\" value=\"`$tmp.srcTtpdstTtpPair`\"/>\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2071,
+ "y": 2327,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "1b949e6d.080772",
+ "e453c4d5.ba435"
+ ]
+ ]
+ },
+ {
+ "id": "1b949e6d.080772",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2244,
+ "y": 2175,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "e453c4d5.ba435",
+ "type": "outcomeFalse",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2276,
+ "y": 2434,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "80b2f89e.8a165"
+ ]
+ ]
+ },
+ {
+ "id": "7dc11394.4d1084",
+ "type": "save",
+ "name": "save vpn-binding otnIdx resource (aka. OTN) in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $prop.vpn-binding-otnidx-uuid' >\n<parameter name='vpn-id' value='`$prop.vpn-binding-otnidx-uuid`' />\n<parameter name='vpn-name' value='`$prop.otn-tunnel-name`' />\n<!--<parameter name='customer-vpn-id' value='`($idx + 1) * 10`' />-->\n<!--<parameter name='customer-vpn-id' value='`($maxtpn + $gfp)`' />-->\n<parameter name='customer-vpn-id' value='`$newToBeUsedMaxtpn`' />\n<!--<parameter name='access-provider-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-provider-id`' />-->\n<parameter name='access-provider-id' value='`$tmp.access-provider-id`' />\n<!--<parameter name='access-client-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-client-id`' />-->\n<parameter name='access-client-id' value='`$tmp.access-client-id`' />\n<!--<parameter name='access-topology-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-topology-id`' />-->\n<parameter name='access-topology-id' value='`$tmp.access-topology-id`' />\n<!--<parameter name='src-access-node-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-node-id`' />-->\n<parameter name='src-access-node-id' value='`$tmp.domainG-src-access-node-id`' />\n<parameter name='src-access-ltp-id' value='`$tmp.otninfo[$otnidx].srcPort.src-tunnel-tp-id`' />\n<!--<parameter name='dst-access-node-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-node-id`' />-->\n<parameter name='dst-access-node-id' value='`$tmp.domainG-dst-access-node-id`' />\n<parameter name='dst-access-ltp-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-tunnel-tp-id`' />\n<parameter name='route-distinguisher' value='`$gfp`' />\n<parameter name='operational-status' value='Created' />\n<parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />\n\n\n<parameter name='vpn-region' value='`$prop.sdncRestApi.thirdpartySdnc.domainG.url`' />\n<parameter name='vpn-description' value='`$prop.sdncRestApi.thirdpartySdnc.domainG.user`' />\n<parameter name='vpn-platform' value='`$prop.sdncRestApi.thirdpartySdnc.domainG.password`' />\n\n<!-- The following line is in lieu of vpn-binding.slice-id (new attribute in latest AAI) -->\n<!--<parameter name='ops-note' value='`$tmp.aai.service-instance.service-instance-id`' />-->\n<parameter name='slice-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n<parameter name='ops-note' value='`$tmp.srcTtpOtnLayer`' />\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2683,
+ "y": 1965,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "22dcb38b.c85a54"
+ ]
+ ]
+ },
+ {
+ "id": "22dcb38b.c85a54",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2987,
+ "y": 1962,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "708eeb6a.f5aefc"
+ ]
+ ]
+ },
+ {
+ "id": "708eeb6a.f5aefc",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 3137.5,
+ "y": 1969.25390625,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "74407b46.6458d4",
+ "type": "execute",
+ "name": "execute UUID generator for connectivity domain otnidx",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"uuid.connectivity-otnidx-uuid\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1977,
+ "y": 1578,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "3919fe25.6022b2",
+ "type": "save",
+ "name": "save connectivity resource in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \n key='connectivity.connectivity-id = $uuid.connectivity-otnidx-uuid'>\n<parameter name='connectivity-id' value='`$uuid.connectivity-otnidx-uuid`' />\n<parameter name='etht-svc-name' value='`$prop.ethernet-service-name`' />\n<parameter name='operational-status' value='Created' />\n<!--<parameter name='access-provider-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-provider-id`' />-->\n<!--<parameter name='access-client-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-client-id`' />-->\n<!--<parameter name='access-topology-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-topology-id`' />-->\n<!--<parameter name='access-node-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-node-id`' />-->\n<!--<parameter name='access-ltp-id' value='``' />-->\n<parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />\n\n<parameter name='coupling-flag' value='`$srcTtpdstTtpPair`' />\n\n<!--<parameter name='bandwidth-profile-name' value='`$prop.sotn.etht-svc-name`' />-->\n<parameter name='bandwidth-profile-name' value='`$gfp`' />\n<parameter name='vpn-type' value='dummy' />\n<parameter name='cir' value='`$gfp *1000000`' />\n<parameter name='eir' value='`$gfp *1000000`' />\n<!--<parameter name='cbs' value='`$prop.sotn.cbs`' />-->\n<!--<parameter name='ebs' value='`$prop.sotn.ebs`' />-->\n<!--<parameter name='color-aware' value='`$prop.sotn.colorAware`' />-->\n\n<!--<parameter name='etht-svc-name' value='`$prop.sotn.etht-svc-name`' />-->\n<parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />\n<parameter name='connectivity-selflink' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $network-topology-operation-input.service-information.service-instance-id + '/service-data/networks/network/' + $prop.sotn.network-id + '/network-data/'` \" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1915,
+ "y": 1628,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "7aa6415.034e74",
+ "type": "save",
+ "name": "save middle-man-conn relationship to connectivity-otnidx, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $middle-man-conn.connectivity-id' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $uuid.connectivity-otnidx-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$uuid.connectivity-otnidx-uuid`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 2016,
+ "y": 1673,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "e6bc04b6.f68c7",
+ "type": "save",
+ "name": "save TNNSSI (transport service instance) relationship to connectivity in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' \n key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id\n AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id \n AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $uuid.connectivity-otnidx-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$uuid.connectivity-otnidx-uuid`\" />\n\n\n<!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' -->\n<!-- key='service-instance.service-instance-id = $service-data.service-information.service-instance-id -->\n<!-- AND customer.global-customer-id = $service-data.networks.network[$nidx].network-data.service-information.global-customer-id -->\n<!-- AND service-subscription.service-type = $service-data.networks.network[$nidx].network-data.service-information.subscription-service-type' -->\n<!-- force=\"true\" pfx=\"tmp.AnAI-data\">-->\n<!--<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.sotn.network-id`\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.sotn.network-id`\" />-->",
+ "comments": "",
+ "outputs": 1,
+ "x": 2052,
+ "y": 1727,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "b2ea866b.5e679",
+ "type": "save",
+ "name": "save connectivity-otnidx relationship to vpn-binding-otnidx, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding:relationship-list' \n key='vpn-binding.vpn-id = $prop.vpn-binding-otnidx-uuid' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $uuid.connectivity-otnidx-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$uuid.connectivity-otnidx-uuid`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 2020,
+ "y": 1786,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "e878616a.51fa2",
+ "type": "comment",
+ "name": "find middle-man's eth-srv-name",
+ "info": "",
+ "comments": "",
+ "x": 1478,
+ "y": 1402,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "f0ca8ca2.d5c31",
+ "type": "set",
+ "name": "set prop.ethernet-service-name",
+ "xml": "<set>\n<parameter name='prop.ethernet-service-name' value='`$middle-man-conn.etht-svc-name`' />\n\n",
+ "comments": "",
+ "x": 1500,
+ "y": 1446,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "55a4c230.fd03fc",
+ "type": "save",
+ "name": "save middle-man-conn relationship to tmp.the-connectivity, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $middle-man-conn.connectivity-id' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $tmp.the-connectivity.connectivity-id`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$tmp.the-connectivity.connectivity-id`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 2707,
+ "y": 2182,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "8a76ccc1.2cd108",
+ "type": "save",
+ "name": "save TNNSSI (transport service instance) relationship to connectivity in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' \n key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id\n AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id \n AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $uuid.connectivity-otnidx-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$uuid.connectivity-otnidx-uuid`\" />\n\n\n<!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' -->\n<!-- key='service-instance.service-instance-id = $service-data.service-information.service-instance-id -->\n<!-- AND customer.global-customer-id = $service-data.networks.network[$nidx].network-data.service-information.global-customer-id -->\n<!-- AND service-subscription.service-type = $service-data.networks.network[$nidx].network-data.service-information.subscription-service-type' -->\n<!-- force=\"true\" pfx=\"tmp.AnAI-data\">-->\n<!--<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.sotn.network-id`\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.sotn.network-id`\" />-->",
+ "comments": "",
+ "outputs": 1,
+ "x": 2738,
+ "y": 2221,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "1837f35e.96c455",
+ "type": "save",
+ "name": "save tmp.the-connectivity relationship to vpn-binding-otnidx, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding:relationship-list' \n key='vpn-binding.vpn-id = $prop.vpn-binding-otnidx-uuid' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $tmp.the-connectivity.connectivity-id`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$tmp.the-connectivity.connectivity-id`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 2709,
+ "y": 2294,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "f94cb118.7c3c88",
+ "type": "comment",
+ "name": "update the founded connectivity to have a new coupling-flag",
+ "info": "",
+ "comments": "",
+ "x": 2679,
+ "y": 2010,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "12e95810.e72c78",
+ "type": "set",
+ "name": "set newFlag",
+ "xml": "<set>\n<parameter name='tmp.newFlag' value=\"`$tmp.the-connectivity.coupling-flag + '-' +\n $tmp.srcTtpdstTtpPair`\" />\n\n\n",
+ "comments": "",
+ "x": 2565,
+ "y": 2049,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "33021018.a90398",
+ "type": "save",
+ "name": "update connectivity resource in AAI",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \n key='connectivity.connectivity-id = $tmp.the-connectivity.connectivity-id'>\n<parameter name='connectivity-id' value='`$tmp.the-connectivity.connectivity-id`' />\n<parameter name='etht-svc-name' value='`$prop.ethernet-service-name`' />\n<parameter name='operational-status' value='Modified' />\n<parameter name='coupling-flag' value='`$tmp.newFlag`' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2629,
+ "y": 2094,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "75b8be3d.85a8b8",
+ "type": "comment",
+ "name": "the following two relationships should have already been there; if not => error",
+ "info": "",
+ "comments": "",
+ "x": 2721,
+ "y": 2144,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "158258b6.b1e20f",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1707,
+ "y": 1511,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "b5847157.d9e138",
+ "74407b46.6458d4",
+ "3919fe25.6022b2",
+ "7aa6415.034e74",
+ "e6bc04b6.f68c7",
+ "b2ea866b.5e679"
+ ]
+ ]
+ },
+ {
+ "id": "404765c9.b1c294",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1569,
+ "y": 1507,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "158258b6.b1e20f"
+ ]
+ ]
+ },
+ {
+ "id": "cd58f3fe.5b5bd",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 2367,
+ "y": 1974,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "7dc11394.4d1084",
+ "12e95810.e72c78",
+ "33021018.a90398",
+ "1837f35e.96c455"
+ ]
+ ]
+ },
+ {
+ "id": "af6449ff.709108",
+ "type": "comment",
+ "name": "loop through the relationships of this founded connectivity, then",
+ "info": "then find the vpn-binding that has same src ttp and dst ttp as this one",
+ "comments": "",
+ "x": 2372,
+ "y": 2399,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "e1d6f3c3.08e8e8",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='tcridx' start='0' end='`$tmp.the-connectivity.relationship-list.relationship_length`' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2714,
+ "y": 2435,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "32ed93c7.c50234"
+ ]
+ ]
+ },
+ {
+ "id": "32ed93c7.c50234",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.the-connectivity.relationship-list.relationship[$tcridx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2926,
+ "y": 2433,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "6fea52d2.2a0434"
+ ]
+ ]
+ },
+ {
+ "id": "6fea52d2.2a0434",
+ "type": "outcome",
+ "name": "vpn-binding",
+ "xml": "<outcome value='vpn-binding'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3110,
+ "y": 2431,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "37563c96.a6fb74"
+ ]
+ ]
+ },
+ {
+ "id": "37563c96.a6fb74",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3289,
+ "y": 2436,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "91050f7b.03c5c",
+ "30dac6e0.2f0b42"
+ ]
+ ]
+ },
+ {
+ "id": "30dac6e0.2f0b42",
+ "type": "set",
+ "name": "unset tmp.aai.vpn-binding",
+ "xml": "<set>\n<parameter name='tmp.aai.vpn-binding.' value='' />\n",
+ "comments": "",
+ "x": 3506,
+ "y": 2367,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "91050f7b.03c5c",
+ "type": "save",
+ "name": "get vpn-binding from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"vpn-binding\"\n\t key=\"vpn-binding.vpn-id = $tmp.the-connectivity.relationship-list.relationship[$tcridx].relationship-data[0].relationship-value\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"tmp.aai.vpn-binding\" >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3499,
+ "y": 2453,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "f42d3c95.007658",
+ "d20958c8.44b1d",
+ "dc1061ac.3194b8"
+ ]
+ ]
+ },
+ {
+ "id": "d20958c8.44b1d",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3712.490966796875,
+ "y": 2437.5740356445312,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "266b5e5.4c2c022"
+ ]
+ ]
+ },
+ {
+ "id": "266b5e5.4c2c022",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 3875.0625,
+ "y": 2436.8597412109375,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "ce39d5ca.3eb7",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 3876,
+ "y": 2482,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "dc1061ac.3194b8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3708,
+ "y": 2482,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "ce39d5ca.3eb7"
+ ]
+ ]
+ },
+ {
+ "id": "f42d3c95.007658",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3710,
+ "y": 2542,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "2eba9c97.d9e8d4"
+ ]
+ ]
+ },
+ {
+ "id": "2eba9c97.d9e8d4",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3879,
+ "y": 2541,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "7126e3c.be80d9c"
+ ]
+ ]
+ },
+ {
+ "id": "80b2f89e.8a165",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2503,
+ "y": 2433,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "e1d6f3c3.08e8e8",
+ "13b057e7.5ede5",
+ "8583f674.cce2c"
+ ]
+ ]
+ },
+ {
+ "id": "7126e3c.be80d9c",
+ "type": "switchNode",
+ "name": "switch srcTtp",
+ "xml": "<switch test='`$tmp.aai.vpn-binding.src-access-ltp-id == $tmp.otninfo[$otnidx].srcPort.src-tunnel-tp-id`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4078,
+ "y": 2542,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "379157c3.0db038"
+ ]
+ ]
+ },
+ {
+ "id": "379157c3.0db038",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4241,
+ "y": 2540,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "45526f50.00e348"
+ ]
+ ]
+ },
+ {
+ "id": "45526f50.00e348",
+ "type": "switchNode",
+ "name": "switch dstTtp",
+ "xml": "<switch test='`$tmp.aai.vpn-binding.dst-access-ltp-id == $tmp.otninfo[$otnidx].dstPort.dst-tunnel-tp-id`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4422,
+ "y": 2540,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "2e6d0f9b.a0852"
+ ]
+ ]
+ },
+ {
+ "id": "2e6d0f9b.a0852",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4585,
+ "y": 2538,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "6b6a34b7.0f115c"
+ ]
+ ]
+ },
+ {
+ "id": "22e286e0.93668a",
+ "type": "set",
+ "name": "set tmp.the-vpn-binding",
+ "xml": "<set>\n<parameter name='tmp.the-vpn-binding.' value='`$tmp.aai.vpn-binding.`' />\n",
+ "comments": "",
+ "x": 4942,
+ "y": 2545,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "6b6a34b7.0f115c",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4724,
+ "y": 2537,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ [
+ "22e286e0.93668a",
+ "db1e7b85.850cb8"
+ ]
+ ]
+ },
+ {
+ "id": "db1e7b85.850cb8",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 4888,
+ "y": 2589,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "13b057e7.5ede5",
+ "type": "set",
+ "name": "unset tmp.the-vpn-binding",
+ "xml": "<set>\n<parameter name='tmp.the-vpn-binding.' value='' />\n",
+ "comments": "",
+ "x": 2724,
+ "y": 2396,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "8d0325f2.b257c",
+ "type": "comment",
+ "name": "increase the bw of the-vpn-binding and change status to modified",
+ "info": "increase the bw of the-vpn-binding\nchange status to modified\n",
+ "comments": "",
+ "x": 2813,
+ "y": 2570,
+ "z": "a911d5ff.5ac84",
+ "wires": []
+ },
+ {
+ "id": "8583f674.cce2c",
+ "type": "save",
+ "name": "update vpn-binding otnIdx resource (aka. OTN) in AAI",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $tmp.the-vpn-binding.vpn-id' >\n<parameter name='vpn-id' value='`$tmp.the-vpn-binding.vpn-id`' />\n<!--<parameter name='vpn-name' value='`$prop.otn-tunnel-name`' />-->\n<!--<parameter name='customer-vpn-id' value='`($maxtpn + $gfp)`' />-->\n<parameter name='customer-vpn-id' value='`($tmp.the-vpn-binding.customer-vpn-id + $gfp)`' />\n\n<parameter name='route-distinguisher' value='`$gfp`' />\n<parameter name='operational-status' value='Modified' />\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2783,
+ "y": 2630,
+ "z": "a911d5ff.5ac84",
+ "wires": [
+ []
+ ]
+ }
+] \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-create-clean.json b/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-create-clean.json
new file mode 100644
index 00000000..5f709bf0
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-create-clean.json
@@ -0,0 +1,5239 @@
+[
+ {
+ "id": "4a2a1676.3e3ca",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 107,
+ "y": 137,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "4dd41696.2f452"
+ ]
+ ]
+ },
+ {
+ "id": "4dd41696.2f452",
+ "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": 391.2856903076172,
+ "y": 198.23810863494873,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "44e593d9.2efad4"
+ ]
+ ]
+ },
+ {
+ "id": "44e593d9.2efad4",
+ "type": "method",
+ "name": "method cll-vnf-topology-operation-cll-create-clean",
+ "xml": "<method rpc='cll-vnf-topology-operation-cll-create-clean' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 397.42860412597656,
+ "y": 283.0000305175781,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "49513b93.fc23ac"
+ ]
+ ]
+ },
+ {
+ "id": "49513b93.fc23ac",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 747,
+ "y": 342,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "b2135089.199e6",
+ "23db3db6.da8e02",
+ "2b8995d5.8b0c7a"
+ ]
+ ]
+ },
+ {
+ "id": "b2135089.199e6",
+ "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": 1048.33349609375,
+ "y": 612.9302978515625,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "23db3db6.da8e02",
+ "type": "save",
+ "name": "get service-instance from aai",
+ "xml": "<!--<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" -->\n<!--\tresource=\"service-instance\"-->\n<!--\tkey='service-instance.service-instance-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.service-instance-id-->\n<!-- AND customer.global-customer-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.global-customer-id -->\n<!-- AND service-subscription.service-type = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.subscription-service-type'-->\n<!--\tlocal-only=\"false\"-->\n<!--\tforce=\"true\" pfx=\"tmp.aai.service-instance\">-->\n\n<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"service-instance\"\n\tkey='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id\n AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id \n AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type'\n\tlocal-only=\"false\"\n\tforce=\"true\" pfx=\"tmp.aai.service-instance\">\n\n\n<!--<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" -->\n<!--\tresource=\"service-instance\"-->\n<!--\tkey='service-instance.service-instance-id = $service-data.service-information.service-instance-id-->\n<!-- AND customer.global-customer-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.global-customer-id -->\n<!-- AND service-subscription.service-type = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.subscription-service-type'-->\n<!--\tlocal-only=\"false\"-->\n<!--\tforce=\"true\" pfx=\"tmp.aai.service-instance\">-->",
+ "comments": "",
+ "outputs": 1,
+ "x": 1069.761962890625,
+ "y": 315.33331298828125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "b4c73c35.f93038",
+ "3d5524fd.e8ecb4",
+ "65a2b99e.db6b"
+ ]
+ ]
+ },
+ {
+ "id": "b4c73c35.f93038",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1294.761962890625,
+ "y": 173.33331298828125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "8dbada70.49fdc8"
+ ]
+ ]
+ },
+ {
+ "id": "3d5524fd.e8ecb4",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1290.2529296875,
+ "y": 242.9073486328125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "57a109f4.ebf0e8"
+ ]
+ ]
+ },
+ {
+ "id": "65a2b99e.db6b",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1278.761962890625,
+ "y": 289.33331298828125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "60bf0db6.5a7ed4"
+ ]
+ ]
+ },
+ {
+ "id": "b4e2ba33.09b93",
+ "type": "comment",
+ "name": "new for TransportSlicing",
+ "info": "",
+ "comments": "",
+ "x": 1048.761962890625,
+ "y": 203.33331298828125,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "2b8995d5.8b0c7a",
+ "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' />",
+ "comments": "",
+ "outputs": 1,
+ "x": 1036.761962890625,
+ "y": 255.33331298828125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "8dbada70.49fdc8",
+ "type": "switchNode",
+ "name": "switch allotted-resources_length != 0",
+ "xml": "<switch test='`$tmp.aai.service-instance.allotted-resources.allotted-resource_length != 0`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1535,
+ "y": 170,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "d1591597.ec80d8",
+ "57531373.e3de34"
+ ]
+ ]
+ },
+ {
+ "id": "57a109f4.ebf0e8",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 1445.0623779296875,
+ "y": 245.85977172851562,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "60bf0db6.5a7ed4",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 1449,
+ "y": 290,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "d1591597.ec80d8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1740,
+ "y": 207,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "4fdc9fba.45ecc"
+ ]
+ ]
+ },
+ {
+ "id": "57531373.e3de34",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1750,
+ "y": 134,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "4fdc9fba.45ecc",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1733,
+ "y": 282,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "a7b4edd.d51559",
+ "2c272659.3a51ba",
+ "5c772a63.5a0db4",
+ "289d87b9.bd6eb8",
+ "58aa906f.8d52e"
+ ]
+ ]
+ },
+ {
+ "id": "23486bfb.15b8c4",
+ "type": "save",
+ "name": "get allotted-resource from aai",
+ "xml": "<!--<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" -->\n<!--\tresource=\"allotted-resource\"-->\n<!--\tkey='service-instance.service-instance-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.service-instance-id-->\n<!-- AND customer.global-customer-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.global-customer-id -->\n<!-- AND service-subscription.service-type = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.subscription-service-type-->\n<!-- AND allotted-resource.id = $allotted-resource-id'-->\n<!--\tlocal-only=\"false\"-->\n<!--\tforce=\"true\" pfx=\"tmp.aai.allotted-resource\">-->\n\n<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"allotted-resource\"\n\tkey='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id\n AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id \n AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type\n AND allotted-resource.id = $allotted-resource-id'\n\tlocal-only=\"false\"\n\tforce=\"true\" pfx=\"tmp.aai.allotted-resource\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2219,
+ "y": 333,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "7220fecb.3a8288",
+ "32198bbf.43a4fc",
+ "5d55cc38.78e3ec"
+ ]
+ ]
+ },
+ {
+ "id": "7220fecb.3a8288",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2435,
+ "y": 400,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "fa7f120f.655768"
+ ]
+ ]
+ },
+ {
+ "id": "32198bbf.43a4fc",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2435.490966796875,
+ "y": 299.573974609375,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "b28e6d20.f339e8"
+ ]
+ ]
+ },
+ {
+ "id": "5d55cc38.78e3ec",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2431,
+ "y": 349,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "3d8a7dac.ce2c6a"
+ ]
+ ]
+ },
+ {
+ "id": "a7b4edd.d51559",
+ "type": "for",
+ "name": "for each allotted-resource",
+ "xml": "<for index='aridx' start='0' end='`$tmp.aai.service-instance.allotted-resources.allotted-resource_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1936,
+ "y": 314,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "88b22f1d.3626",
+ "23486bfb.15b8c4",
+ "8ffbf90a.9a2a4",
+ "9ccad127.ffcf6"
+ ]
+ ]
+ },
+ {
+ "id": "88b22f1d.3626",
+ "type": "set",
+ "name": "set the current allotted-resource-id",
+ "xml": "<set>\n<parameter name='allotted-resource-id' value=\"`$tmp.aai.service-instance.allotted-resources.allotted-resource[$aridx].id`\" />\n\n\n",
+ "comments": "",
+ "x": 2216,
+ "y": 252,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "289d87b9.bd6eb8",
+ "type": "set",
+ "name": "set tmp.arr",
+ "xml": "<set>\n<parameter name='tmp.arr' value='' />\n<parameter name='tmp.arridx' value='0' />\n<parameter name='tmp.arr_length' value='0' />\n\n<parameter name='otn-tunnel-slice' value='' />\n<parameter name='otn-tunnel-slice_length' value='0' />\n\n<!--<parameter name='tmp.slicevpns' value='' />-->\n<!--<parameter name='tmp.slicevpns_length' value='0' />-->\n\n<!--<parameter name='tmp.slicevpnuuids' value='' />-->\n<!--<parameter name='tmp.slicevpnuuids.' value='' />-->\n\n\n",
+ "comments": "",
+ "x": 1910,
+ "y": 264,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "2c272659.3a51ba",
+ "type": "get-resource",
+ "name": "get-resource pnfs-list",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"pnfs\"\n\t key=\"selflink = 'https://aai.onap:8443/aai/v24/network/pnfs?depth=0'\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"ccsdkTopopnfs\" >",
+ "comments": "",
+ "outputs": 1,
+ "x": 1953,
+ "y": 123,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "5c772a63.5a0db4",
+ "type": "get-resource",
+ "name": "get-resource logical-links",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"logical-links\"\n\t key=\"selflink = 'https://aai.onap:8443/aai/v24/network/logical-links?depth=0'\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"ccsdkTopologicalLinks\" >",
+ "comments": "",
+ "outputs": 1,
+ "x": 1965,
+ "y": 164,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "7c71ad84.2ad9d4",
+ "type": "comment",
+ "name": "The following two nodes are for PCE",
+ "info": "",
+ "comments": "",
+ "x": 1990,
+ "y": 76,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "f16230fe.988a5",
+ "type": "set",
+ "name": "set tmp.arr",
+ "xml": "<set>\n<parameter name='tmp.arr.' value='' />\n<parameter name='tmp.arridx' value='0' />\n<parameter name='otn-tunnel-slice.' value='' />\n\n\n",
+ "comments": "",
+ "x": 1910,
+ "y": 210,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "b28e6d20.f339e8",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 2614,
+ "y": 302,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "3d8a7dac.ce2c6a",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 2613.9375,
+ "y": 351.1402587890625,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "fa7f120f.655768",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2615.9375,
+ "y": 402.1402587890625,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "e41c6870.5c2ef8"
+ ]
+ ]
+ },
+ {
+ "id": "e41c6870.5c2ef8",
+ "type": "save",
+ "name": "get allotted-resource relationship from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"allotted-resource:relationship-list\"\n\tkey='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id\n AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id \n AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type\n AND allotted-resource.id = $allotted-resource-id'\n\tlocal-only=\"false\"\n\tforce=\"true\" pfx=\"tmp.aai.allotted-resource.relationship-list\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2908.9375,
+ "y": 349.1402587890625,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "54a2b596.71e144",
+ "d130d716.0cf7a",
+ "2cc5b868.058328"
+ ]
+ ]
+ },
+ {
+ "id": "d130d716.0cf7a",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3182.428466796875,
+ "y": 241.7142333984375,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "b3a5f124.2cf16"
+ ]
+ ]
+ },
+ {
+ "id": "b3a5f124.2cf16",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 3360,
+ "y": 242,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "2cc5b868.058328",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3177.9375,
+ "y": 291.1402587890625,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "c7a34562.68f14"
+ ]
+ ]
+ },
+ {
+ "id": "c7a34562.68f14",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 3359.9375,
+ "y": 291.1402587890625,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "54a2b596.71e144",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3181.9375,
+ "y": 342.1402587890625,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "bd0a4532.c3f628"
+ ]
+ ]
+ },
+ {
+ "id": "bd0a4532.c3f628",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3361.9375,
+ "y": 342.1402587890625,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "f545f705.e2438"
+ ]
+ ]
+ },
+ {
+ "id": "f545f705.e2438",
+ "type": "switchNode",
+ "name": "switch allotted-resource.relationship-list not empty",
+ "xml": "<switch test='`$tmp.aai.allotted-resource.relationship-list.relationship_length != 0`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2928,
+ "y": 477,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "333578f7.b029b",
+ "a1ea266d.8059"
+ ]
+ ]
+ },
+ {
+ "id": "a1ea266d.8059",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3238,
+ "y": 484,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "333578f7.b029b",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3237,
+ "y": 538,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "76551384.dcd284"
+ ]
+ ]
+ },
+ {
+ "id": "b7449756.393128",
+ "type": "outcome",
+ "name": "network-policy",
+ "xml": "<outcome value='network-policy'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3982,
+ "y": 492,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "497604b.3da63fc"
+ ]
+ ]
+ },
+ {
+ "id": "497604b.3da63fc",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4158.9998779296875,
+ "y": 484.9998779296875,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "5622eb31.c6aaa4",
+ "f42a71d2.4e018"
+ ]
+ ]
+ },
+ {
+ "id": "76551384.dcd284",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3401,
+ "y": 464,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "4cba462a.39c2",
+ "cfce2e8c.cb8c08"
+ ]
+ ]
+ },
+ {
+ "id": "4cba462a.39c2",
+ "type": "for",
+ "name": "for each allotted-resource relationship",
+ "xml": "<for index='idx' start='0' end='`$tmp.aai.allotted-resource.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3682,
+ "y": 420,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "96ce5ffe.418c6"
+ ]
+ ]
+ },
+ {
+ "id": "96ce5ffe.418c6",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.allotted-resource.relationship-list.relationship[$idx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3944,
+ "y": 420,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "b7449756.393128"
+ ]
+ ]
+ },
+ {
+ "id": "5622eb31.c6aaa4",
+ "type": "set",
+ "name": "set the 1st network-policy-id",
+ "xml": "<set>\n<parameter name='network-policy-id' value=\"`$tmp.aai.allotted-resource.relationship-list.relationship[$idx].relationship-data[0].relationship-value`\" />\n\n\n",
+ "comments": "",
+ "x": 4401.9998779296875,
+ "y": 441.9998779296875,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "f42a71d2.4e018",
+ "type": "save",
+ "name": "get network-policy from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"network-policy\"\n\tkey='network-policy.network-policy-id = $network-policy-id'\n\tlocal-only=\"false\"\n\tforce=\"true\" pfx=\"tmp.aai.network-policy\">",
+ "comments": "",
+ "outputs": 1,
+ "x": 4390.9998779296875,
+ "y": 496.9998779296875,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "d27d0859.022f28",
+ "109e108a.071aff",
+ "335266e0.15cee2"
+ ]
+ ]
+ },
+ {
+ "id": "335266e0.15cee2",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4644,
+ "y": 383,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "a7539c87.81698"
+ ]
+ ]
+ },
+ {
+ "id": "a7539c87.81698",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 4792.571533203125,
+ "y": 383.2857666015625,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "3deb078.64eee78",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 4791.509033203125,
+ "y": 427.426025390625,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "109e108a.071aff",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4632.509033203125,
+ "y": 427.426025390625,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "3deb078.64eee78"
+ ]
+ ]
+ },
+ {
+ "id": "d27d0859.022f28",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4639.509033203125,
+ "y": 506.426025390625,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "fa515a9e.7b382"
+ ]
+ ]
+ },
+ {
+ "id": "fa515a9e.7b382",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4778.509033203125,
+ "y": 506.426025390625,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "f8e42c4e.db7c",
+ "af21638c.1e4978"
+ ]
+ ]
+ },
+ {
+ "id": "f8e42c4e.db7c",
+ "type": "set",
+ "name": "set the max bandwidth",
+ "xml": "<set>\n<parameter name='maximum-bandwidth' value=\"`$tmp.aai.network-policy.max-bandwidth`\" />\n<parameter name='route-distinguisher' value='`$maximum-bandwidth /1000 *4 /5 +1`' />\n\n\n\n",
+ "comments": "",
+ "x": 4984,
+ "y": 504,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "af21638c.1e4978",
+ "type": "set",
+ "name": "set the max bandwidth",
+ "xml": "<set>\n<parameter name='gfp' value='`$maximum-bandwidth /1000 *4 /5 +1`' />\n\n\n\n",
+ "comments": "",
+ "x": 4983,
+ "y": 550,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "cfce2e8c.cb8c08",
+ "type": "for",
+ "name": "for each allotted-resource relationship",
+ "xml": "<for index='idx' start='0' end='`$tmp.aai.allotted-resource.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3499,
+ "y": 536,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "d81e40de.4db928"
+ ]
+ ]
+ },
+ {
+ "id": "d81e40de.4db928",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.allotted-resource.relationship-list.relationship[$idx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3779,
+ "y": 536,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "5031094a.3c0128"
+ ]
+ ]
+ },
+ {
+ "id": "5031094a.3c0128",
+ "type": "outcome",
+ "name": "logical-link",
+ "xml": "<outcome value='logical-link'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2192.0001220703125,
+ "y": 789.0001220703125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "e73c28db.21f4e"
+ ]
+ ]
+ },
+ {
+ "id": "e73c28db.21f4e",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2369,
+ "y": 782,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "315e52b1.1cc22e",
+ "35f8f7f9.459f"
+ ]
+ ]
+ },
+ {
+ "id": "315e52b1.1cc22e",
+ "type": "set",
+ "name": "set the current logical-link-name",
+ "xml": "<set>\n<parameter name='logical-link-name' value=\"`$tmp.aai.allotted-resource.relationship-list.relationship[$idx].relationship-data[0].relationship-value`\" />\n\n\n",
+ "comments": "",
+ "x": 2612,
+ "y": 739,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "35f8f7f9.459f",
+ "type": "save",
+ "name": "get logical-link from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"logical-link\"\n\tkey='logical-link.link-name = $logical-link-name'\n\tlocal-only=\"false\"\n\tforce=\"true\" pfx=\"tmp.aai.logical-link\">",
+ "comments": "",
+ "outputs": 1,
+ "x": 2601,
+ "y": 794,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "d939ca6a.3080e8",
+ "9cfbb845.158be",
+ "6d8b4fc3.7b3018"
+ ]
+ ]
+ },
+ {
+ "id": "d939ca6a.3080e8",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2892.490966796875,
+ "y": 772.573974609375,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "107f7ba4.2d7e2c"
+ ]
+ ]
+ },
+ {
+ "id": "9cfbb845.158be",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2881,
+ "y": 817,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "acf32404.78571"
+ ]
+ ]
+ },
+ {
+ "id": "107f7ba4.2d7e2c",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 3041.0625,
+ "y": 772.8597412109375,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "acf32404.78571",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 3040,
+ "y": 817,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "6d8b4fc3.7b3018",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2888,
+ "y": 896,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "5fee2f71.e558f"
+ ]
+ ]
+ },
+ {
+ "id": "5fee2f71.e558f",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 3027,
+ "y": 896,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "eaccb004.7e72b",
+ "eb22e702.6eba4",
+ "86c2cb32.4be2a",
+ "1855e375.e26f95",
+ "a98465a.ebb3518",
+ "c39134de.e7bb78",
+ "2345afcc.0ac648",
+ "a5a8afe4.995398",
+ "2419d5d3.394c4a",
+ "7c523485.24203c",
+ "6836f0a.48b871",
+ "b794c846.a3a7a8",
+ "2e62e80b.5f4db"
+ ]
+ ]
+ },
+ {
+ "id": "ecf79c2.e9d746",
+ "type": "execute",
+ "name": "execute UUID generator for ethernet-service-name",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.ethernet-service-name\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3341,
+ "y": 702,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "eaccb004.7e72b",
+ "type": "execute",
+ "name": "execute UUID generator for otn-tunnel-name",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.otn-tunnel-name\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3322,
+ "y": 752,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "c7da7bbe.4fbda",
+ "type": "set",
+ "name": "set new ethernet-service-name",
+ "xml": "<set>\n<!--<parameter name='prop.ethernet-service-name' value=\"`$tmp.aai.logical-link.link-name`\" />-->\n<parameter name='prop.ethernet-service-name' value=\"`$tmp.aai.logical-link.link-id`\" />\n\n\n",
+ "comments": "",
+ "x": 3279,
+ "y": 797,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "eb22e702.6eba4",
+ "type": "set",
+ "name": "set network-route-one",
+ "xml": "<set>\n<parameter name='network-route-one' value=\"`$tmp.aai.logical-link.link-name`\" />\n\n\n",
+ "comments": "",
+ "x": 3254,
+ "y": 860,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "86c2cb32.4be2a",
+ "type": "set",
+ "name": "set network-route-two",
+ "xml": "<set>\n<parameter name='network-route-two' value=\"`$tmp.aai.logical-link.link-name2`\" />\n\n\n",
+ "comments": "",
+ "x": 3255,
+ "y": 915,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "1855e375.e26f95",
+ "type": "save",
+ "name": "get network-route-one from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"network-route\"\n\tkey='network-route.route-id = $network-route-one'\n\tlocal-only=\"false\"\n\tforce=\"true\" pfx=\"tmp.aai.network-route-one\">",
+ "comments": "",
+ "outputs": 1,
+ "x": 3271,
+ "y": 963,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "a1f10f8e.c2622",
+ "ab6386aa.ce2908",
+ "465cfd34.a22f5c"
+ ]
+ ]
+ },
+ {
+ "id": "a98465a.ebb3518",
+ "type": "save",
+ "name": "get network-route-two from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"network-route\"\n\tkey='network-route.route-id = $network-route-two'\n\tlocal-only=\"false\"\n\tforce=\"true\" pfx=\"tmp.aai.network-route-two\">",
+ "comments": "",
+ "outputs": 1,
+ "x": 3260,
+ "y": 1049.9998779296875,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "1727bd6.343d1c3",
+ "193b021d.8148b6",
+ "fa057cc5.1269c"
+ ]
+ ]
+ },
+ {
+ "id": "a1f10f8e.c2622",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3472,
+ "y": 847,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "ef53d37a.78768"
+ ]
+ ]
+ },
+ {
+ "id": "ab6386aa.ce2908",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3467.509033203125,
+ "y": 896.426025390625,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "2e203f6c.c03ed"
+ ]
+ ]
+ },
+ {
+ "id": "465cfd34.a22f5c",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3471.509033203125,
+ "y": 949.426025390625,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "187fdc98.499a83"
+ ]
+ ]
+ },
+ {
+ "id": "ef53d37a.78768",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 3620.571533203125,
+ "y": 846.2857666015625,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "2e203f6c.c03ed",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 3610.509033203125,
+ "y": 896.426025390625,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "1727bd6.343d1c3",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3483,
+ "y": 1019.9998779296875,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "d09d8aa1.f9ab4"
+ ]
+ ]
+ },
+ {
+ "id": "193b021d.8148b6",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3478.509033203125,
+ "y": 1069.4259033203125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "b9e292a1.c9c0e8"
+ ]
+ ]
+ },
+ {
+ "id": "fa057cc5.1269c",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3479.509033203125,
+ "y": 1122.4259033203125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "eb27f87a.b5a63"
+ ]
+ ]
+ },
+ {
+ "id": "d09d8aa1.f9ab4",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 3631.571533203125,
+ "y": 1019.28564453125,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "b9e292a1.c9c0e8",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 3621.509033203125,
+ "y": 1069.4259033203125,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "187fdc98.499a83",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3633,
+ "y": 949,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "c01f8fee.f337d8"
+ ]
+ ]
+ },
+ {
+ "id": "eb27f87a.b5a63",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3633,
+ "y": 1121.9998779296875,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "1b75ad85.419ffa"
+ ]
+ ]
+ },
+ {
+ "id": "c01f8fee.f337d8",
+ "type": "switchNode",
+ "name": "switch nr type",
+ "xml": "<switch test='`$tmp.aai.network-route-one.type`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3805,
+ "y": 949,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "363c4a34.666d16",
+ "db7701b7.1114a8"
+ ]
+ ]
+ },
+ {
+ "id": "1b75ad85.419ffa",
+ "type": "switchNode",
+ "name": "switch nr type",
+ "xml": "<switch test='`$tmp.aai.network-route-two.type`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3806,
+ "y": 1122,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "be2b6c76.ff3af8",
+ "8a677a0d.0b4e4"
+ ]
+ ]
+ },
+ {
+ "id": "363c4a34.666d16",
+ "type": "outcome",
+ "name": "ROOT",
+ "xml": "<outcome value='ROOT'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3981,
+ "y": 928,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "91c5280b.7efb48"
+ ]
+ ]
+ },
+ {
+ "id": "db7701b7.1114a8",
+ "type": "outcome",
+ "name": "LEAF",
+ "xml": "<outcome value='LEAF'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3983,
+ "y": 982,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "feb127dc.b0fca"
+ ]
+ ]
+ },
+ {
+ "id": "be2b6c76.ff3af8",
+ "type": "outcome",
+ "name": "ROOT",
+ "xml": "<outcome value='ROOT'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3982,
+ "y": 1092,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "66434378.88cb14"
+ ]
+ ]
+ },
+ {
+ "id": "8a677a0d.0b4e4",
+ "type": "outcome",
+ "name": "LEAF",
+ "xml": "<outcome value='LEAF'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3984,
+ "y": 1146,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "7a8a47a9.7cb0d8"
+ ]
+ ]
+ },
+ {
+ "id": "9215f524.47a16",
+ "type": "set",
+ "name": "set network-route-ROOT",
+ "xml": "<set>\n<parameter name='tmp.aai.network-route-ROOT.' value=\"`$tmp.aai.network-route-one.`\" />\n\n\n",
+ "comments": "",
+ "x": 4291,
+ "y": 880,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "c685113.a58967",
+ "type": "set",
+ "name": "set network-route-LEAF",
+ "xml": "<set>\n<parameter name='tmp.aai.network-route-LEAF.' value=\"`$tmp.aai.network-route-one.`\" />\n\n\n",
+ "comments": "",
+ "x": 4284,
+ "y": 978,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "9ce6893.2318f78",
+ "type": "set",
+ "name": "set network-route-ROOT",
+ "xml": "<set>\n<parameter name='tmp.aai.network-route-ROOT.' value=\"`$tmp.aai.network-route-two.`\" />\n\n\n",
+ "comments": "",
+ "x": 4284,
+ "y": 1065,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "82c37441.0afd98",
+ "type": "set",
+ "name": "set network-route-LEAF",
+ "xml": "<set>\n<parameter name='tmp.aai.network-route-LEAF.' value=\"`$tmp.aai.network-route-two.`\" />\n\n\n",
+ "comments": "",
+ "x": 4288,
+ "y": 1158,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "33d383f1.734384",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3515,
+ "y": 1567,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "538c6639.6c6368"
+ ]
+ ]
+ },
+ {
+ "id": "1103f778.e68a59",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3524.490966796875,
+ "y": 1609.5740356445312,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "a7a47c61.df546"
+ ]
+ ]
+ },
+ {
+ "id": "e542ccd0.a278f8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3513,
+ "y": 1656,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "754b02d5.434a64"
+ ]
+ ]
+ },
+ {
+ "id": "9291fa20.ad2b7",
+ "type": "comment",
+ "name": "Question?",
+ "info": "How to know if DG would send this get request\nin \"nodes\" namespace instead of \"network\" namespace?",
+ "comments": "",
+ "x": 3215,
+ "y": 1529,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "2345afcc.0ac648",
+ "type": "save",
+ "name": "get p-interface-src from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"p-interface\"\n\t key=\"pnf.pnf-name = $tmp.src.domainA.pnf-name\n\t AND p-interface.interface-name = $tmp.aai.network-route-A.next-hop\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"tmp.aai.network-route-A.p-interface-src\" >\n\n<!--<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" -->\n<!--\tresource=\"p-interface\"-->\n<!--\t key=\"pnf.pnf-name = $unique-src-node-Id-->\n<!--\t and p-interface.interface-name = $tmp.aai.endpointA.relationship-list.relationship[$rel-index].relationship-data[0].relationship-value\"-->\n<!--\t\tlocal-only=\"false\" -->\n<!--\t\tpfx=\"tmp.aai.endpointA.p-interface-src\" >-->\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3258,
+ "y": 1594,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "33d383f1.734384",
+ "1103f778.e68a59",
+ "e542ccd0.a278f8"
+ ]
+ ]
+ },
+ {
+ "id": "c39134de.e7bb78",
+ "type": "execute",
+ "name": "execute split tp-id to get pnf-name",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$tmp.aai.network-route-A.next-hop`'/>\n<!--<parameter name=\"regex\" value=\"[^-]+$\"/>-->\n<parameter name=\"regex\" value=\"[-]+\"/>\n<parameter name=\"ctx_memory_result_key\" value=\"param-prefix-domainA-pnfName\"/>\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3259,
+ "y": 1264,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "846097ad.2e1c3",
+ "39e06a12.c523ae"
+ ]
+ ]
+ },
+ {
+ "id": "39e06a12.c523ae",
+ "type": "failure",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3482,
+ "y": 1250,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "f0966fa1.0b829"
+ ]
+ ]
+ },
+ {
+ "id": "846097ad.2e1c3",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3484,
+ "y": 1283,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "36674d51.b9eb9a"
+ ]
+ ]
+ },
+ {
+ "id": "538c6639.6c6368",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3687.66650390625,
+ "y": 1566,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "6fff18a2.92ea08",
+ "f3044461.d6a5a8"
+ ]
+ ]
+ },
+ {
+ "id": "a7a47c61.df546",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 3678.0623779296875,
+ "y": 1612.8597717285156,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "754b02d5.434a64",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 3682,
+ "y": 1657,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "6fff18a2.92ea08",
+ "type": "execute",
+ "name": "execute split tp-id to get pnf-name",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$tmp.aai.network-route-A.p-interface-src.interface-name`'/>\n<!--<parameter name=\"regex\" value=\"[^-]+$\"/>-->\n<parameter name=\"regex\" value=\"[-]+\"/>\n<parameter name=\"ctx_memory_result_key\" value=\"param-prefix-domainA\"/>\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3952,
+ "y": 1550,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "d1ee9b94.2f27a",
+ "6eb5b0d3.7baf78"
+ ]
+ ]
+ },
+ {
+ "id": "6eb5b0d3.7baf78",
+ "type": "failure",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4175,
+ "y": 1505,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "f1c76342.65c028"
+ ]
+ ]
+ },
+ {
+ "id": "d1ee9b94.2f27a",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4177,
+ "y": 1569,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "7b8cb4e4.928c34"
+ ]
+ ]
+ },
+ {
+ "id": "7b8cb4e4.928c34",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while splitting sna1_route\" />\n",
+ "comments": "",
+ "x": 4339,
+ "y": 1565,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "f1c76342.65c028",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4340,
+ "y": 1502,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "2b4fe89a.1b97b",
+ "666bc5e4.57107c"
+ ]
+ ]
+ },
+ {
+ "id": "272ec148.b5240e",
+ "type": "save",
+ "name": "save connectivity resource in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \n key='connectivity.connectivity-id = $uuid.connectivity-domainA-uuid'>\n<parameter name='connectivity-id' value='`$uuid.connectivity-domainA-uuid`' />\n<parameter name='etht-svc-name' value='`$prop.ethernet-service-name`' />\n<parameter name='operational-status' value='Created' />\n<parameter name='access-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />\n<parameter name='access-client-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -7]`' />\n<parameter name='access-topology-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -5]`' />\n<parameter name='access-node-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />\n<parameter name='access-ltp-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -1]`' />\n<parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />\n\n<parameter name='bandwidth-profile-name' value='`$gfp`' />\n<parameter name='vpn-type' value='`$prop.sotn.vpnType`' />\n<parameter name='cir' value='`$gfp *1000000`' />\n<parameter name='eir' value='`$gfp *1000000`' />\n<parameter name='cbs' value='`$prop.sotn.cbs`' />\n<parameter name='ebs' value='`$prop.sotn.ebs`' />\n<!--<parameter name='color-aware' value='`$prop.sotn.colorAware`' />-->\n<!--<parameter name='coupling-flag' value='`$prop.sotn.couplingFlag`' />-->\n<!--<parameter name='etht-svc-name' value='`$prop.sotn.etht-svc-name`' />-->\n<parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />\n<parameter name='connectivity-selflink' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $network-topology-operation-input.service-information.service-instance-id + '/service-data/networks/network/' + $prop.sotn.network-id + '/network-data/'` \" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3954,
+ "y": 1709,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "5865c90a.cd5358",
+ "type": "execute",
+ "name": "execute UUID generator for connectivity domainA",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"uuid.connectivity-domainA-uuid\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3999,
+ "y": 1619,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "cab25a0.579bfa8",
+ "type": "save",
+ "name": "save TNNSSI (transport service instance) relationship to connectivity in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' \n key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id\n AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id \n AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $uuid.connectivity-domainA-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$uuid.connectivity-domainA-uuid`\" />\n\n\n<!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' -->\n<!-- key='service-instance.service-instance-id = $service-data.service-information.service-instance-id -->\n<!-- AND customer.global-customer-id = $service-data.networks.network[$nidx].network-data.service-information.global-customer-id -->\n<!-- AND service-subscription.service-type = $service-data.networks.network[$nidx].network-data.service-information.subscription-service-type' -->\n<!-- force=\"true\" pfx=\"tmp.AnAI-data\">-->\n<!--<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.sotn.network-id`\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.sotn.network-id`\" />-->",
+ "comments": "",
+ "outputs": 1,
+ "x": 4082,
+ "y": 1757,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "36674d51.b9eb9a",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while splitting sna1_route\" />\n",
+ "comments": "",
+ "x": 3627,
+ "y": 1280,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "f0966fa1.0b829",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3630,
+ "y": 1243,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "1289ab88.c47cfc",
+ "43b7d27f.a3c314"
+ ]
+ ]
+ },
+ {
+ "id": "1289ab88.c47cfc",
+ "type": "set",
+ "name": "set pnf-name",
+ "xml": "<set>\n<parameter name='tmp.src.domainA.pnf-name' value=\"`$param-prefix-domainA-pnfName[0] + '-' +\n $param-prefix-domainA-pnfName[1] + '-' +\n $param-prefix-domainA-pnfName[2] + '-' +\n $param-prefix-domainA-pnfName[3] + '-' +\n $param-prefix-domainA-pnfName[4] + '-' +\n $param-prefix-domainA-pnfName[5] + '-' +\n $param-prefix-domainA-pnfName[6] + '-' +\n $param-prefix-domainA-pnfName[7] + '-' +\n $param-prefix-domainA-pnfName[8]`\" />\n",
+ "comments": "",
+ "x": 3804,
+ "y": 1199,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "f3044461.d6a5a8",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='pividx' start='0' end='`$tmp.aai.network-route-A.p-interface-src.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3906,
+ "y": 1834,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "1efd3cc0.01265b"
+ ]
+ ]
+ },
+ {
+ "id": "1efd3cc0.01265b",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.network-route-A.p-interface-src.relationship-list.relationship[$pividx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4112,
+ "y": 1834,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "42b8e904.3e26e8"
+ ]
+ ]
+ },
+ {
+ "id": "42b8e904.3e26e8",
+ "type": "outcome",
+ "name": "tunnel-termination-point",
+ "xml": "<outcome value='tunnel-termination-point'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4327.28564453125,
+ "y": 1833.82177734375,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "c27d35dc.5f20a"
+ ]
+ ]
+ },
+ {
+ "id": "43b7d27f.a3c314",
+ "type": "get-resource",
+ "name": "get-resource src pnf",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"pnf\" \n\t\tkey=\"pnf.pnf-name = $tmp.src.domainA.pnf-name\"\n pfx='tmp.aai.source-pnf' local-only='false' >\n\n <!--AND depth = '0'\"-->\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3819,
+ "y": 1310,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "818754d0.62847",
+ "ffd47564.1fe1e",
+ "154b0ca5.d55e4b"
+ ]
+ ]
+ },
+ {
+ "id": "818754d0.62847",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4014.5001220703125,
+ "y": 1262,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "c3499a0a.3a08a"
+ ]
+ ]
+ },
+ {
+ "id": "ffd47564.1fe1e",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4006.5001220703125,
+ "y": 1317,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "deee5298.4209e"
+ ]
+ ]
+ },
+ {
+ "id": "154b0ca5.d55e4b",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4011.5001220703125,
+ "y": 1374,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "a4184f75.2f4fc8"
+ ]
+ ]
+ },
+ {
+ "id": "a4184f75.2f4fc8",
+ "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": 4163.5001220703125,
+ "y": 1375,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "deee5298.4209e",
+ "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": 4174.5001220703125,
+ "y": 1320,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "c3499a0a.3a08a",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4158.8824462890625,
+ "y": 1259.6556701660156,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "ece91d8.33480e"
+ ]
+ ]
+ },
+ {
+ "id": "ece91d8.33480e",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='spvidx' start='0' end='`$tmp.aai.source-pnf.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4343,
+ "y": 1274,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "3d2e74e0.b28254"
+ ]
+ ]
+ },
+ {
+ "id": "666bc5e4.57107c",
+ "type": "set",
+ "name": "set ltpId",
+ "xml": "<set>\n<parameter name='tmp.src.ltpId' value='`$param-prefix-domainA[$param-prefix-domainA_length -1]`' />\n",
+ "comments": "",
+ "x": 4510,
+ "y": 1460,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "2b4fe89a.1b97b",
+ "type": "set",
+ "name": "set pnf-name",
+ "xml": "<set>\n<parameter name='tmp.src.pnf-name' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />\n",
+ "comments": "",
+ "x": 4511,
+ "y": 1568,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "990e20c9.dc548",
+ "type": "comment",
+ "name": "TODO: FIXME",
+ "info": "using the output of regex string arrays,\nconcatinate index 0 to index[length-2] all together\nin order to assemble the correct pnf-name",
+ "comments": "",
+ "x": 4512,
+ "y": 1517,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "c27d35dc.5f20a",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4534.1171875,
+ "y": 1834.34033203125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "4705b8ac.369ff8",
+ "140bf681.97f4d1",
+ "169362ec.4e0805"
+ ]
+ ]
+ },
+ {
+ "id": "4705b8ac.369ff8",
+ "type": "set",
+ "name": "set source ttp-id",
+ "xml": "<set>\n<parameter name='tmp.source.ttp-id' value=\"`$tmp.aai.network-route-A.p-interface-src.relationship-list.relationship[$pividx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 4749.1171875,
+ "y": 1796.34033203125,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "140bf681.97f4d1",
+ "type": "get-resource",
+ "name": "get-resource src TTP",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"tunnel-termination-point\" \n\t\tkey=\"tunnel-termination-point.ttp-id = $tmp.source.ttp-id \n\t\tAND depth = '0'\"\n pfx='tmp.aai.source-ttp' local-only='false' >\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4746.1171875,
+ "y": 1835.34033203125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "44788f51.dcb608"
+ ]
+ ]
+ },
+ {
+ "id": "169362ec.4e0805",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 4701.6171875,
+ "y": 1877.34033203125,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "44788f51.dcb608",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4926.6171875,
+ "y": 1834.34033203125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "96d5e3b9.3b004"
+ ]
+ ]
+ },
+ {
+ "id": "a25be771.e58d08",
+ "type": "outcome",
+ "name": "esr-thirdparty-sdnc",
+ "xml": "<outcome value='esr-thirdparty-sdnc'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4741,
+ "y": 1278,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "766cd179.71ceb"
+ ]
+ ]
+ },
+ {
+ "id": "766cd179.71ceb",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4918,
+ "y": 1270,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "4a39420e.bbc88c",
+ "db93fd8f.b0686"
+ ]
+ ]
+ },
+ {
+ "id": "3d2e74e0.b28254",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4538,
+ "y": 1274,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "a25be771.e58d08",
+ "a5fe54fc.22f278"
+ ]
+ ]
+ },
+ {
+ "id": "a5fe54fc.22f278",
+ "type": "outcome",
+ "name": "network-resource",
+ "xml": "<outcome value='network-resource'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 4744,
+ "y": 1352,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "b8ffc162.40264"
+ ]
+ ]
+ },
+ {
+ "id": "b8ffc162.40264",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4921,
+ "y": 1344,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "401010e9.39d95"
+ ]
+ ]
+ },
+ {
+ "id": "96d5e3b9.3b004",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 5084.6171875,
+ "y": 1834.34033203125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "8dcf461b.b0a6b8"
+ ]
+ ]
+ },
+ {
+ "id": "8dcf461b.b0a6b8",
+ "type": "set",
+ "name": "set source tunnel tp ip",
+ "xml": "<set>\n<parameter name='source.tunnel-tp-id' value=\"`$tmp.aai.source-ttp.tunnel-tp-id`\" />\n",
+ "comments": "",
+ "x": 5291.6171875,
+ "y": 1834.34033203125,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "db93fd8f.b0686",
+ "type": "execute",
+ "name": "get 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.domainA.esr-thirdparty-id AND \n\t\t depth = '1'\"\n pfx='tmp.aai.domainA.esr-thirdparty-sdnc' local-only='false' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 5126,
+ "y": 1277,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "1554906a.f71e68",
+ "e44344a3.bb67b8",
+ "e5d285d7.a1a42"
+ ]
+ ]
+ },
+ {
+ "id": "4a39420e.bbc88c",
+ "type": "set",
+ "name": "set esr-thirdparty-sdnc domainA id",
+ "xml": "<set>\n<parameter name='tmp.domainA.esr-thirdparty-id' value=\"`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 5156,
+ "y": 1225,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "1554906a.f71e68",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5336,
+ "y": 1268,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "169a2bda.d46874"
+ ]
+ ]
+ },
+ {
+ "id": "e44344a3.bb67b8",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5328,
+ "y": 1323,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "81a51254.f91678"
+ ]
+ ]
+ },
+ {
+ "id": "e5d285d7.a1a42",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5333,
+ "y": 1380,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "318f7e74.4a0292"
+ ]
+ ]
+ },
+ {
+ "id": "318f7e74.4a0292",
+ "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": 5485,
+ "y": 1381,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "81a51254.f91678",
+ "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": 5496,
+ "y": 1326,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "169a2bda.d46874",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 5480.38232421875,
+ "y": 1265.6556701660156,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "40d562bc.5b73a4"
+ ]
+ ]
+ },
+ {
+ "id": "401010e9.39d95",
+ "type": "set",
+ "name": "set domainA ethernet layer network-id",
+ "xml": "<set>\n<parameter name='tmp.domainA.eth-network-id' value=\"`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 5156,
+ "y": 1468,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "40d562bc.5b73a4",
+ "type": "set",
+ "name": "set controller domainA data",
+ "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainA.url' value=\"`$tmp.aai.domainA.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainA.user' value=\"`$tmp.aai.domainA.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainA.password' value=\"`$tmp.aai.domainA.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`\" />\n\n\n<!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->\n<!--<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`\" />-->\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=\"get\"/>-->\n<!--<parameter name=\"responsePrefix\" value=\"topology\"/>-->\n<!--<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.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",
+ "comments": "",
+ "x": 5695,
+ "y": 1262,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "8e9cd61c.43d1a",
+ "type": "set",
+ "name": "set network-route-B",
+ "xml": "<set>\n<parameter name='tmp.aai.network-route-B.' value=\"`$tmp.aai.network-route-one.`\" />\n\n\n",
+ "comments": "",
+ "x": 4279,
+ "y": 916,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "ecfdf50c.08026",
+ "type": "set",
+ "name": "set network-route-A",
+ "xml": "<set>\n<parameter name='tmp.aai.network-route-A.' value=\"`$tmp.aai.network-route-one.`\" />\n\n\n",
+ "comments": "",
+ "x": 4270,
+ "y": 1014,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "91c5280b.7efb48",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4104,
+ "y": 922,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "9215f524.47a16",
+ "8e9cd61c.43d1a"
+ ]
+ ]
+ },
+ {
+ "id": "feb127dc.b0fca",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4110,
+ "y": 986,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "c685113.a58967",
+ "ecfdf50c.08026"
+ ]
+ ]
+ },
+ {
+ "id": "66434378.88cb14",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4110,
+ "y": 1092,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "9ce6893.2318f78",
+ "caa465e0.6dcff"
+ ]
+ ]
+ },
+ {
+ "id": "7a8a47a9.7cb0d8",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4113,
+ "y": 1145,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "82c37441.0afd98",
+ "7e59d376.e30294"
+ ]
+ ]
+ },
+ {
+ "id": "caa465e0.6dcff",
+ "type": "set",
+ "name": "set network-route-B",
+ "xml": "<set>\n<parameter name='tmp.aai.network-route-B.' value=\"`$tmp.aai.network-route-two.`\" />\n\n\n",
+ "comments": "",
+ "x": 4270,
+ "y": 1105,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "7e59d376.e30294",
+ "type": "set",
+ "name": "set network-route-A",
+ "xml": "<set>\n<parameter name='tmp.aai.network-route-A.' value=\"`$tmp.aai.network-route-two.`\" />\n\n\n",
+ "comments": "",
+ "x": 4273,
+ "y": 1196,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "c59f074a.c0fcd",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3645,
+ "y": 2406,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "e6449278.7ffcc8",
+ "87feacf7.c38bf8"
+ ]
+ ]
+ },
+ {
+ "id": "504f1aa.eb8e864",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3472.33349609375,
+ "y": 2407,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "c59f074a.c0fcd"
+ ]
+ ]
+ },
+ {
+ "id": "a37a9324.8cee68",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3481.824462890625,
+ "y": 2449.5740356445312,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "2466115d.057356"
+ ]
+ ]
+ },
+ {
+ "id": "73c3286f.8eb8c8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3470.33349609375,
+ "y": 2496,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "e7809543.d60ec"
+ ]
+ ]
+ },
+ {
+ "id": "2466115d.057356",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 3635.3958740234375,
+ "y": 2452.8597717285156,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "e7809543.d60ec",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 3639.33349609375,
+ "y": 2497,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "e6449278.7ffcc8",
+ "type": "execute",
+ "name": "execute split tp-id to get pnf-name",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$tmp.aai.network-route-B.p-interface-dst.interface-name`'/>\n<!--<parameter name=\"regex\" value=\"[^-]+$\"/>-->\n<parameter name=\"regex\" value=\"[-]+\"/>\n<parameter name=\"ctx_memory_result_key\" value=\"param-prefix-domainB\"/>\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3931.33349609375,
+ "y": 2410.0001220703125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "b831939d.d94",
+ "5cb920bb.aff4d"
+ ]
+ ]
+ },
+ {
+ "id": "5cb920bb.aff4d",
+ "type": "failure",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4154.33349609375,
+ "y": 2365.0001220703125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "cf6e6c99.56f7a"
+ ]
+ ]
+ },
+ {
+ "id": "b831939d.d94",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4156.33349609375,
+ "y": 2429.0001220703125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "3583978e.f629a8"
+ ]
+ ]
+ },
+ {
+ "id": "3583978e.f629a8",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while splitting sna1_route\" />\n",
+ "comments": "",
+ "x": 4315.33349609375,
+ "y": 2448.0001220703125,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "cf6e6c99.56f7a",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4319.33349609375,
+ "y": 2362.0001220703125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "528dc079.e1b708",
+ "ef41d4a6.237198"
+ ]
+ ]
+ },
+ {
+ "id": "70e4a574.f2fbdc",
+ "type": "save",
+ "name": "save connectivity resource in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \n key='connectivity.connectivity-id = $prop.connectivity-domainB-uuid'>\n<parameter name='connectivity-id' value='`$prop.connectivity-domainB-uuid`' />\n<parameter name='etht-svc-name' value='`$prop.ethernet-service-name`' />\n<parameter name='operational-status' value='Created' />\n<parameter name='access-provider-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -9]`' />\n<parameter name='access-client-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -7]`' />\n<parameter name='access-topology-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -5]`' />\n<parameter name='access-node-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -3]`' />\n<parameter name='access-ltp-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -1]`' />\n<parameter name='cvlan' value='`$tmp.aai.network-route-B.logical-interface-id`' />\n\n\n<parameter name='bandwidth-profile-name' value='`$gfp`' />\n<parameter name='vpn-type' value='`$prop.sotn.vpnType`' />\n<parameter name='cir' value='`$gfp *1000000`' />\n<parameter name='eir' value='`$gfp *1000000`' />\n<parameter name='cbs' value='`$prop.sotn.cbs`' />\n<parameter name='ebs' value='`$prop.sotn.ebs`' />\n<!--<parameter name='color-aware' value='`$prop.sotn.colorAware`' />-->\n<!--<parameter name='coupling-flag' value='`$prop.sotn.couplingFlag`' />-->\n<!--<parameter name='etht-svc-name' value='`$prop.sotn.etht-svc-name`' />-->\n<parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />\n<parameter name='connectivity-selflink' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $network-topology-operation-input.service-information.service-instance-id + '/service-data/networks/network/' + $prop.sotn.network-id + '/network-data/'` \" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3933.33349609375,
+ "y": 2569.0001220703125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "6fa4c461.e1732c",
+ "type": "execute",
+ "name": "execute UUID generator for connectivity domainB",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.connectivity-domainB-uuid\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3978.33349609375,
+ "y": 2479.0001220703125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "418cf3ce.c7d714",
+ "type": "save",
+ "name": "save TNNSSI (transport service instance) relationship to connectivity in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' \n key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id\n AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id \n AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.connectivity-domainB-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.connectivity-domainB-uuid`\" />\n\n\n<!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' -->\n<!-- key='service-instance.service-instance-id = $service-data.service-information.service-instance-id -->\n<!-- AND customer.global-customer-id = $service-data.networks.network[$nidx].network-data.service-information.global-customer-id -->\n<!-- AND service-subscription.service-type = $service-data.networks.network[$nidx].network-data.service-information.subscription-service-type' -->\n<!-- force=\"true\" pfx=\"tmp.AnAI-data\">-->\n<!--<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.sotn.network-id`\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.sotn.network-id`\" />-->",
+ "comments": "",
+ "outputs": 1,
+ "x": 4060.33349609375,
+ "y": 2634.0001220703125,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "2419d5d3.394c4a",
+ "type": "save",
+ "name": "get p-interface-dst from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"p-interface\"\n\t key=\"pnf.pnf-name = $tmp.dst.domainB.pnf-name\n\t AND p-interface.interface-name = $tmp.aai.network-route-B.next-hop\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"tmp.aai.network-route-B.p-interface-dst\" >\n\n<!--<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" -->\n<!--\tresource=\"p-interface\"-->\n<!--\t key=\"pnf.pnf-name = $unique-src-node-Id-->\n<!--\t and p-interface.interface-name = $tmp.aai.endpointA.relationship-list.relationship[$rel-index].relationship-data[0].relationship-value\"-->\n<!--\t\tlocal-only=\"false\" -->\n<!--\t\tpfx=\"tmp.aai.endpointA.p-interface-src\" >-->\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3244.33349609375,
+ "y": 2442,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "504f1aa.eb8e864",
+ "a37a9324.8cee68",
+ "73c3286f.8eb8c8"
+ ]
+ ]
+ },
+ {
+ "id": "b8dec384.717cf",
+ "type": "comment",
+ "name": "Question?",
+ "info": "How to know if DG would send this get request\nin \"nodes\" namespace instead of \"network\" namespace?",
+ "comments": "",
+ "x": 3205.33349609375,
+ "y": 2386,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "a5a8afe4.995398",
+ "type": "execute",
+ "name": "execute split tp-id to get pnf-name",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$tmp.aai.network-route-B.next-hop`'/>\n<!--<parameter name=\"regex\" value=\"[^-]+$\"/>-->\n<parameter name=\"regex\" value=\"[-]+\"/>\n<parameter name=\"ctx_memory_result_key\" value=\"param-prefix-domainB-pnfName\"/>\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3262.33349609375,
+ "y": 2104.9998779296875,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "9c54fa6.d2aa308",
+ "ba5d54d9.fee348"
+ ]
+ ]
+ },
+ {
+ "id": "ba5d54d9.fee348",
+ "type": "failure",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3485.33349609375,
+ "y": 2090.9998779296875,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "64c87509.eed4dc"
+ ]
+ ]
+ },
+ {
+ "id": "9c54fa6.d2aa308",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3487.33349609375,
+ "y": 2123.9998779296875,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "bff9d45d.398f6"
+ ]
+ ]
+ },
+ {
+ "id": "bff9d45d.398f6",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while splitting sna1_route\" />\n",
+ "comments": "",
+ "x": 3630.33349609375,
+ "y": 2120.9998779296875,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "64c87509.eed4dc",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3633.33349609375,
+ "y": 2083.9998779296875,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "68ddabff.26f77c",
+ "3932be0c.eefdc2"
+ ]
+ ]
+ },
+ {
+ "id": "68ddabff.26f77c",
+ "type": "set",
+ "name": "set pnf-name",
+ "xml": "<set>\n<parameter name='tmp.dst.domainB.pnf-name' value=\"`$param-prefix-domainB-pnfName[0] + '-' +\n $param-prefix-domainB-pnfName[1] + '-' +\n $param-prefix-domainB-pnfName[2] + '-' +\n $param-prefix-domainB-pnfName[3] + '-' +\n $param-prefix-domainB-pnfName[4] + '-' +\n $param-prefix-domainB-pnfName[5] + '-' +\n $param-prefix-domainB-pnfName[6] + '-' +\n $param-prefix-domainB-pnfName[7] + '-' +\n $param-prefix-domainB-pnfName[8]`\" />\n",
+ "comments": "",
+ "x": 3827.33349609375,
+ "y": 2087,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "87feacf7.c38bf8",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='dividx' start='0' end='`$tmp.aai.network-route-B.p-interface-dst.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3890.33349609375,
+ "y": 2719,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "1be50176.34f787"
+ ]
+ ]
+ },
+ {
+ "id": "1be50176.34f787",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.network-route-B.p-interface-dst.relationship-list.relationship[$dividx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4096.33349609375,
+ "y": 2719,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "e1f7ff3.daa43"
+ ]
+ ]
+ },
+ {
+ "id": "e1f7ff3.daa43",
+ "type": "outcome",
+ "name": "tunnel-termination-point",
+ "xml": "<outcome value='tunnel-termination-point'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4313.619140625,
+ "y": 2717.82177734375,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "2a02e2d9.dc0d9e"
+ ]
+ ]
+ },
+ {
+ "id": "3932be0c.eefdc2",
+ "type": "get-resource",
+ "name": "get-resource src pnf",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"pnf\" \n\t\tkey=\"pnf.pnf-name = $tmp.dst.domainB.pnf-name\"\n pfx='tmp.aai.destination-pnf' local-only='false' >\n\n <!--AND depth = '0'\"-->\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3849.33349609375,
+ "y": 2155,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "2d0f7089.d1dde8",
+ "fd005c4a.d8bf",
+ "939e8fdc.7e7718"
+ ]
+ ]
+ },
+ {
+ "id": "2d0f7089.d1dde8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4044.8336181640625,
+ "y": 2107,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "30cca3a0.b1e984"
+ ]
+ ]
+ },
+ {
+ "id": "fd005c4a.d8bf",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4036.8336181640625,
+ "y": 2162,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "13a9ea53.f74e26"
+ ]
+ ]
+ },
+ {
+ "id": "939e8fdc.7e7718",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4041.8336181640625,
+ "y": 2219,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "7b021b51.27b804"
+ ]
+ ]
+ },
+ {
+ "id": "7b021b51.27b804",
+ "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": 4193.8336181640625,
+ "y": 2220,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "13a9ea53.f74e26",
+ "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": 4204.8336181640625,
+ "y": 2165,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "30cca3a0.b1e984",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4189.2159423828125,
+ "y": 2104.6556701660156,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "b6ffbea1.954de"
+ ]
+ ]
+ },
+ {
+ "id": "528dc079.e1b708",
+ "type": "set",
+ "name": "set ltpId",
+ "xml": "<set>\n<parameter name='tmp.dst.ltpId' value='`$param-prefix-domainB[$param-prefix-domainB_length -1]`' />\n",
+ "comments": "",
+ "x": 4489.33349609375,
+ "y": 2323.0001220703125,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "ef41d4a6.237198",
+ "type": "set",
+ "name": "set pnf-name",
+ "xml": "<set>\n<parameter name='tmp.dst.pnf-name' value='`$param-prefix-domainB[$param-prefix-domainB_length -3]`' />\n",
+ "comments": "",
+ "x": 4490.33349609375,
+ "y": 2428.0001220703125,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "442d43d7.782e7c",
+ "type": "comment",
+ "name": "TODO: FIXME",
+ "info": "using the output of regex string arrays,\nconcatinate index 0 to index[length-2] all together\nin order to assemble the correct pnf-name",
+ "comments": "",
+ "x": 4485.33349609375,
+ "y": 2377.0001220703125,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "2a02e2d9.dc0d9e",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4520.45068359375,
+ "y": 2707.3404541015625,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "c9847dda.408b8",
+ "34fbe7b.83d4898",
+ "25621ae5.b8be26"
+ ]
+ ]
+ },
+ {
+ "id": "c9847dda.408b8",
+ "type": "set",
+ "name": "set destination ttp-id",
+ "xml": "<set>\n<parameter name='tmp.destination.ttp-id' value=\"`$tmp.aai.network-route-B.p-interface-dst.relationship-list.relationship[$dividx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 4735.45068359375,
+ "y": 2669.3404541015625,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "34fbe7b.83d4898",
+ "type": "get-resource",
+ "name": "get-resource src TTP",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"tunnel-termination-point\" \n\t\tkey=\"tunnel-termination-point.ttp-id = $tmp.destination.ttp-id \n\t\tAND depth = '0'\"\n pfx='tmp.aai.destination-ttp' local-only='false' >\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4732.45068359375,
+ "y": 2708.3404541015625,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "57e83a4e.a0aa6c"
+ ]
+ ]
+ },
+ {
+ "id": "25621ae5.b8be26",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 4687.95068359375,
+ "y": 2750.3404541015625,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "57e83a4e.a0aa6c",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4912.95068359375,
+ "y": 2707.3404541015625,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "1bf054a.fc9602b"
+ ]
+ ]
+ },
+ {
+ "id": "1bf054a.fc9602b",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 5070.95068359375,
+ "y": 2707.3404541015625,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "84673a73.b83338"
+ ]
+ ]
+ },
+ {
+ "id": "84673a73.b83338",
+ "type": "set",
+ "name": "set destination tunnel tp ip",
+ "xml": "<set>\n<parameter name='destination.tunnel-tp-id' value=\"`$tmp.aai.destination-ttp.tunnel-tp-id`\" />\n",
+ "comments": "",
+ "x": 5277.95068359375,
+ "y": 2707.3404541015625,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "d76262ee.41fc78",
+ "type": "outcome",
+ "name": "esr-thirdparty-sdnc",
+ "xml": "<outcome value='esr-thirdparty-sdnc'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4771.33349609375,
+ "y": 2123,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "16ae4cb2.9049f3"
+ ]
+ ]
+ },
+ {
+ "id": "16ae4cb2.9049f3",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4948.33349609375,
+ "y": 2115,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "e86ea938.d56ff",
+ "3118b07d.f07b4"
+ ]
+ ]
+ },
+ {
+ "id": "b6ffbea1.954de",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='dpvidx' start='0' end='`$tmp.aai.destination-pnf.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4373.33349609375,
+ "y": 2119,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "b9078c68.40a298"
+ ]
+ ]
+ },
+ {
+ "id": "b9078c68.40a298",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.destination-pnf.relationship-list.relationship[$dpvidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4568.33349609375,
+ "y": 2119,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "d76262ee.41fc78",
+ "b2b1c906.01de2"
+ ]
+ ]
+ },
+ {
+ "id": "3118b07d.f07b4",
+ "type": "execute",
+ "name": "get 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.domainB.esr-thirdparty-id AND \n\t\t depth = '1'\"\n pfx='tmp.aai.domainB.esr-thirdparty-sdnc' local-only='false' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 5156.33349609375,
+ "y": 2122,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "6c958b0a.19f5a4",
+ "118baae.84358d5",
+ "1250b3fe.a83aa4"
+ ]
+ ]
+ },
+ {
+ "id": "a44d9faa.fe0e4",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4950.33349609375,
+ "y": 2188,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "b2c88a89.6bb6d"
+ ]
+ ]
+ },
+ {
+ "id": "b2b1c906.01de2",
+ "type": "outcome",
+ "name": "network-resource",
+ "xml": "<outcome value='network-resource'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 4773.33349609375,
+ "y": 2196,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "a44d9faa.fe0e4"
+ ]
+ ]
+ },
+ {
+ "id": "e86ea938.d56ff",
+ "type": "set",
+ "name": "set esr-thirdparty-sdnc domainB id",
+ "xml": "<set>\n<parameter name='tmp.domainB.esr-thirdparty-id' value=\"`$tmp.aai.destination-pnf.relationship-list.relationship[$dpvidx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 5186.33349609375,
+ "y": 2070,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "b2c88a89.6bb6d",
+ "type": "set",
+ "name": "set domainB ethernet layer network-id",
+ "xml": "<set>\n<parameter name='tmp.domainB.eth-network-id' value=\"`$tmp.aai.destination-pnf.relationship-list.relationship[$dpvidx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 5185.33349609375,
+ "y": 2312,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "6c958b0a.19f5a4",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5366.33349609375,
+ "y": 2113,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "2e246f5a.b4103"
+ ]
+ ]
+ },
+ {
+ "id": "118baae.84358d5",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5358.33349609375,
+ "y": 2168,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "66d6dc00.1bed6c"
+ ]
+ ]
+ },
+ {
+ "id": "1250b3fe.a83aa4",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5363.33349609375,
+ "y": 2225,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "795bee7e.95831"
+ ]
+ ]
+ },
+ {
+ "id": "795bee7e.95831",
+ "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": 5515.33349609375,
+ "y": 2226,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "66d6dc00.1bed6c",
+ "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": 5526.33349609375,
+ "y": 2171,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "2e246f5a.b4103",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 5510.7158203125,
+ "y": 2110.6556701660156,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "c7de596d.cf628"
+ ]
+ ]
+ },
+ {
+ "id": "c7de596d.cf628",
+ "type": "set",
+ "name": "set controller domainB data",
+ "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainB.url' value=\"`$tmp.aai.domainB.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainB.user' value=\"`$tmp.aai.domainB.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domainB.password' value=\"`$tmp.aai.domainB.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`\" />\n\n\n<!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->\n<!--<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`\" />-->\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=\"get\"/>-->\n<!--<parameter name=\"responsePrefix\" value=\"topology\"/>-->\n<!--<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.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",
+ "comments": "",
+ "x": 5725.33349609375,
+ "y": 2107,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "7c523485.24203c",
+ "type": "set",
+ "name": "set LEAF stuff",
+ "xml": "<set>\n<parameter name='tmp.LEAF.pnf-name-long' value=\"`$param-prefix-domainA-pnfName[0] + '-' +\n $param-prefix-domainA-pnfName[1] + '-' +\n $param-prefix-domainA-pnfName[2] + '-' +\n $param-prefix-domainA-pnfName[3] + '-' +\n $param-prefix-domainA-pnfName[4] + '-' +\n $param-prefix-domainA-pnfName[5] + '-' +\n $param-prefix-domainA-pnfName[6] + '-' +\n $param-prefix-domainA-pnfName[7] + '-' +\n $param-prefix-domainA-pnfName[8]`\" />\n\n<!--<parameter name='tmp.LEAF.pnf-name-short' value=\"`$param-prefix-domainA-pnfName[8]`\" />-->\n<parameter name='tmp.LEAF.pnf-name-short' value=\"`$tmp.src.pnf-name`\" />\n\n<parameter name='tmp.LEAF.uni-p-interface-long' value=\"`$tmp.aai.network-route-A.next-hop`\" />\n<parameter name='tmp.LEAF.uni-tp-id' value=\"`$tmp.src.ltpId`\" />\n",
+ "comments": "",
+ "x": 3224,
+ "y": 1717,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "fded3756.dad178",
+ "type": "comment",
+ "name": "This is it (should be)",
+ "info": "",
+ "comments": "",
+ "x": 4446,
+ "y": 1000,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "3766add2.8d805a",
+ "type": "comment",
+ "name": "This is it (should be)",
+ "info": "",
+ "comments": "",
+ "x": 4438,
+ "y": 1090,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "6836f0a.48b871",
+ "type": "set",
+ "name": "set ROOT stuff",
+ "xml": "<set>\n<parameter name='tmp.ROOT.pnf-name-long' value=\"`$param-prefix-domainB-pnfName[0] + '-' +\n $param-prefix-domainB-pnfName[1] + '-' +\n $param-prefix-domainB-pnfName[2] + '-' +\n $param-prefix-domainB-pnfName[3] + '-' +\n $param-prefix-domainB-pnfName[4] + '-' +\n $param-prefix-domainB-pnfName[5] + '-' +\n $param-prefix-domainB-pnfName[6] + '-' +\n $param-prefix-domainB-pnfName[7] + '-' +\n $param-prefix-domainB-pnfName[8]`\" />\n\n<!--<parameter name='tmp.ROOT.pnf-name-short' value=\"`$param-prefix-domainB-pnfName[8]`\" />-->\n<parameter name='tmp.ROOT.pnf-name-short' value=\"`$tmp.dst.pnf-name`\" />\n\n<parameter name='tmp.ROOT.uni-p-interface-long' value=\"`$tmp.aai.network-route-B.next-hop`\" />\n<parameter name='tmp.ROOT.uni-tp-id' value=\"`$tmp.dst.ltpId`\" />\n",
+ "comments": "",
+ "x": 3205,
+ "y": 2573,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "b794c846.a3a7a8",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:cll-vnf-topology-operation-cll-logic",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-logic' mode='sync' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3356,
+ "y": 2821,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "2e62e80b.5f4db",
+ "type": "switchNode",
+ "name": "switch found-middle-man?",
+ "xml": "<switch test='`$found-middle-man`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3233,
+ "y": 2931,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "91c4e5f7.8ea498",
+ "651d0ecc.91f9"
+ ]
+ ]
+ },
+ {
+ "id": "91c4e5f7.8ea498",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3417,
+ "y": 2910,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "e83ca4b2.702b38"
+ ]
+ ]
+ },
+ {
+ "id": "651d0ecc.91f9",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3348,
+ "y": 4835,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "e7980e09.0eb63"
+ ]
+ ]
+ },
+ {
+ "id": "e7980e09.0eb63",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 3503,
+ "y": 4828,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "1aa8a9f7.34b03e",
+ "b0ed6ff1.30772",
+ "727be5c.c27771c"
+ ]
+ ]
+ },
+ {
+ "id": "e83ca4b2.702b38",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 3560,
+ "y": 2910,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "d8bbc948.15f3d",
+ "4c5911e7.00bf",
+ "12a3e526.881a1b",
+ "832127bd.deb14",
+ "310c39f.91bd146",
+ "10ac9372.85589d",
+ "eff2b9f.ec05748",
+ "e161ec1a.4abce",
+ "9f446fe.9ec171",
+ "53557e78.f7c168",
+ "a884ac0.a40fdd8",
+ "7b528859.fb04",
+ "4b76c053.d564f8",
+ "90ff1f35.eee16",
+ "1b3c7e18.ddb16a",
+ "3e78a7bc.55ca98",
+ "8cf629c6.d63328"
+ ]
+ ]
+ },
+ {
+ "id": "9f446fe.9ec171",
+ "type": "execute",
+ "name": "execute UUID generator for connectivity domainB",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.connectivity-domainB-uuid\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3871,
+ "y": 3265,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "d8bbc948.15f3d",
+ "type": "save",
+ "name": "save connectivity resource in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \n key='connectivity.connectivity-id = $prop.connectivity-domainB-uuid'>\n<parameter name='connectivity-id' value='`$prop.connectivity-domainB-uuid`' />\n<!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' -->\n<!-- key='connectivity.connectivity-id = $tmp.ROOT.uni-p-interface-long'>-->\n<!--<parameter name='connectivity-id' value='`$tmp.ROOT.uni-p-interface-long`' />-->\n<parameter name='etht-svc-name' value='`$prop.ethernet-service-name`' />\n<parameter name='operational-status' value='Created' />\n<parameter name='access-provider-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -9]`' />\n<parameter name='access-client-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -7]`' />\n<parameter name='access-topology-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -5]`' />\n<parameter name='access-node-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -3]`' />\n<parameter name='access-ltp-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -1]`' />\n<parameter name='cvlan' value='`$tmp.aai.network-route-B.logical-interface-id`' />\n<parameter name='color-aware' value='`$tmp.ROOT.uni-p-interface-long`' />\n<parameter name='vpn-type' value='root' />\n\n\n<parameter name='bandwidth-profile-name' value='`$gfp`' />\n<parameter name='cir' value='`$gfp *1000000`' />\n<parameter name='eir' value='`$gfp *1000000`' />\n<parameter name='cbs' value='`$prop.sotn.cbs`' />\n<parameter name='ebs' value='`$prop.sotn.ebs`' />\n<!--<parameter name='color-aware' value='`$prop.sotn.colorAware`' />-->\n<!--<parameter name='coupling-flag' value='`$prop.sotn.couplingFlag`' />-->\n<!--<parameter name='etht-svc-name' value='`$prop.sotn.etht-svc-name`' />-->\n<parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />\n<parameter name='connectivity-selflink' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $network-topology-operation-input.service-information.service-instance-id + '/service-data/networks/network/' + $prop.sotn.network-id + '/network-data/'` \" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3825,
+ "y": 3363,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "4c5911e7.00bf",
+ "type": "save",
+ "name": "save TNNSSI (transport service instance) relationship to connectivity in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' \n key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id\n AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id \n AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.connectivity-domainB-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.connectivity-domainB-uuid`\" />\n\n\n<!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' -->\n<!-- key='service-instance.service-instance-id = $service-data.service-information.service-instance-id -->\n<!-- AND customer.global-customer-id = $service-data.networks.network[$nidx].network-data.service-information.global-customer-id -->\n<!-- AND service-subscription.service-type = $service-data.networks.network[$nidx].network-data.service-information.subscription-service-type' -->\n<!-- force=\"true\" pfx=\"tmp.AnAI-data\">-->\n<!--<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.sotn.network-id`\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.sotn.network-id`\" />-->",
+ "comments": "",
+ "outputs": 1,
+ "x": 3961,
+ "y": 3410,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "ec410c1b.c077a8",
+ "type": "comment",
+ "name": "Create ROOT connectivity",
+ "info": "",
+ "comments": "",
+ "x": 3792,
+ "y": 3214,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "d6af901.13a67f",
+ "type": "comment",
+ "name": "create middle man connectivity and ...",
+ "info": "1- create middle man connectivity\n2- create relation with all connectivities\n in the path\n3- put srcTtp (+dstTtp) somewhere in the\n vpn-binding -> this is for later on to find\n which OTN tunnel's bandwidth has to be increased.\n5- create UNIs\n4- create relationship to UNIs",
+ "comments": "",
+ "x": 4318,
+ "y": 3705,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "12a3e526.881a1b",
+ "type": "execute",
+ "name": "execute UUID generator for connectivity middle-man",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.connectivity-middle-man-uuid\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3882,
+ "y": 3744,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "832127bd.deb14",
+ "type": "save",
+ "name": "save connectivity resource in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \n key='connectivity.connectivity-id = $prop.connectivity-middle-man-uuid'>\n<parameter name='connectivity-id' value='`$prop.connectivity-middle-man-uuid`' />\n<parameter name='etht-svc-name' value='`$prop.ethernet-service-name`' />\n<parameter name='operational-status' value='Created' />\n<!--The followings are not needed for the middle-man-connectivity-->\n<!--<parameter name='access-provider-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -9]`' />-->\n<!--<parameter name='access-client-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -7]`' />-->\n<!--<parameter name='access-topology-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -5]`' />-->\n<!--<parameter name='access-node-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -3]`' />-->\n<!--<parameter name='access-ltp-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -1]`' />-->\n<parameter name='cvlan' value='`$tmp.aai.network-route-B.logical-interface-id`' />\n<parameter name='color-aware' value='`$tmp.ROOT.uni-p-interface-long`' />\n<parameter name='vpn-type' value='mdsc' />\n\n<parameter name='bandwidth-profile-name' value='`$gfp`' />\n<parameter name='cir' value='`$gfp *1000000`' />\n<parameter name='eir' value='`$gfp *1000000`' />\n<parameter name='cbs' value='`$prop.sotn.cbs`' />\n<parameter name='ebs' value='`$prop.sotn.ebs`' />\n<!--<parameter name='color-aware' value='`$prop.sotn.colorAware`' />-->\n<!--<parameter name='coupling-flag' value='`$prop.sotn.couplingFlag`' />-->\n<!--<parameter name='etht-svc-name' value='`$prop.sotn.etht-svc-name`' />-->\n<parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />\n<parameter name='connectivity-selflink' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $network-topology-operation-input.service-information.service-instance-id + '/service-data/networks/network/' + $prop.sotn.network-id + '/network-data/'` \" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3830,
+ "y": 3795,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "310c39f.91bd146",
+ "type": "save",
+ "name": "save TNNSSI (transport service instance) relationship to connectivity in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' \n key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id\n AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id \n AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.connectivity-middle-man-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.connectivity-middle-man-uuid`\" />\n\n\n<!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' -->\n<!-- key='service-instance.service-instance-id = $service-data.service-information.service-instance-id -->\n<!-- AND customer.global-customer-id = $service-data.networks.network[$nidx].network-data.service-information.global-customer-id -->\n<!-- AND service-subscription.service-type = $service-data.networks.network[$nidx].network-data.service-information.subscription-service-type' -->\n<!-- force=\"true\" pfx=\"tmp.AnAI-data\">-->\n<!--<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.sotn.network-id`\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.sotn.network-id`\" />-->",
+ "comments": "",
+ "outputs": 1,
+ "x": 3966,
+ "y": 3842,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "dff7d863.27131",
+ "type": "comment",
+ "name": "Create MIDDLE-MAN connectivity",
+ "info": "",
+ "comments": "",
+ "x": 3823,
+ "y": 3704,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "7b814ee5.031238",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 4253,
+ "y": 3901,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "10ac9372.85589d",
+ "type": "save",
+ "name": "get middle-man connectivity from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"connectivity\"\n\t key=\"connectivity.connectivity-id = $prop.connectivity-middle-man-uuid\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"middle-man-conn\" >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3844,
+ "y": 3948,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "7001b67.e717f48",
+ "2d31ff61.2f04d",
+ "ccc557b3.890908"
+ ]
+ ]
+ },
+ {
+ "id": "7001b67.e717f48",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4091,
+ "y": 3902,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "7b814ee5.031238"
+ ]
+ ]
+ },
+ {
+ "id": "2d31ff61.2f04d",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4091.490966796875,
+ "y": 3947.5740356445312,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "cf949a05.c89aa8"
+ ]
+ ]
+ },
+ {
+ "id": "ccc557b3.890908",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4089,
+ "y": 3991,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "e98195a6.6d12"
+ ]
+ ]
+ },
+ {
+ "id": "cf949a05.c89aa8",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 4254.0623779296875,
+ "y": 3947.8597717285156,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "e98195a6.6d12",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 4258,
+ "y": 3992,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "1b3c7e18.ddb16a",
+ "type": "save",
+ "name": "save middle-man-conn relationship to connectivity-LEAF, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $middle-man-conn.connectivity-id' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $uuid.connectivity-domainA-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$uuid.connectivity-domainA-uuid`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 3901,
+ "y": 4227,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "3e78a7bc.55ca98",
+ "type": "save",
+ "name": "save middle-man-conn relationship to connectivity-ROOT, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $middle-man-conn.connectivity-id' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.connectivity-domainB-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.connectivity-domainB-uuid`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 3904,
+ "y": 4272,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "15c4d898.5d69ef",
+ "type": "save",
+ "name": "save middle-man-conn relationship to UNI-LEAF, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $middle-man-conn.connectivity-id' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"uni\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/unis/uni/' + $tmp.LEAF.uni-p-interface-long`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"uni.id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$tmp.LEAF.uni-p-interface-long`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 3893,
+ "y": 4063,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "b9514e95.f8a09",
+ "type": "save",
+ "name": "save middle-man-conn relationship to UNI-ROOT, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $middle-man-conn.connectivity-id' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"uni\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/unis/uni/' + $tmp.ROOT.uni-p-interface-long`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"uni.id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$tmp.ROOT.uni-p-interface-long`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 3895,
+ "y": 4110,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "c557914b.681778",
+ "type": "comment",
+ "name": "The following two will be done in F1",
+ "info": "",
+ "comments": "",
+ "x": 3817,
+ "y": 4180,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "55d807b9.9e0f1",
+ "type": "save",
+ "name": "save middle-man-conn relationship to UNI-LEAF, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $middle-man-conn.connectivity-id' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"uni\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/unis/uni/' + $tmp.LEAF.uni-p-interface-long`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"uni.id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$tmp.LEAF.uni-p-interface-long`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 4424,
+ "y": 4909,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "1aa8a9f7.34b03e",
+ "type": "switchNode",
+ "name": "switch no-pce-call",
+ "xml": "<switch test='`$no-pce-call`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3718,
+ "y": 4809,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "449091f.4415ef",
+ "1ea76e22.242bea"
+ ]
+ ]
+ },
+ {
+ "id": "1ea76e22.242bea",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3890,
+ "y": 4806,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "8b1b5cc1.1af92"
+ ]
+ ]
+ },
+ {
+ "id": "449091f.4415ef",
+ "type": "outcomeFalse",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3803,
+ "y": 5906,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "6b1cb253.86fb4c"
+ ]
+ ]
+ },
+ {
+ "id": "c26b2751.5ae09",
+ "type": "comment",
+ "name": "1 --> PCE is needed",
+ "info": "",
+ "comments": "",
+ "x": 3903,
+ "y": 4776,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "ace6e9f0.39e568",
+ "type": "comment",
+ "name": "2 --> no need to call PCE",
+ "info": "",
+ "comments": "",
+ "x": 3874,
+ "y": 5864,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "eff2b9f.ec05748",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:cll-vnf-topology-operation-cll-F1",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-F1' mode='sync' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3901,
+ "y": 4336,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "8b1b5cc1.1af92",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 4066,
+ "y": 4808,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "92650fb7.4fb248",
+ "32b221b8.94e72e",
+ "c940cf7e.ee51b",
+ "dce0cedd.454b5",
+ "5ecdaa6f.e24ff4",
+ "3829dc12.3b5b24"
+ ]
+ ]
+ },
+ {
+ "id": "6001979f.e727",
+ "type": "comment",
+ "name": "Use the middle-man-conn.eth-srv-name for the LEAF connectivity's eth srv name",
+ "info": "",
+ "comments": "",
+ "x": 5472,
+ "y": 4534,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "92650fb7.4fb248",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:cll-vnf-topology-operation-cll-F1",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-F1' mode='sync' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4419,
+ "y": 5212,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "4d81f93.f62ae88",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:cll-vnf-topology-operation-cll-F1-activate",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-F1-activate' mode='sync' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3911,
+ "y": 4391,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "9c2b0edc.50b4c",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:cll-vnf-topology-operation-cll-F1-activate",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-F1-activate' mode='sync' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4447,
+ "y": 5263,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "e161ec1a.4abce",
+ "type": "save",
+ "name": "save connectivityB relationship to UNI-ROOT, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $prop.connectivity-domainB-uuid' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"uni\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/unis/uni/' + $tmp.ROOT.uni-p-interface-long`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"uni.id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$tmp.ROOT.uni-p-interface-long`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 3877,
+ "y": 3604,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "d5e12d5f.415ec",
+ "type": "save",
+ "name": "save connectivityA relationship to UNI-LEAF, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $prop.connectivity-domainA-uuid' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"uni\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/unis/uni/' + $tmp.LEAF.uni-p-interface-long`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"uni.id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$tmp.LEAF.uni-p-interface-long`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 3337,
+ "y": 1823,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "47f64a4f.cc38f4",
+ "type": "save",
+ "name": "save LEAF UNI in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='uni' \n key='uni.id = $tmp.LEAF.uni-p-interface-long'>\n<parameter name='id' value='`$tmp.LEAF.uni-p-interface-long`' />\n<parameter name='tp-id' value='`$tmp.LEAF.uni-p-interface-short`' />\n<parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3244,
+ "y": 1770,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "461bf5c9.7233b4",
+ "type": "set",
+ "name": "set prop.connectivity-domainB-uuid=tmp.ROOT.uni-p-interface-long",
+ "xml": "<set>\n<parameter name='prop.connectivity-domainB-uuid' value=\"`$tmp.ROOT.uni-p-interface-long`\" />\n",
+ "comments": "",
+ "x": 3927,
+ "y": 3307,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "53557e78.f7c168",
+ "type": "execute",
+ "name": "execute UUID generator for connectivity domainA",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"uuid.connectivity-domainA-uuid\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3874,
+ "y": 2895,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "a884ac0.a40fdd8",
+ "type": "save",
+ "name": "save connectivity resource in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \n key='connectivity.connectivity-id = $uuid.connectivity-domainA-uuid'>\n<parameter name='connectivity-id' value='`$uuid.connectivity-domainA-uuid`' />\n<parameter name='etht-svc-name' value='`$prop.ethernet-service-name`' />\n<parameter name='operational-status' value='Created' />\n<parameter name='access-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />\n<parameter name='access-client-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -7]`' />\n<parameter name='access-topology-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -5]`' />\n<parameter name='access-node-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />\n<parameter name='access-ltp-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -1]`' />\n<parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />\n<parameter name='vpn-type' value='leaf' />\n\n<parameter name='bandwidth-profile-name' value='`$gfp`' />\n<parameter name='cir' value='`$gfp *1000000`' />\n<parameter name='eir' value='`$gfp *1000000`' />\n<parameter name='cbs' value='`$prop.sotn.cbs`' />\n<parameter name='ebs' value='`$prop.sotn.ebs`' />\n<!--<parameter name='color-aware' value='`$prop.sotn.colorAware`' />-->\n<!--<parameter name='coupling-flag' value='`$prop.sotn.couplingFlag`' />-->\n<!--<parameter name='etht-svc-name' value='`$prop.sotn.etht-svc-name`' />-->\n<parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />\n<parameter name='connectivity-selflink' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $network-topology-operation-input.service-information.service-instance-id + '/service-data/networks/network/' + $prop.sotn.network-id + '/network-data/'` \" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3822,
+ "y": 2943,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "7b528859.fb04",
+ "type": "save",
+ "name": "save TNNSSI (transport service instance) relationship to connectivity in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' \n key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id\n AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id \n AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $uuid.connectivity-domainA-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$uuid.connectivity-domainA-uuid`\" />\n\n\n<!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' -->\n<!-- key='service-instance.service-instance-id = $service-data.service-information.service-instance-id -->\n<!-- AND customer.global-customer-id = $service-data.networks.network[$nidx].network-data.service-information.global-customer-id -->\n<!-- AND service-subscription.service-type = $service-data.networks.network[$nidx].network-data.service-information.subscription-service-type' -->\n<!-- force=\"true\" pfx=\"tmp.AnAI-data\">-->\n<!--<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.sotn.network-id`\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.sotn.network-id`\" />-->",
+ "comments": "",
+ "outputs": 1,
+ "x": 3950,
+ "y": 2990,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "145ad0a4.4a593f",
+ "type": "comment",
+ "name": "Create LEAF connectivity",
+ "info": "",
+ "comments": "",
+ "x": 3787,
+ "y": 2853,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "4b76c053.d564f8",
+ "type": "save",
+ "name": "save LEAF UNI in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='uni' \n key='uni.id = $tmp.LEAF.uni-p-interface-long'>\n<parameter name='id' value='`$tmp.LEAF.uni-p-interface-long`' />\n<parameter name='tp-id' value='`$tmp.LEAF.uni-tp-id`' />\n<parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3784,
+ "y": 3081,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "90ff1f35.eee16",
+ "type": "save",
+ "name": "save connectivityA relationship to UNI-LEAF, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $uuid.connectivity-domainA-uuid' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"uni\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/unis/uni/' + $tmp.LEAF.uni-p-interface-long`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"uni.id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$tmp.LEAF.uni-p-interface-long`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 3877,
+ "y": 3134,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "f9c3a7e4.4b967",
+ "type": "comment",
+ "name": "Create LEAF UNI",
+ "info": "",
+ "comments": "",
+ "x": 3768,
+ "y": 3037,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "c6c09b88.1384d8",
+ "type": "comment",
+ "name": "Create ROOT UNI",
+ "info": "",
+ "comments": "",
+ "x": 3774,
+ "y": 3487,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "dce0cedd.454b5",
+ "type": "save",
+ "name": "save LEAF UNI in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='uni' \n key='uni.id = $tmp.LEAF.uni-p-interface-long'>\n<parameter name='id' value='`$tmp.LEAF.uni-p-interface-long`' />\n<parameter name='tp-id' value='`$tmp.LEAF.uni-tp-id`' />\n<parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4341,
+ "y": 4542,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "d819a295.d1d948",
+ "type": "comment",
+ "name": "Create LEAF UNI",
+ "info": "",
+ "comments": "",
+ "x": 4325,
+ "y": 4498,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "8a0e3e5f.c139f",
+ "type": "comment",
+ "name": "Create LEAF connectivity",
+ "info": "",
+ "comments": "",
+ "x": 5072,
+ "y": 4529,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "3d40af5d.b5351",
+ "type": "execute",
+ "name": "execute UUID generator for connectivity domainA",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"uuid.connectivity-domainA-uuid\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5159,
+ "y": 4571,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "113bf6b.aca4d89",
+ "type": "save",
+ "name": "save connectivity resource in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \n key='connectivity.connectivity-id = $uuid.connectivity-domainA-uuid'>\n<parameter name='connectivity-id' value='`$uuid.connectivity-domainA-uuid`' />\n<parameter name='etht-svc-name' value='`$middle-man-conn.etht-svc-name`' />\n<parameter name='operational-status' value='Created' />\n<parameter name='access-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />\n<parameter name='access-client-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -7]`' />\n<parameter name='access-topology-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -5]`' />\n<parameter name='access-node-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />\n<parameter name='access-ltp-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -1]`' />\n<parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />\n<parameter name='vpn-type' value='leaf' />\n\n<parameter name='bandwidth-profile-name' value='`$gfp`' />\n<parameter name='cir' value='`$gfp *1000000`' />\n<parameter name='eir' value='`$gfp *1000000`' />\n<parameter name='cbs' value='`$prop.sotn.cbs`' />\n<parameter name='ebs' value='`$prop.sotn.ebs`' />\n<!--<parameter name='color-aware' value='`$prop.sotn.colorAware`' />-->\n<!--<parameter name='coupling-flag' value='`$prop.sotn.couplingFlag`' />-->\n<!--<parameter name='etht-svc-name' value='`$prop.sotn.etht-svc-name`' />-->\n<parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />\n<parameter name='connectivity-selflink' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $network-topology-operation-input.service-information.service-instance-id + '/service-data/networks/network/' + $prop.sotn.network-id + '/network-data/'` \" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5107,
+ "y": 4619,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "e3b325e.735f958",
+ "type": "save",
+ "name": "save TNNSSI (transport service instance) relationship to connectivity in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' \n key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id\n AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id \n AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $uuid.connectivity-domainA-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$uuid.connectivity-domainA-uuid`\" />\n\n\n<!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' -->\n<!-- key='service-instance.service-instance-id = $service-data.service-information.service-instance-id -->\n<!-- AND customer.global-customer-id = $service-data.networks.network[$nidx].network-data.service-information.global-customer-id -->\n<!-- AND service-subscription.service-type = $service-data.networks.network[$nidx].network-data.service-information.subscription-service-type' -->\n<!-- force=\"true\" pfx=\"tmp.AnAI-data\">-->\n<!--<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $prop.sotn.network-id`\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />-->\n<!--<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.sotn.network-id`\" />-->",
+ "comments": "",
+ "outputs": 1,
+ "x": 5235,
+ "y": 4666,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "3829dc12.3b5b24",
+ "type": "save",
+ "name": "save connectivityA relationship to UNI-LEAF, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $uuid.connectivity-domainA-uuid' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"uni\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/unis/uni/' + $tmp.LEAF.uni-p-interface-long`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"uni.id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$tmp.LEAF.uni-p-interface-long`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 4412,
+ "y": 4951,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "78032561.382d8c",
+ "type": "comment",
+ "name": "populate connectivity-B variable in the context map",
+ "info": "",
+ "comments": "",
+ "x": 4395,
+ "y": 5013,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "32b221b8.94e72e",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:cll-vnf-topology-operation-cll-helper-find-ROOT-conn",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-helper-find-ROOT-conn' mode='sync' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4506,
+ "y": 5055,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "ddb22b48.c7951",
+ "type": "set",
+ "name": "set prop.connectivity-domainB-uuid",
+ "xml": "<set>\n<!--<parameter name='prop.connectivity-domainB-uuid' value=\"`$tmp.ROOT.uni-p-interface-long`\" />-->\n<!--OR-->\n<parameter name='prop.connectivity-domainB-uuid' value=\"`$tmp.aai.ROOT.connectivity.connectivity-id`\" />\n\n\n",
+ "comments": "",
+ "x": 4954,
+ "y": 5108,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "8dae734b.2f3cf",
+ "type": "save",
+ "name": "save middle-man-conn relationship to UNI-LEAF, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $middle-man-conn.connectivity-id' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"uni\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/unis/uni/' + $tmp.LEAF.uni-p-interface-long`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"uni.id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$tmp.LEAF.uni-p-interface-long`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 4264,
+ "y": 5806,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "6b696600.0c94ac",
+ "type": "save",
+ "name": "save LEAF UNI in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='uni' \n key='uni.id = $tmp.LEAF.uni-p-interface-long'>\n<parameter name='id' value='`$tmp.LEAF.uni-p-interface-long`' />\n<parameter name='tp-id' value='`$tmp.LEAF.uni-tp-id`' />\n<parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4162,
+ "y": 5755,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "63a3c79e.874c38",
+ "type": "comment",
+ "name": "Create LEAF UNI",
+ "info": "",
+ "comments": "",
+ "x": 4146,
+ "y": 5711,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "f7343942.604c5",
+ "type": "save",
+ "name": "save the-connectivity relationship to UNI-LEAF, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $tmp.the-connectivity.connectivity-id' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"uni\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/unis/uni/' + $tmp.LEAF.uni-p-interface-long`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"uni.id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$tmp.LEAF.uni-p-interface-long`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 4921,
+ "y": 5967,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "c940cf7e.ee51b",
+ "type": "switchNode",
+ "name": "switch found-root-connectivity",
+ "xml": "\n<switch test=\"`$found-root-connectivity`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4333,
+ "y": 5112,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "b0427d82.5bfe9",
+ "b8ae94d3.c9ad9"
+ ]
+ ]
+ },
+ {
+ "id": "b0427d82.5bfe9",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4544,
+ "y": 5112,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "25de2beb.6b950c"
+ ]
+ ]
+ },
+ {
+ "id": "25de2beb.6b950c",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 4700,
+ "y": 5108,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "ddb22b48.c7951"
+ ]
+ ]
+ },
+ {
+ "id": "b8ae94d3.c9ad9",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4540,
+ "y": 5160,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "bc7f369f.c4ff98"
+ ]
+ ]
+ },
+ {
+ "id": "bc7f369f.c4ff98",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='Root Connectivity was not found' />\n",
+ "comments": "",
+ "x": 4688,
+ "y": 5155,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "9a0e4d6a.9ad2e",
+ "type": "save",
+ "name": "save middle-man-conn relationship to connectivity-LEAF, in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list' \n key='connectivity.connectivity-id = $middle-man-conn.connectivity-id' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"connectivity\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/connectivities/connectivity/' + $uuid.connectivity-domainA-uuid`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"connectivity.connectivity-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$uuid.connectivity-domainA-uuid`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 5196,
+ "y": 4737,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "8ffbf90a.9a2a4",
+ "type": "execute",
+ "name": "execute UUID generator for ethernet-service-name",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.ethernet-service-name\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2362,
+ "y": 148,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "9ccad127.ffcf6",
+ "type": "set",
+ "name": "set new ethernet-service-name",
+ "xml": "<set>\n<!--<parameter name='prop.ethernet-service-name' value=\"`$tmp.aai.logical-link.link-name`\" />-->\n<parameter name='prop.ethernet-service-name' value=\"`$tmp.aai.logical-link.link-id`\" />\n\n\n",
+ "comments": "",
+ "x": 2296,
+ "y": 184,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "9431421f.8473c8",
+ "type": "comment",
+ "name": "The following two nodes are to make sure all connectivities for an E-Tree have same etht-srv-name",
+ "info": "",
+ "comments": "",
+ "x": 2481,
+ "y": 111,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "4acaf17d.83ce3",
+ "type": "set",
+ "name": "set current-provider-id and current-cvlan-id",
+ "xml": "<set>\n<parameter name='tmp.current-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />\n<parameter name='tmp.current-cvlan-id' value='`$tmp.aai.network-route-A.logical-interface-id`' />\n\n<!--<parameter name='access-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />-->\n<!--<parameter name='access-client-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -7]`' />-->\n<!--<parameter name='access-topology-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -5]`' />-->\n<!--<parameter name='access-node-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />-->\n<!--<parameter name='access-ltp-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -1]`' />-->\n<!--<parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />-->",
+ "comments": "",
+ "x": 4231,
+ "y": 5872,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "26219883.65a92",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:cll-vnf-topology-operation-cll-helper-find-connectivity",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-helper-find-connectivity' mode='sync' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4364,
+ "y": 5920,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "1d162fbe.3673a",
+ "type": "switchNode",
+ "name": "switch found-connectivity?",
+ "xml": "\n<switch test=\"`$found-connectivity`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4183,
+ "y": 5978,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "b4622dbc.20b678",
+ "1a01b81f.922a4"
+ ]
+ ]
+ },
+ {
+ "id": "b4622dbc.20b678",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4376,
+ "y": 5979,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "b10bfde8.027e5"
+ ]
+ ]
+ },
+ {
+ "id": "b10bfde8.027e5",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='Connectivity should have been created' />\n",
+ "comments": "",
+ "x": 4532,
+ "y": 5976,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "1a01b81f.922a4",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4380,
+ "y": 6023,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "6ceb0be5.2a433c"
+ ]
+ ]
+ },
+ {
+ "id": "6ceb0be5.2a433c",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4519,
+ "y": 6018,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "f7343942.604c5",
+ "c05fdbdc.265b6",
+ "97927bbc.dcd8c8",
+ "1cb127d3.5a2788",
+ "f2b1cf37.e0a26",
+ "8f16ceb.590e9b",
+ "60b731fb.d0503",
+ "bcde9e56.e926a",
+ "c55840d4.91858",
+ "9ff86b70.d2fcb"
+ ]
+ ]
+ },
+ {
+ "id": "60b731fb.d0503",
+ "type": "save",
+ "name": "get all-vpn-bindings from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"vpn-bindings\"\n\t key=\"selflink = 'https://aai.onap:8443/aai/v24/network/vpn-bindings\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"tmp.aai.all-vpn-bindings\" >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4716,
+ "y": 6697,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "cedc6e.0697a39",
+ "a047ea62.8c149",
+ "e7b3fd60.6832b8"
+ ]
+ ]
+ },
+ {
+ "id": "cedc6e.0697a39",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4921,
+ "y": 6694,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "193246bb.dba7e9"
+ ]
+ ]
+ },
+ {
+ "id": "a047ea62.8c149",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4904.490966796875,
+ "y": 6755.574035644531,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "6166d474.1f401c"
+ ]
+ ]
+ },
+ {
+ "id": "e7b3fd60.6832b8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4902,
+ "y": 6799,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "a8cf7040.6462c8"
+ ]
+ ]
+ },
+ {
+ "id": "193246bb.dba7e9",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 5077,
+ "y": 6708,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "8ab9510b.66ea08"
+ ]
+ ]
+ },
+ {
+ "id": "6166d474.1f401c",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 5067.0623779296875,
+ "y": 6755.859771728516,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "a8cf7040.6462c8",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 5069,
+ "y": 6798,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "8ab9510b.66ea08",
+ "type": "for",
+ "name": "for vpnidx in all-vpn-bindings",
+ "xml": "<for index='vpnbidx' start='0' end='`$tmp.aai.all-vpn-bindings.vpn-binding_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5324,
+ "y": 6705,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "4468378.6607f48"
+ ]
+ ]
+ },
+ {
+ "id": "4468378.6607f48",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 5561,
+ "y": 6701,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "fb8fcf56.6ea2f8"
+ ]
+ ]
+ },
+ {
+ "id": "fb8fcf56.6ea2f8",
+ "type": "switchNode",
+ "name": "switch vpnuuid is for this slice",
+ "xml": "<!--<switch test=\"`$tmp.slicevpnuuids[$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-id] != '' `\">-->\n\n<!-- Replace vpn-type with slice-id (a new attribbute in the latest AAI) -->\n<switch test=\"`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].slice-id == $tmp.aai.service-instance.service-instance-id `\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5808,
+ "y": 6703,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "b35a7d25.7fd0a",
+ "74f376ab.a729f"
+ ]
+ ]
+ },
+ {
+ "id": "b35a7d25.7fd0a",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 6009,
+ "y": 6693,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "53ea7250.143694"
+ ]
+ ]
+ },
+ {
+ "id": "74f376ab.a729f",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 6008,
+ "y": 6646,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "53ea7250.143694",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 4752,
+ "y": 6968,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "2651f488.54465c"
+ ]
+ ]
+ },
+ {
+ "id": "26dbc9a6.ab4616",
+ "type": "set",
+ "name": "set tmp.aai.the-vpn-binding",
+ "xml": "<set>\n<parameter name='tmp.aai.the-vpn-binding.' value=\"`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].`\" />\n",
+ "comments": "",
+ "x": 5601,
+ "y": 6873,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "fba4365f.21d6b",
+ "type": "comment",
+ "name": "find all OTNs that have srcTtpOtnLayer and increase their bandwidth",
+ "info": "",
+ "comments": "",
+ "x": 4814,
+ "y": 6644,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "8f16ceb.590e9b",
+ "type": "set",
+ "name": "set srcTtp OTN layer",
+ "xml": "<set>\n<!--<parameter name='tmp.srcTtpOtnLayer' value=\"`$tmp.pce-src-node + '-' + -->\n<!-- $param-prefix-domainA[$param-prefix-domainA_length -2] + '-' +-->\n<!-- $tmp.source.ttp-id`\" />-->\n\n<parameter name='tmp.srcTtpOtnLayer' value=\"`$tmp.pce-src-node`\" />\n\n\n",
+ "comments": "",
+ "x": 4698,
+ "y": 6493,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "db5a4ceb.707c88",
+ "type": "switchNode",
+ "name": "switch provider-id domainA",
+ "xml": "<switch test='`$allNetworksList.network-resource[$netwidx].provider-id == $param-prefix-domainA-pnfName[2]`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5043,
+ "y": 6324,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "45fd9533.be2acc"
+ ]
+ ]
+ },
+ {
+ "id": "45fd9533.be2acc",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5263,
+ "y": 6330,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "530fb98.e048cc8"
+ ]
+ ]
+ },
+ {
+ "id": "530fb98.e048cc8",
+ "type": "switchNode",
+ "name": "switch te-topo-id",
+ "xml": "<switch test='`$allNetworksList.network-resource[$netwidx].te-topo-id != $param-prefix-domainA-pnfName[6]`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5448,
+ "y": 6329,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "36abe2fe.4a9a96"
+ ]
+ ]
+ },
+ {
+ "id": "36abe2fe.4a9a96",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5640,
+ "y": 6332,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "75415a60.e2b3b4"
+ ]
+ ]
+ },
+ {
+ "id": "75415a60.e2b3b4",
+ "type": "set",
+ "name": "set otnTopoIdSrc",
+ "xml": "<set>\n<parameter name='otnTopoIdSrc' value='`$allNetworksList.network-resource[$netwidx].te-topo-id`' />\n",
+ "comments": "",
+ "x": 5849,
+ "y": 6330,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "bcde9e56.e926a",
+ "type": "for",
+ "name": "for netwidx..allNetworksList_length",
+ "xml": "<for index='netwidx' start='0' end='`$allNetworksList.network-resource_length`' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 4750,
+ "y": 6318,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "db5a4ceb.707c88"
+ ]
+ ]
+ },
+ {
+ "id": "97927bbc.dcd8c8",
+ "type": "get-resource",
+ "name": "get-resource network-resources-list",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"network-resources\"\n\t key=\"selflink = 'https://aai.onap:8443/aai/v24/network/network-resources?depth=0'\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"allNetworksList\" >",
+ "comments": "",
+ "outputs": 1,
+ "x": 4758,
+ "y": 6211,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "2440c6c.5eeb4ba",
+ "8721d82f.3e0a3",
+ "3f152fd2.1f0f28"
+ ]
+ ]
+ },
+ {
+ "id": "2440c6c.5eeb4ba",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4994,
+ "y": 6194,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "8721d82f.3e0a3",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4991,
+ "y": 6235,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "3f152fd2.1f0f28",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5005,
+ "y": 6275,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "1cb127d3.5a2788",
+ "type": "set",
+ "name": "unset parameters",
+ "xml": "<set>\n<parameter name='tmp.pce-src-node.' value='' />\n",
+ "comments": "",
+ "x": 4694,
+ "y": 6370,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "f2b1cf37.e0a26",
+ "type": "set",
+ "name": "set tmp.pce-src-node",
+ "xml": "<set>\n<!--<parameter name='tmp.pce-src-node' value=\"`$param-prefix-domainA-pnfName[0] + '-' +-->\n<!-- $param-prefix-domainA-pnfName[1] + '-' +-->\n<!-- $param-prefix-domainA-pnfName[2] + '-' +-->\n<!-- $param-prefix-domainA-pnfName[3] + '-' +-->\n<!-- $param-prefix-domainA-pnfName[4] + '-' +-->\n<!-- $param-prefix-domainA-pnfName[5] + '-' +-->\n<!-- 1 + '-' +-->\n<!-- $param-prefix-domainA-pnfName[7] + '-' +-->\n<!-- $param-prefix-domainA-pnfName[8]`\" />-->\n\n<parameter name='tmp.pce-src-node' value=\"`$param-prefix-domainA-pnfName[0] + '-' +\n $param-prefix-domainA-pnfName[1] + '-' +\n $param-prefix-domainA-pnfName[2] + '-' +\n $param-prefix-domainA-pnfName[3] + '-' +\n $param-prefix-domainA-pnfName[4] + '-' +\n $param-prefix-domainA-pnfName[5] + '-' +\n $otnTopoIdSrc + '-' +\n $param-prefix-domainA-pnfName[7] + '-' +\n $param-prefix-domainA-pnfName[8]`\" />",
+ "comments": "",
+ "x": 4702,
+ "y": 6428,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "c05fdbdc.265b6",
+ "type": "set",
+ "name": "unset parameters",
+ "xml": "<set>\n<parameter name='allNetworksList.' value='' />\n",
+ "comments": "",
+ "x": 4707,
+ "y": 6168,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "b11f8629.171c6",
+ "type": "comment",
+ "name": "The following section is to find srcTtp OTN layer (its long name)",
+ "info": "The following section is to find srcTtp OTN layer (its long name)",
+ "comments": "",
+ "x": 4822,
+ "y": 6120,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "2651f488.54465c",
+ "type": "switchNode",
+ "name": "switch ops-note is srcTtpOtnLayer",
+ "xml": "<switch test=\"`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].ops-note == $tmp.srcTtpOtnLayer `\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4995,
+ "y": 6965,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "69eb57bf.22dfc8",
+ "815687f4.685f18"
+ ]
+ ]
+ },
+ {
+ "id": "69eb57bf.22dfc8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5224,
+ "y": 6942,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "3784edbf.83acfa"
+ ]
+ ]
+ },
+ {
+ "id": "815687f4.685f18",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5224,
+ "y": 6991,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "3784edbf.83acfa",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 5385,
+ "y": 6947,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "6a238d9a.9b2fec",
+ "26dbc9a6.ab4616",
+ "2310374c.1d397"
+ ]
+ ]
+ },
+ {
+ "id": "bb082a0b.0ed128",
+ "type": "comment",
+ "name": "increase the bw of the-vpn-binding and change status to modified",
+ "info": "increase the bw of the-vpn-binding\nchange status to modified\n",
+ "comments": "",
+ "x": 5729,
+ "y": 6927,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "2310374c.1d397",
+ "type": "save",
+ "name": "update vpn-binding otnIdx resource (aka. OTN) in AAI",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $tmp.aai.the-vpn-binding.vpn-id' >\n<parameter name='vpn-id' value='`$tmp.aai.the-vpn-binding.vpn-id`' />\n<!--<parameter name='vpn-name' value='`$prop.otn-tunnel-name`' />-->\n<parameter name='customer-vpn-id' value='`$newToBeUsedMaxtpn`' />\n<parameter name='route-distinguisher' value='`$tmp.aai.the-vpn-binding.route-distinguisher + $gfp`' />\n\n<parameter name='operational-status' value='Modified' />\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5699,
+ "y": 6987,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "6a238d9a.9b2fec",
+ "type": "set",
+ "name": "unset tmp.aai.the-vpn-binding",
+ "xml": "<set>\n<parameter name='tmp.aai.the-vpn-binding.' value=\"\" />\n",
+ "comments": "",
+ "x": 5606,
+ "y": 6815,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "6b1cb253.86fb4c",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 3955,
+ "y": 5905,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "6b696600.0c94ac",
+ "4acaf17d.83ce3",
+ "26219883.65a92",
+ "1d162fbe.3673a"
+ ]
+ ]
+ },
+ {
+ "id": "4a1e792c.5d4bf8",
+ "type": "set",
+ "name": "unset otnTopoIdSrc",
+ "xml": "<set>\n<parameter name='otnTopoIdSrc' value='' />\n",
+ "comments": "",
+ "x": 4699,
+ "y": 6268,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "c55840d4.91858",
+ "type": "save",
+ "name": "update connectivity resource in AAI",
+ "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \n key='connectivity.connectivity-id = $tmp.the-connectivity.connectivity-id'>\n<parameter name='connectivity-id' value='`$tmp.the-connectivity.connectivity-id`' />\n<parameter name='operational-status' value='Modified' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4814,
+ "y": 6048,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "f6160d91.b00c5",
+ "type": "comment",
+ "name": "Update the existing eth-srv by adding the new LEAF UNI into its list of endpoints",
+ "info": "Update the existing eth-srv by adding the new LEAF UNI into its list of endpoints",
+ "comments": "",
+ "x": 4951,
+ "y": 5998,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "d896a0c9.160fe8",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:cll-vnf-topology-operation-cll-F1-activate",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-F1-activate' mode='sync' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4278,
+ "y": 6108,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "8cf629c6.d63328",
+ "type": "save",
+ "name": "save ROOT UNI in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='uni' \n key='uni.id = $tmp.ROOT.uni-p-interface-long'>\n<parameter name='id' value='`$tmp.ROOT.uni-p-interface-long`' />\n<parameter name='tp-id' value='`$tmp.ROOT.uni-tp-id`' />\n<parameter name='cvlan' value='`$tmp.aai.network-route-B.logical-interface-id`' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3790,
+ "y": 3546,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "b2b24558.6d75f8",
+ "type": "comment",
+ "name": "NOT NEEDED ANYMORE?",
+ "info": "",
+ "comments": "",
+ "x": 3972,
+ "y": 1801,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "bb31c80c.f29398",
+ "type": "comment",
+ "name": "NOT NEEDED ANYMORE?",
+ "info": "",
+ "comments": "",
+ "x": 3950,
+ "y": 2671,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "f5dbe745.5a7ca",
+ "type": "comment",
+ "name": "TEMPORARY REMOVING THE FOLLOWING TWO NODES",
+ "info": "",
+ "comments": "",
+ "x": 3781,
+ "y": 4013,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "58aa906f.8d52e",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:cll-vnf-topology-operation-cll-F1-activate",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-F1-activate' mode='sync' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3462,
+ "y": 6045,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "b0ed6ff1.30772",
+ "type": "set",
+ "name": "set current-provider-id and current-cvlan-id",
+ "xml": "<set>\n<parameter name='tmp.current-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />\n<parameter name='tmp.current-cvlan-id' value='`$tmp.aai.network-route-A.logical-interface-id`' />\n\n<!--<parameter name='access-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />-->\n<!--<parameter name='access-client-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -7]`' />-->\n<!--<parameter name='access-topology-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -5]`' />-->\n<!--<parameter name='access-node-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />-->\n<!--<parameter name='access-ltp-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -1]`' />-->\n<!--<parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />-->",
+ "comments": "",
+ "x": 3712,
+ "y": 4669,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "727be5c.c27771c",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:cll-vnf-topology-operation-cll-helper-find-connectivity",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-helper-find-connectivity' mode='sync' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3845,
+ "y": 4717,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "5ecdaa6f.e24ff4",
+ "type": "switchNode",
+ "name": "switch found-connectivity?",
+ "xml": "\n<switch test=\"`$found-connectivity`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4352,
+ "y": 4598,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "27ad8f3e.2bb148",
+ "1abb8af.fa663f5"
+ ]
+ ]
+ },
+ {
+ "id": "27ad8f3e.2bb148",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4545,
+ "y": 4599,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "c5f554a7.be6918"
+ ]
+ ]
+ },
+ {
+ "id": "1abb8af.fa663f5",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4549,
+ "y": 4643,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "359fab60.1e1edc"
+ ]
+ ]
+ },
+ {
+ "id": "359fab60.1e1edc",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 4688,
+ "y": 4638,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "9fca53b1.0733f"
+ ]
+ ]
+ },
+ {
+ "id": "c5f554a7.be6918",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 4688,
+ "y": 4595,
+ "z": "2902829f.18c74e",
+ "wires": [
+ [
+ "3d40af5d.b5351",
+ "113bf6b.aca4d89",
+ "e3b325e.735f958",
+ "9a0e4d6a.9ad2e"
+ ]
+ ]
+ },
+ {
+ "id": "9fca53b1.0733f",
+ "type": "set",
+ "name": "set prop.connectivity-domainA-uuid",
+ "xml": "<set>\n<parameter name='uuid.connectivity-domainA-uuid' value=\"`$tmp.the-connectivity.connectivity-id`\" />\n\n\n",
+ "comments": "",
+ "x": 5082,
+ "y": 4889,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "fa5528e4.cedd58",
+ "type": "comment",
+ "name": "populate connectivity-A variable in the context map",
+ "info": "",
+ "comments": "",
+ "x": 5089,
+ "y": 4843,
+ "z": "2902829f.18c74e",
+ "wires": []
+ },
+ {
+ "id": "9ff86b70.d2fcb",
+ "type": "call",
+ "name": "call GENERIC-RESOURCE-API:cll-vnf-topology-operation-find-maximum-used-tpn",
+ "xml": "<call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-find-maximum-used-tpn' mode='sync' >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4887,
+ "y": 6593,
+ "z": "2902829f.18c74e",
+ "wires": [
+ []
+ ]
+ }
+] \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-find-maximum-used-tpn.json b/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-find-maximum-used-tpn.json
new file mode 100644
index 00000000..343def6f
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-find-maximum-used-tpn.json
@@ -0,0 +1,289 @@
+[
+ {
+ "id": "48a61ee8.0b719",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 173,
+ "y": 135,
+ "z": "4bbda34f.42b12c",
+ "wires": [
+ [
+ "e311175c.73cf98"
+ ]
+ ]
+ },
+ {
+ "id": "e311175c.73cf98",
+ "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": 309,
+ "y": 248,
+ "z": "4bbda34f.42b12c",
+ "wires": [
+ [
+ "f0c04bab.58634"
+ ]
+ ]
+ },
+ {
+ "id": "f0c04bab.58634",
+ "type": "method",
+ "name": "cll-vnf-topology-operation-find-maximum-used-tpn",
+ "xml": "<method rpc='cll-vnf-topology-operation-find-maximum-used-tpn' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 425.0001220703125,
+ "y": 350,
+ "z": "4bbda34f.42b12c",
+ "wires": [
+ [
+ "7e34bfe8.37391"
+ ]
+ ]
+ },
+ {
+ "id": "7e34bfe8.37391",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 599.9688720703125,
+ "y": 430.74163818359375,
+ "z": "4bbda34f.42b12c",
+ "wires": [
+ [
+ "c553bcbc.9ba518",
+ "9e275680.4bddb"
+ ]
+ ]
+ },
+ {
+ "id": "c553bcbc.9ba518",
+ "type": "save",
+ "name": "get all-vpn-bindings from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"vpn-bindings\"\n\t key=\"selflink = 'https://aai.onap:8443/aai/v21/network/vpn-bindings\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"tmp.aai.allvpnbindings\" >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 826,
+ "y": 431,
+ "z": "4bbda34f.42b12c",
+ "wires": [
+ [
+ "dac99129.1b70d8",
+ "f2598ce0.05b6e8",
+ "6bee9d7e.dbbb84"
+ ]
+ ]
+ },
+ {
+ "id": "dac99129.1b70d8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1048,
+ "y": 429,
+ "z": "4bbda34f.42b12c",
+ "wires": [
+ [
+ "e7d398c3.c1aec"
+ ]
+ ]
+ },
+ {
+ "id": "f2598ce0.05b6e8",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1058.490966796875,
+ "y": 305.57403564453125,
+ "z": "4bbda34f.42b12c",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "6bee9d7e.dbbb84",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1056,
+ "y": 349,
+ "z": "4bbda34f.42b12c",
+ "wires": [
+ [
+ "c0d94944.aeb218"
+ ]
+ ]
+ },
+ {
+ "id": "e7d398c3.c1aec",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1212,
+ "y": 430,
+ "z": "4bbda34f.42b12c",
+ "wires": [
+ [
+ "f7213a60.a7bf88"
+ ]
+ ]
+ },
+ {
+ "id": "c0d94944.aeb218",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 1223,
+ "y": 348,
+ "z": "4bbda34f.42b12c",
+ "wires": []
+ },
+ {
+ "id": "f7213a60.a7bf88",
+ "type": "for",
+ "name": "for allvpnbidx in allvpnbindings",
+ "xml": "<for index='allvpnbidx' start='0' end='`$tmp.aai.allvpnbindings.vpn-binding_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 200,
+ "y": 580,
+ "z": "4bbda34f.42b12c",
+ "wires": [
+ [
+ "d3ed1465.8f79e8"
+ ]
+ ]
+ },
+ {
+ "id": "d3ed1465.8f79e8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 463,
+ "y": 580,
+ "z": "4bbda34f.42b12c",
+ "wires": [
+ [
+ "d00c4aae.149b2"
+ ]
+ ]
+ },
+ {
+ "id": "d00c4aae.149b2",
+ "type": "switchNode",
+ "name": "switch customer-vpn-id is greater than maxtpn",
+ "xml": "<switch test=\"`$tmp.aai.allvpnbindings.vpn-binding[$allvpnbidx].customer-vpn-id >= $maxtpn `\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 752,
+ "y": 580,
+ "z": "4bbda34f.42b12c",
+ "wires": [
+ [
+ "e8157a5b.cfaa1",
+ "f2a0edb3.6895e"
+ ]
+ ]
+ },
+ {
+ "id": "e8157a5b.cfaa1",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1034,
+ "y": 560,
+ "z": "4bbda34f.42b12c",
+ "wires": [
+ [
+ "b8fa7ef9.c40c38"
+ ]
+ ]
+ },
+ {
+ "id": "f2a0edb3.6895e",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1034,
+ "y": 609,
+ "z": "4bbda34f.42b12c",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "b8fa7ef9.c40c38",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1202,
+ "y": 560,
+ "z": "4bbda34f.42b12c",
+ "wires": [
+ [
+ "66fd0662.02fed8",
+ "8abe9ad2.6ab3e"
+ ]
+ ]
+ },
+ {
+ "id": "9e275680.4bddb",
+ "type": "set",
+ "name": "set initial maxtpn and newToBeUsedMaxtpn",
+ "xml": "<set>\n<parameter name='maxtpn' value='1' />\n<parameter name='newToBeUsedMaxtpn' value='1' />\n",
+ "comments": "",
+ "x": 851,
+ "y": 244,
+ "z": "4bbda34f.42b12c",
+ "wires": []
+ },
+ {
+ "id": "66fd0662.02fed8",
+ "type": "set",
+ "name": "set maxtpn",
+ "xml": "<set>\n<parameter name='maxtpn' value='`$tmp.aai.allvpnbindings.vpn-binding[$allvpnbidx].customer-vpn-id`' />\n",
+ "comments": "",
+ "x": 1377,
+ "y": 560,
+ "z": "4bbda34f.42b12c",
+ "wires": []
+ },
+ {
+ "id": "8abe9ad2.6ab3e",
+ "type": "set",
+ "name": "set newToBeUsedMaxtpn",
+ "xml": "<set>\n<parameter name='newToBeUsedMaxtpn' value='`$maxtpn + $tmp.aai.allvpnbindings.vpn-binding[$allvpnbidx].route-distinguisher`' />\n",
+ "comments": "",
+ "x": 1407,
+ "y": 611,
+ "z": "4bbda34f.42b12c",
+ "wires": []
+ }
+] \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-ROOT-conn.json b/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-ROOT-conn.json
new file mode 100644
index 00000000..0a7ce271
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-ROOT-conn.json
@@ -0,0 +1,311 @@
+[
+ {
+ "id": "c33d6496.da3878",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 166,
+ "y": 104,
+ "z": "21b7f471.47c7cc",
+ "wires": [
+ [
+ "248cabde.5d765c"
+ ]
+ ]
+ },
+ {
+ "id": "248cabde.5d765c",
+ "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": 450.2856903076172,
+ "y": 165.23810863494873,
+ "z": "21b7f471.47c7cc",
+ "wires": [
+ [
+ "1bdaee71.203ba2"
+ ]
+ ]
+ },
+ {
+ "id": "1bdaee71.203ba2",
+ "type": "method",
+ "name": "method cll-vnf-topology-operation-cll-helper-find-ROOT-conn",
+ "xml": "<method rpc='cll-vnf-topology-operation-cll-helper-find-ROOT-conn' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 405.4285888671875,
+ "y": 257.0000305175781,
+ "z": "21b7f471.47c7cc",
+ "wires": [
+ [
+ "64d5e785.7466f8"
+ ]
+ ]
+ },
+ {
+ "id": "64d5e785.7466f8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 766.238037109375,
+ "y": 241.66668701171875,
+ "z": "21b7f471.47c7cc",
+ "wires": [
+ [
+ "6207a29a.8617c4",
+ "191e2efd.9488c1",
+ "143f0aa4.b75f05"
+ ]
+ ]
+ },
+ {
+ "id": "6207a29a.8617c4",
+ "type": "save",
+ "name": "get all-connectivities from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"connectivities\"\n\t key=\"selflink = 'https://aai.onap:8443/aai/v24/network/connectivities/'\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"tmp.aai.helper-root-all-connectivities\" >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 251,
+ "y": 427,
+ "z": "21b7f471.47c7cc",
+ "wires": [
+ [
+ "bcd679ba.f0004",
+ "3b7a7b5.0230884",
+ "64bbf1e2.e99a8"
+ ]
+ ]
+ },
+ {
+ "id": "bcd679ba.f0004",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 495,
+ "y": 387,
+ "z": "21b7f471.47c7cc",
+ "wires": [
+ [
+ "34630da2.df03e2"
+ ]
+ ]
+ },
+ {
+ "id": "3b7a7b5.0230884",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 492.490966796875,
+ "y": 436.57403564453125,
+ "z": "21b7f471.47c7cc",
+ "wires": [
+ [
+ "ddd603c0.1c692"
+ ]
+ ]
+ },
+ {
+ "id": "64bbf1e2.e99a8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 490,
+ "y": 479,
+ "z": "21b7f471.47c7cc",
+ "wires": [
+ [
+ "16afb1e9.98dc26"
+ ]
+ ]
+ },
+ {
+ "id": "34630da2.df03e2",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 643,
+ "y": 388,
+ "z": "21b7f471.47c7cc",
+ "wires": [
+ [
+ "55ecd83e.15a1d"
+ ]
+ ]
+ },
+ {
+ "id": "ddd603c0.1c692",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 642.0623779296875,
+ "y": 436.8597717285156,
+ "z": "21b7f471.47c7cc",
+ "wires": []
+ },
+ {
+ "id": "16afb1e9.98dc26",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 641,
+ "y": 476,
+ "z": "21b7f471.47c7cc",
+ "wires": []
+ },
+ {
+ "id": "55ecd83e.15a1d",
+ "type": "for",
+ "name": "for helprconnidx in all-connectivities",
+ "xml": "<for index='helprconnidx' start='0' end='`$tmp.aai.helper-root-all-connectivities.connectivity_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 890,
+ "y": 383,
+ "z": "21b7f471.47c7cc",
+ "wires": [
+ [
+ "fc22cf6b.f0c7c"
+ ]
+ ]
+ },
+ {
+ "id": "fc22cf6b.f0c7c",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1137,
+ "y": 389,
+ "z": "21b7f471.47c7cc",
+ "wires": [
+ [
+ "c4afc0a8.ad7c88"
+ ]
+ ]
+ },
+ {
+ "id": "c4afc0a8.ad7c88",
+ "type": "switchNode",
+ "name": "switch color-aware is ROOT?",
+ "xml": "\n<switch test=\"`$tmp.aai.helper-root-all-connectivities.connectivity[$helprconnidx].color-aware == $tmp.ROOT.uni-p-interface-long`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 331,
+ "y": 638,
+ "z": "21b7f471.47c7cc",
+ "wires": [
+ [
+ "904750de.971a4"
+ ]
+ ]
+ },
+ {
+ "id": "904750de.971a4",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 540,
+ "y": 632,
+ "z": "21b7f471.47c7cc",
+ "wires": [
+ [
+ "383b6bb8.2c2de4"
+ ]
+ ]
+ },
+ {
+ "id": "383b6bb8.2c2de4",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 697,
+ "y": 632,
+ "z": "21b7f471.47c7cc",
+ "wires": [
+ [
+ "b4d77263.4231a8",
+ "16085fc0.8f0cc",
+ "5d3bf45c.2ebcf4"
+ ]
+ ]
+ },
+ {
+ "id": "191e2efd.9488c1",
+ "type": "set",
+ "name": "unset found-root-connectivity",
+ "xml": "<set>\n<parameter name='found-root-connectivity' value=\"false\" />\n",
+ "comments": "",
+ "x": 1009,
+ "y": 156,
+ "z": "21b7f471.47c7cc",
+ "wires": []
+ },
+ {
+ "id": "b4d77263.4231a8",
+ "type": "set",
+ "name": "set found-root-connectivity=true",
+ "xml": "<set>\n<parameter name='found-root-connectivity' value=\"true\" />\n",
+ "comments": "",
+ "x": 958,
+ "y": 580,
+ "z": "21b7f471.47c7cc",
+ "wires": []
+ },
+ {
+ "id": "16085fc0.8f0cc",
+ "type": "set",
+ "name": "set tmp.aai.ROOT.connectivity.",
+ "xml": "<set>\n<parameter name='tmp.aai.ROOT.connectivity.' value=\"`$tmp.aai.helper-root-all-connectivities.connectivity[$helprconnidx].`\" />\n",
+ "comments": "",
+ "x": 961,
+ "y": 633,
+ "z": "21b7f471.47c7cc",
+ "wires": []
+ },
+ {
+ "id": "143f0aa4.b75f05",
+ "type": "set",
+ "name": "unset tmp.aai.ROOT.connectivity.",
+ "xml": "<set>\n<parameter name='tmp.aai.ROOT.connectivity.' value=\"\" />\n",
+ "comments": "",
+ "x": 1027,
+ "y": 200,
+ "z": "21b7f471.47c7cc",
+ "wires": []
+ },
+ {
+ "id": "5d3bf45c.2ebcf4",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 889,
+ "y": 696,
+ "z": "21b7f471.47c7cc",
+ "wires": []
+ }
+] \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-connectivity.json b/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-connectivity.json
new file mode 100644
index 00000000..713d6aba
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-connectivity.json
@@ -0,0 +1,360 @@
+[
+ {
+ "id": "4ee6b24.013d9cc",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 163,
+ "y": 91,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "42ee2cb2.8b0aa4"
+ ]
+ ]
+ },
+ {
+ "id": "42ee2cb2.8b0aa4",
+ "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": 447.2856903076172,
+ "y": 152.23810863494873,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "2d8be51e.1fe5b2"
+ ]
+ ]
+ },
+ {
+ "id": "2d8be51e.1fe5b2",
+ "type": "method",
+ "name": "method cll-vnf-topology-operation-cll-helper-find-connectivity",
+ "xml": "<method rpc='cll-vnf-topology-operation-cll-helper-find-connectivity' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 402.4285888671875,
+ "y": 244.00003051757812,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "44543bcb.341e5c"
+ ]
+ ]
+ },
+ {
+ "id": "44543bcb.341e5c",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 763.238037109375,
+ "y": 228.66668701171875,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "93197478.d2fae",
+ "eb6c2023.7ef7a",
+ "d72f415d.01bc08"
+ ]
+ ]
+ },
+ {
+ "id": "93197478.d2fae",
+ "type": "save",
+ "name": "get all-connectivities from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"connectivities\"\n\t key=\"selflink = 'https://aai.onap:8443/aai/v24/network/connectivities/'\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"tmp.aai.helper-all-connectivities\" >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 248,
+ "y": 414,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "3210bd43.c197f2",
+ "cb92b047.8ddef8",
+ "39efd1fc.091d56"
+ ]
+ ]
+ },
+ {
+ "id": "3210bd43.c197f2",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 492,
+ "y": 374,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "b85791e3.02f868"
+ ]
+ ]
+ },
+ {
+ "id": "cb92b047.8ddef8",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 489.490966796875,
+ "y": 423.57403564453125,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "7f9747fb.6ed01"
+ ]
+ ]
+ },
+ {
+ "id": "39efd1fc.091d56",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 487,
+ "y": 466,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "d53ce1e7.42a2c"
+ ]
+ ]
+ },
+ {
+ "id": "b85791e3.02f868",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 640,
+ "y": 375,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "538f3beb.2d964c"
+ ]
+ ]
+ },
+ {
+ "id": "7f9747fb.6ed01",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 639.0623779296875,
+ "y": 423.8597717285156,
+ "z": "1453a3a4.2dddfc",
+ "wires": []
+ },
+ {
+ "id": "d53ce1e7.42a2c",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 638,
+ "y": 463,
+ "z": "1453a3a4.2dddfc",
+ "wires": []
+ },
+ {
+ "id": "538f3beb.2d964c",
+ "type": "for",
+ "name": "for helpconnidx in all-connectivities",
+ "xml": "<for index='helpconnidx' start='0' end='`$tmp.aai.helper-all-connectivities.connectivity_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 887,
+ "y": 370,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "344678ba.b7f29"
+ ]
+ ]
+ },
+ {
+ "id": "344678ba.b7f29",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1134,
+ "y": 376,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "d48cc8ae.307b68"
+ ]
+ ]
+ },
+ {
+ "id": "d48cc8ae.307b68",
+ "type": "switchNode",
+ "name": "switch current provider-id?",
+ "xml": "\n<switch test=\"`$tmp.current-provider-id == $tmp.aai.helper-all-connectivities.connectivity[$helpconnidx].access-provider-id`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 328,
+ "y": 625,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "bc092a3b.859928"
+ ]
+ ]
+ },
+ {
+ "id": "bc092a3b.859928",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 537,
+ "y": 619,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "121a7afe.07beb5"
+ ]
+ ]
+ },
+ {
+ "id": "121a7afe.07beb5",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 694,
+ "y": 619,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "7603071b.598a38"
+ ]
+ ]
+ },
+ {
+ "id": "7603071b.598a38",
+ "type": "switchNode",
+ "name": "switch current-cvlan-id?",
+ "xml": "\n<switch test=\"`$tmp.current-cvlan-id == $tmp.aai.helper-all-connectivities.connectivity[$helpconnidx].cvlan`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 320,
+ "y": 713,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "e6157f7f.780a28"
+ ]
+ ]
+ },
+ {
+ "id": "e6157f7f.780a28",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 529,
+ "y": 707,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "4bd1a2a7.9f2d14"
+ ]
+ ]
+ },
+ {
+ "id": "eb6c2023.7ef7a",
+ "type": "set",
+ "name": "unset found-connectivity",
+ "xml": "<set>\n<parameter name='found-connectivity' value=\"false\" />\n",
+ "comments": "",
+ "x": 1006,
+ "y": 143,
+ "z": "1453a3a4.2dddfc",
+ "wires": []
+ },
+ {
+ "id": "c418ca90.026d18",
+ "type": "set",
+ "name": "set found-connectivity=true",
+ "xml": "<set>\n<parameter name='found-connectivity' value=\"true\" />\n",
+ "comments": "",
+ "x": 935,
+ "y": 707,
+ "z": "1453a3a4.2dddfc",
+ "wires": []
+ },
+ {
+ "id": "4bd1a2a7.9f2d14",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 697,
+ "y": 708,
+ "z": "1453a3a4.2dddfc",
+ "wires": [
+ [
+ "c418ca90.026d18",
+ "cce4f57f.9fec88",
+ "cc11b7b4.773dc8"
+ ]
+ ]
+ },
+ {
+ "id": "cce4f57f.9fec88",
+ "type": "set",
+ "name": "set the-connectivity",
+ "xml": "<set>\n<parameter name='tmp.the-connectivity.' value=\"`$tmp.aai.helper-all-connectivities.connectivity[$helpconnidx].`\" />\n",
+ "comments": "",
+ "x": 916,
+ "y": 763,
+ "z": "1453a3a4.2dddfc",
+ "wires": []
+ },
+ {
+ "id": "d72f415d.01bc08",
+ "type": "set",
+ "name": "unset tmp.the-connectivity.",
+ "xml": "<set>\n<parameter name='tmp.the-connectivity.' value=\"\" />\n",
+ "comments": "",
+ "x": 1010,
+ "y": 187,
+ "z": "1453a3a4.2dddfc",
+ "wires": []
+ },
+ {
+ "id": "cc11b7b4.773dc8",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 877,
+ "y": 814,
+ "z": "1453a3a4.2dddfc",
+ "wires": []
+ }
+] \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-logic.json b/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-logic.json
new file mode 100644
index 00000000..340a1b89
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/json/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-logic.json
@@ -0,0 +1,1444 @@
+[
+ {
+ "id": "7b0a2375.19194c",
+ "type": "save",
+ "name": "get all-connectivities from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"connectivities\"\n\t key=\"selflink = 'https://aai.onap:8443/aai/v24/network/connectivities\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"tmp.aai.all-connectivities\" >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 271,
+ "y": 341,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "f06c3947.630bf",
+ "baa57021.06de88",
+ "770d11f9.13541"
+ ]
+ ]
+ },
+ {
+ "id": "f06c3947.630bf",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 509,
+ "y": 309,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "8f09fc1f.1f9e1"
+ ]
+ ]
+ },
+ {
+ "id": "baa57021.06de88",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 509.490966796875,
+ "y": 354.57403564453125,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "770d11f9.13541",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 507,
+ "y": 398,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "8f09fc1f.1f9e1",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 682,
+ "y": 307,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "e755721c.711348"
+ ]
+ ]
+ },
+ {
+ "id": "15095086.d2123f",
+ "type": "for",
+ "name": "for connidx in all-connectivities",
+ "xml": "<for index='connidx' start='0' end='`$tmp.aai.all-connectivities.connectivity_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 718,
+ "y": 528,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "990dc4a9.cfdf28"
+ ]
+ ]
+ },
+ {
+ "id": "990dc4a9.cfdf28",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 157,
+ "y": 624,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "504b7173.9a04",
+ "abd234d.58ac848"
+ ]
+ ]
+ },
+ {
+ "id": "504b7173.9a04",
+ "type": "switchNode",
+ "name": "switch conn type is mdsc",
+ "xml": "<switch test=\"`$tmp.aai.all-connectivities.connectivity[$connidx].vpn-type == 'mdsc' `\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 187,
+ "y": 745,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "21e297f1.dc3d08",
+ "1c75dc19.23204c"
+ ]
+ ]
+ },
+ {
+ "id": "21e297f1.dc3d08",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 391,
+ "y": 778,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "f10ea601.371e28"
+ ]
+ ]
+ },
+ {
+ "id": "1c75dc19.23204c",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 393,
+ "y": 723,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "eba2e2ab.d5d96"
+ ]
+ ]
+ },
+ {
+ "id": "f10ea601.371e28",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 543,
+ "y": 778,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "7a2fe87b.22223"
+ ]
+ ]
+ },
+ {
+ "id": "e755721c.711348",
+ "type": "switchNode",
+ "name": "switch conn list empty?",
+ "xml": "<switch test=\"`$tmp.aai.all-connectivities.connectivity_length == 0`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 274,
+ "y": 523,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "f98c61eb.311468",
+ "f482191d.a1c73"
+ ]
+ ]
+ },
+ {
+ "id": "f98c61eb.311468",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 499,
+ "y": 458,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "f482191d.a1c73",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 493,
+ "y": 528,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "15095086.d2123f"
+ ]
+ ]
+ },
+ {
+ "id": "f6a19ff.e5e506",
+ "type": "comment",
+ "name": "ein addi normal",
+ "info": "",
+ "comments": "",
+ "x": 644,
+ "y": 457,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "6b9d01c8.8380d",
+ "type": "comment",
+ "name": "ein addi normal",
+ "info": "",
+ "comments": "",
+ "x": 667,
+ "y": 353,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "5b66feaa.e86c28",
+ "type": "comment",
+ "name": "ein addi normal",
+ "info": "",
+ "comments": "",
+ "x": 662,
+ "y": 396,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "d5e8e6d4.6174b",
+ "type": "switchNode",
+ "name": "switch conn vlan same as curr ll",
+ "xml": "<!--<switch test=\"`$tmp.aai.all-connectivities.connectivity[$connidx].cvlan == $tmp.aai.network-route-LEAF.logical-interface-id `\">-->\n<switch test=\"`$tmp.aai.mmrconnectivity.cvlan == $tmp.aai.network-route-LEAF.logical-interface-id `\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 236,
+ "y": 1432,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "cd252ece.fc6de",
+ "60cb2182.fee2"
+ ]
+ ]
+ },
+ {
+ "id": "cd252ece.fc6de",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 447,
+ "y": 1402,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "4f3cf1a8.7050e"
+ ]
+ ]
+ },
+ {
+ "id": "60cb2182.fee2",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 445,
+ "y": 1454,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "cef30c4.ef4cd7"
+ ]
+ ]
+ },
+ {
+ "id": "eba2e2ab.d5d96",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 548,
+ "y": 722,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "4f3cf1a8.7050e",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 602,
+ "y": 1403,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "cef30c4.ef4cd7",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='connrelidx' start='0' end='`$tmp.aai.mmrconnectivity.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 629,
+ "y": 1452,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "d05fb37f.c486c8",
+ "1276102f.a824d8"
+ ]
+ ]
+ },
+ {
+ "id": "d05fb37f.c486c8",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.mmrconnectivity.relationship-list.relationship[$connrelidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 835,
+ "y": 1452,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "25263c04.90ef7c"
+ ]
+ ]
+ },
+ {
+ "id": "25263c04.90ef7c",
+ "type": "outcome",
+ "name": "UNI",
+ "xml": "<outcome value='uni'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 999.28564453125,
+ "y": 1451.82177734375,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "15768efa.a62941"
+ ]
+ ]
+ },
+ {
+ "id": "15768efa.a62941",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 197.1171875,
+ "y": 1553.34033203125,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "1e97f046.fc5fc8",
+ "11d23afb.a558bd"
+ ]
+ ]
+ },
+ {
+ "id": "d5f57787.9b2fc8",
+ "type": "comment",
+ "name": "TODO",
+ "info": "",
+ "comments": "",
+ "x": 216,
+ "y": 1460,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "3f1e619e.884ab6",
+ "type": "switchNode",
+ "name": "switch uni.tp-id is ROOT",
+ "xml": "<switch test='`$tmp.aai.uni.id == $tmp.ROOT.uni-p-interface-long`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 916,
+ "y": 1555,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "b4219e4f.0520e",
+ "777497f5.84d998"
+ ]
+ ]
+ },
+ {
+ "id": "1e97f046.fc5fc8",
+ "type": "set",
+ "name": "set tmp.uni.id",
+ "xml": "<set>\n<parameter name='tmp.uni.id' value='`$tmp.aai.mmrconnectivity.relationship-list.relationship[$connrelidx].relationship-data[0].relationship-value`' />\n",
+ "comments": "",
+ "x": 370,
+ "y": 1549,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "1276102f.a824d8",
+ "type": "set",
+ "name": "unset tmp.uni.id",
+ "xml": "<set>\n<parameter name='tmp.uni.id' value='' />\n",
+ "comments": "",
+ "x": 828,
+ "y": 1402,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "11d23afb.a558bd",
+ "type": "save",
+ "name": "get uni from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"uni\"\n\t key=\"uni.id = $tmp.uni.id\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"tmp.aai.uni\" >\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 373,
+ "y": 1596,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "892d20e.12d85e",
+ "7da1ee3a.e78cb",
+ "58ab5e35.f749d"
+ ]
+ ]
+ },
+ {
+ "id": "892d20e.12d85e",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 545,
+ "y": 1580,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "8ca2de8b.fa6f4"
+ ]
+ ]
+ },
+ {
+ "id": "7da1ee3a.e78cb",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 545.490966796875,
+ "y": 1625.5740356445312,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "889ff.98f506018"
+ ]
+ ]
+ },
+ {
+ "id": "58ab5e35.f749d",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 546,
+ "y": 1666,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "8d5edab7.25bff"
+ ]
+ ]
+ },
+ {
+ "id": "889ff.98f506018",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='500' />\n<parameter name='error-message' value='uni not found' />\n",
+ "comments": "",
+ "x": 696,
+ "y": 1626,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "8d5edab7.25bff",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='500' />\n<parameter name='error-message' value='uni not found' />\n",
+ "comments": "",
+ "x": 693,
+ "y": 1665,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "8ca2de8b.fa6f4",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 706,
+ "y": 1576,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "8429b9e7.1b46b",
+ "f62ad7f3.b94538"
+ ]
+ ]
+ },
+ {
+ "id": "bc37f012.c984b",
+ "type": "comment",
+ "name": "THIS SHOULD BE RETIRED?",
+ "info": "",
+ "comments": "",
+ "x": 898,
+ "y": 1509,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "f7004653.aced4",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 178,
+ "y": 78,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "4d6292f9.29a84c"
+ ]
+ ]
+ },
+ {
+ "id": "4d6292f9.29a84c",
+ "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": 462.2856903076172,
+ "y": 139.23810863494873,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "cb7f429c.c16cd8"
+ ]
+ ]
+ },
+ {
+ "id": "cb7f429c.c16cd8",
+ "type": "method",
+ "name": "method cll-vnf-topology-operation-cll-logic",
+ "xml": "<method rpc='cll-vnf-topology-operation-cll-logic' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 468.42860412597656,
+ "y": 224.00003051757812,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "f9801a6c.b832c"
+ ]
+ ]
+ },
+ {
+ "id": "f9801a6c.b832c",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 778.238037109375,
+ "y": 215.66668701171875,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "7b0a2375.19194c",
+ "faf609fb.751ba",
+ "a41833d1.ac9d88",
+ "5bc7dc0.190fca4",
+ "287c8e9d.ecd2da"
+ ]
+ ]
+ },
+ {
+ "id": "dfb8236b.074ec8",
+ "type": "set",
+ "name": "set middle-man-conn",
+ "xml": "<set>\n<parameter name='middle-man-conn.' value='`$tmp.aai.all-connectivities.connectivity[$connidx].`' />\n",
+ "comments": "",
+ "x": 1418,
+ "y": 1597,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "b4219e4f.0520e",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1095,
+ "y": 1511,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "71aa028b.bdc3e4"
+ ]
+ ]
+ },
+ {
+ "id": "777497f5.84d998",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1094,
+ "y": 1567,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "aa4430ef.d9e498"
+ ]
+ ]
+ },
+ {
+ "id": "aa4430ef.d9e498",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1236,
+ "y": 1566,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "dfb8236b.074ec8",
+ "e041bd52.978d1"
+ ]
+ ]
+ },
+ {
+ "id": "e041bd52.978d1",
+ "type": "set",
+ "name": "set found-middle-man",
+ "xml": "<set>\n<parameter name='found-middle-man' value=\"true\" />\n",
+ "comments": "",
+ "x": 1422,
+ "y": 1543,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "faf609fb.751ba",
+ "type": "set",
+ "name": "set found-middle-man",
+ "xml": "<set>\n<parameter name='found-middle-man' value=\"false\" />\n",
+ "comments": "",
+ "x": 1016,
+ "y": 152,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "8429b9e7.1b46b",
+ "type": "switchNode",
+ "name": "switch uni-tp-id-node-part is OTHERSIRE-NODEONLY",
+ "xml": "<switch test='`$tmp.uni.pnf-name == $tmp.LEAF.pnf-name-long`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 945,
+ "y": 1972,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "967dd77f.a9ddf8",
+ "3a04bb6.f5843c4"
+ ]
+ ]
+ },
+ {
+ "id": "967dd77f.a9ddf8",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1226,
+ "y": 1949,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "e6273a1e.a882d8"
+ ]
+ ]
+ },
+ {
+ "id": "3a04bb6.f5843c4",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1219,
+ "y": 2008,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "ad97b1cf.83f91"
+ ]
+ ]
+ },
+ {
+ "id": "ad97b1cf.83f91",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1361,
+ "y": 2007,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "5b517936.cbfa08",
+ "311640ea.18d798",
+ "1778233a.2c990d",
+ "aa0b4226.979d68"
+ ]
+ ]
+ },
+ {
+ "id": "71aa028b.bdc3e4",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1237,
+ "y": 1501,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "e6273a1e.a882d8",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1356,
+ "y": 1953,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "311640ea.18d798",
+ "type": "set",
+ "name": "set middle-man-conn",
+ "xml": "<set>\n<parameter name='middle-man-conn.' value='`$tmp.aai.all-connectivities.connectivity[$connidx].`' />\n",
+ "comments": "",
+ "x": 1569,
+ "y": 2026,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "5b517936.cbfa08",
+ "type": "set",
+ "name": "set no-pce-call",
+ "xml": "<set>\n<parameter name='no-pce-call' value=\"true\" />\n",
+ "comments": "",
+ "x": 1553,
+ "y": 1974,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "a41833d1.ac9d88",
+ "type": "set",
+ "name": "set no-pce-call",
+ "xml": "<set>\n<parameter name='no-pce-call' value=\"false\" />\n",
+ "comments": "",
+ "x": 993,
+ "y": 198,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "663e6db8.3ac154",
+ "type": "comment",
+ "name": "find the node part of the uni.id (uni-tp-id-node-part)",
+ "info": "",
+ "comments": "",
+ "x": 966,
+ "y": 1781,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "f62ad7f3.b94538",
+ "type": "execute",
+ "name": "execute split id to get pnf-name",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$tmp.aai.uni.id`'/>\n<!--<parameter name=\"regex\" value=\"[^-]+$\"/>-->\n<parameter name=\"regex\" value=\"[-]+\"/>\n<parameter name=\"ctx_memory_result_key\" value=\"param-prefix-uni-pnfName\"/>\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 901,
+ "y": 1838,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "a1c99a4f.cc4ba8",
+ "b212c5d0.bf7fe"
+ ]
+ ]
+ },
+ {
+ "id": "b212c5d0.bf7fe",
+ "type": "failure",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1124,
+ "y": 1824,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "476892d7.bc3d8c"
+ ]
+ ]
+ },
+ {
+ "id": "a1c99a4f.cc4ba8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1126,
+ "y": 1857,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "cb705f2e.381028"
+ ]
+ ]
+ },
+ {
+ "id": "476892d7.bc3d8c",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1272,
+ "y": 1817,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "dd2db0f7.6e11c8"
+ ]
+ ]
+ },
+ {
+ "id": "cb705f2e.381028",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while splitting sna1_route\" />\n",
+ "comments": "",
+ "x": 1269,
+ "y": 1854,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "dd2db0f7.6e11c8",
+ "type": "set",
+ "name": "set pnf-name",
+ "xml": "<set>\n<parameter name='tmp.uni.pnf-name' value=\"`$param-prefix-uni-pnfName[0] + '-' +\n $param-prefix-uni-pnfName[1] + '-' +\n $param-prefix-uni-pnfName[2] + '-' +\n $param-prefix-uni-pnfName[3] + '-' +\n $param-prefix-uni-pnfName[4] + '-' +\n $param-prefix-uni-pnfName[5] + '-' +\n $param-prefix-uni-pnfName[6] + '-' +\n $param-prefix-uni-pnfName[7] + '-' +\n $param-prefix-uni-pnfName[8]`\" />\n",
+ "comments": "",
+ "x": 1449,
+ "y": 1817,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "7a2fe87b.22223",
+ "type": "switchNode",
+ "name": "switch color-aware is ROOT",
+ "xml": "<switch test=\"`$tmp.aai.all-connectivities.connectivity[$connidx].color-aware == $tmp.ROOT.uni-p-interface-long`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 789,
+ "y": 777,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "173f4814.22298",
+ "e05c6609.d62108"
+ ]
+ ]
+ },
+ {
+ "id": "173f4814.22298",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 989,
+ "y": 738,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "c2195b31.7e4bd"
+ ]
+ ]
+ },
+ {
+ "id": "e05c6609.d62108",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 988,
+ "y": 794,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "debff193.d4e6d"
+ ]
+ ]
+ },
+ {
+ "id": "c2195b31.7e4bd",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1131,
+ "y": 728,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "debff193.d4e6d",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1130,
+ "y": 793,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "e8efcfa.5f73cb",
+ "c46e249d.aa62a8"
+ ]
+ ]
+ },
+ {
+ "id": "c46e249d.aa62a8",
+ "type": "set",
+ "name": "set found-middle-man",
+ "xml": "<set>\n<parameter name='found-middle-man' value=\"true\" />\n",
+ "comments": "",
+ "x": 1341,
+ "y": 750,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "e8efcfa.5f73cb",
+ "type": "set",
+ "name": "set middle-man-conn",
+ "xml": "<set>\n<parameter name='middle-man-conn.' value='`$tmp.aai.all-connectivities.connectivity[$connidx].`' />\n",
+ "comments": "",
+ "x": 1342,
+ "y": 802,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "5bc7dc0.190fca4",
+ "type": "set",
+ "name": "unset tmp.aai.all-connectivities",
+ "xml": "<set>\n<parameter name='tmp.aai.all-connectivities.' value=\"\" />\n",
+ "comments": "",
+ "x": 991,
+ "y": 100,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "287c8e9d.ecd2da",
+ "type": "set",
+ "name": "unset middle-man-conn",
+ "xml": "<set>\n<parameter name='middle-man-conn.' value='' />\n",
+ "comments": "",
+ "x": 957,
+ "y": 64,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "5330b6b3.3bf2d8",
+ "type": "record",
+ "name": "record tmp.pce-src and dst node",
+ "xml": "<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder\">\n<parameter name=\"logger\" value=\"message-log\" />\n<parameter name=\"level\" value=\"info\" />\n<!--<parameter name=\"field1\" value=\"Path computation succeed!\"/>-->\n<!--<parameter name=\"field2\" value=\"`$ccsdkTopo.resp.solutions_length`\"/>-->\n\n<!--<parameter name=\"field1\" value=\"`$tmp.src.domainA.pnf-name`\"/>-->\n<!--<parameter name=\"field2\" value=\"`$tmp.dst.domainB.pnf-name`\"/>-->\n<parameter name=\"field1\" value=\"`$tmp.pce-src-node`\"/>\n<parameter name=\"field2\" value=\"`$tmp.pce-dst-node`\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1602,
+ "y": 2084,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "aa0b4226.979d68",
+ "type": "execute",
+ "name": "execute printContext",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\n <parameter name=\"filename\" value=\"`$filenamebb`\" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1566,
+ "y": 2165,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "1778233a.2c990d",
+ "type": "set",
+ "name": "set filename",
+ "xml": "<set>\n<parameter name='filenamebb' value=\"`$param-prefix-uni-pnfName[8]`\" />",
+ "comments": "",
+ "x": 1535,
+ "y": 2125,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "abd234d.58ac848",
+ "type": "switchNode",
+ "name": "switch found-middle-man",
+ "xml": "<switch test=\"`$found-middle-man`\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 188,
+ "y": 911,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "1e2b2b53.734fe5",
+ "4e1ac306.8f9a04"
+ ]
+ ]
+ },
+ {
+ "id": "4e1ac306.8f9a04",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 394,
+ "y": 889,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "504b4dff.3f7944"
+ ]
+ ]
+ },
+ {
+ "id": "1e2b2b53.734fe5",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 392,
+ "y": 944,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "e852f499.d7d47"
+ ]
+ ]
+ },
+ {
+ "id": "504b4dff.3f7944",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 549,
+ "y": 888,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "e852f499.d7d47",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 544,
+ "y": 944,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "95ae8b1f.95bdf"
+ ]
+ ]
+ },
+ {
+ "id": "95ae8b1f.95bdf",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='mmridx' start='0' end='`$middle-man-conn.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 756,
+ "y": 947,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "6ca655d7.32b94c",
+ "71946c21.27e46c"
+ ]
+ ]
+ },
+ {
+ "id": "71946c21.27e46c",
+ "type": "set",
+ "name": "unset tmp.aai.mmrconnectivity",
+ "xml": "<set>\n<parameter name='tmp.aai.mmrconnectivity.' value='' />\n",
+ "comments": "",
+ "x": 978,
+ "y": 903,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "6ca655d7.32b94c",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$middle-man-conn.relationship-list.relationship[$mmridx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 962,
+ "y": 947,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "89f1fe8.12eb2"
+ ]
+ ]
+ },
+ {
+ "id": "89f1fe8.12eb2",
+ "type": "outcome",
+ "name": "connectivity",
+ "xml": "<outcome value='connectivity'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1145.28564453125,
+ "y": 946.82177734375,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "c43f8d7b.42f328"
+ ]
+ ]
+ },
+ {
+ "id": "c43f8d7b.42f328",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 173,
+ "y": 1052,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "c356b2d1.473de"
+ ]
+ ]
+ },
+ {
+ "id": "c356b2d1.473de",
+ "type": "save",
+ "name": "get connectivity from aai",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\tresource=\"connectivity\"\n\t key=\"connectivity.connectivity-id = $middle-man-conn.relationship-list.relationship[$mmridx].relationship-data[0].relationship-value\"\n\t\tlocal-only=\"false\" \n\t\tpfx=\"tmp.aai.mmrconnectivity\" >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 380,
+ "y": 1052,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "7d3aad12.e7729c",
+ "445bc622.878b58",
+ "a630aaa4.2b5c1"
+ ]
+ ]
+ },
+ {
+ "id": "7d3aad12.e7729c",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 601,
+ "y": 1025,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "29193430.648e5c"
+ ]
+ ]
+ },
+ {
+ "id": "57eaf357.b6c024",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 755,
+ "y": 1106,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "e9fd4655.c826d",
+ "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.l3vpn.pe1_id`\" />\n\n",
+ "comments": "",
+ "x": 751.0623779296875,
+ "y": 1061.8597717285156,
+ "z": "fb45f2fd.f3f61",
+ "wires": []
+ },
+ {
+ "id": "445bc622.878b58",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 588.490966796875,
+ "y": 1061.5740356445312,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "e9fd4655.c826d"
+ ]
+ ]
+ },
+ {
+ "id": "a630aaa4.2b5c1",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 586,
+ "y": 1105,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "57eaf357.b6c024"
+ ]
+ ]
+ },
+ {
+ "id": "29193430.648e5c",
+ "type": "switchNode",
+ "name": "switch mmrconn type is LEAF",
+ "xml": "<switch test=\"`$tmp.aai.mmrconnectivity.vpn-type == 'leaf' `\">\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 829,
+ "y": 1019,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "152b411b.34753f",
+ "c764b7cf.a07508"
+ ]
+ ]
+ },
+ {
+ "id": "c764b7cf.a07508",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1035,
+ "y": 997,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "758dd9de.5cdc2"
+ ]
+ ]
+ },
+ {
+ "id": "152b411b.34753f",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1033,
+ "y": 1052,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "eb586f24.4ec9a"
+ ]
+ ]
+ },
+ {
+ "id": "758dd9de.5cdc2",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1190,
+ "y": 996,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "eb586f24.4ec9a",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic='true'>",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1185,
+ "y": 1052,
+ "z": "fb45f2fd.f3f61",
+ "wires": [
+ [
+ "d5e8e6d4.6174b"
+ ]
+ ]
+ }
+] \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/resources/graph.versions b/platform-logic/generic-resource-api/src/main/resources/graph.versions
index 158672c3..1c853339 100755
--- a/platform-logic/generic-resource-api/src/main/resources/graph.versions
+++ b/platform-logic/generic-resource-api/src/main/resources/graph.versions
@@ -289,5 +289,10 @@ GENERIC-RESOURCE-API tsli-vnf-topology-operation-trans-slice-modify ${project.ve
GENERIC-RESOURCE-API tsli-vnf-topology-operation-get-otn-tunnel-path-from-oof ${project.version} sync
GENERIC-RESOURCE-API tsli-vnf-topology-operation-find-maximum-used-tpn ${project.version} sync
GENERIC-RESOURCE-API performance-data-collector ${project.version} sync
-
-
+GENERIC-RESOURCE-API cll-vnf-topology-operation-cll-create-clean ${project.version} sync
+GENERIC-RESOURCE-API cll-vnf-topology-operation-cll-F1 ${project.version} sync
+GENERIC-RESOURCE-API cll-vnf-topology-operation-cll-F1-Activate ${project.version} sync
+GENERIC-RESOURCE-API cll-vnf-topology-operation-cll-logic ${project.version} sync
+GENERIC-RESOURCE-API cll-vnf-topology-operation-cll-helper-find-connectivity ${project.version} sync
+GENERIC-RESOURCE-API cll-vnf-topology-operation-cll-helper-find-ROOT-conn ${project.version} sync
+GENERIC-RESOURCE-API cll-vnf-topology-operation-find-maximum-used-tpn ${project.version} sync
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_vnf-topology-operation.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_vnf-topology-operation.xml
index 9958212c..3f32bb3a 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_vnf-topology-operation.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_vnf-topology-operation.xml
@@ -167,6 +167,9 @@
<outcome value='AllocateTransportSliceInstance'>
<call module='GENERIC-RESOURCE-API' rpc='tsli-vnf-topology-operation-trans-slice-allocate' mode='sync' ></call>
</outcome>
+ <outcome value='CreateCloudLeasedLineInstance'>
+ <call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-create-clean' mode='sync' ></call>
+ </outcome>
<outcome value='Other'>
<block></block>
</outcome>
@@ -227,6 +230,9 @@
<outcome value='DeleteTransportSliceInstance'>
<call module='GENERIC-RESOURCE-API' rpc='tsli-vnf-topology-operation-trans-slice-delete' mode='sync' ></call>
</outcome>
+ <outcome value='DeleteCloudLeasedLineInstance'>
+ <call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-delete' mode='sync' ></call>
+ </outcome>
<outcome value='Other'>
<block></block>
</outcome>
@@ -251,6 +257,9 @@
<outcome value='DeleteTransportSliceInstance'>
<call module='GENERIC-RESOURCE-API' rpc='tsli-vnf-topology-operation-trans-slice-modify' mode='sync' ></call>
</outcome>
+ <outcome value='ModifyCloudLeasedLineInstance'>
+ <call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-modify' mode='sync' ></call>
+ </outcome>
</switch>
</outcome>
<outcome value='Other'>
diff --git a/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1-Activate.xml b/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1-Activate.xml
new file mode 100644
index 00000000..5f2b4b8e
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1-Activate.xml
@@ -0,0 +1,932 @@
+<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='cll-vnf-topology-operation-cll-F1-Activate' mode='sync'>
+ <block atomic="true">
+ <set>
+ <parameter name='`leaf-tunnels-list.`' value='' />
+ <parameter name='`leaf-tunnels-list_length`' value='0' />
+ <parameter name='`leaftunsidx`' value='0' />
+ </set>
+ <set>
+ <parameter name='tmp.aai.all-vpn-bindings.' value="" />
+ </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>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="vpn-bindings"
+ key="selflink = 'https://aai.onap:8443/aai/v24/network/vpn-bindings"
+ local-only="false"
+ pfx="tmp.aai.all-vpn-bindings" >
+ <outcome value='success'>
+ <block atomic="true">
+ <for index='vpnbidx' start='0' end='`$tmp.aai.all-vpn-bindings.vpn-binding_length`' >
+ <block atomic='true'>
+ <!--<switch test="`$tmp.slicevpnuuids[$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-id] != '' `">-->
+ <!-- Replace vpn-type with slice-id (a new attribbute in the latest AAI) -->
+ <switch test="`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].slice-id == $tmp.aai.service-instance.service-instance-id `">
+ <outcome value='true'>
+ <block atomic='true'>
+ <set>
+ <parameter name='tmp.aai.vpn-binding.' value="" />
+ </set>
+ <set>
+ <parameter name='tmp.aai.vpn-binding.' value="`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].`" />
+ </set>
+ <switch test="`$tmp.aai.vpn-binding.operational-status != 'Activated' `">
+ <outcome value='true'>
+ <block atomic="true">
+ <set>
+ <parameter name='gfp-n' value='`$tmp.aai.vpn-binding.route-distinguisher`' />
+ </set>
+ <switch test='`$tmp.aai.vpn-binding.dst-access-ltp-id`'>
+ <outcome value='Other'>
+ <switch test='`$tmp.aai.vpn-binding.src-access-ltp-id`'>
+ <outcome value=''>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.aai.vpn-bindingA.' value="`$tmp.aai.vpn-binding.`" />
+ <parameter name='tmp.aai.connectivityA.' value="`$tmp.aai.connectivity.`" />
+ </set>
+ <set>
+ <parameter name='src-node-id' value='`$tmp.aai.vpn-bindingA.src-access-node-id`' />
+ <parameter name='dst-node-id' value='`$tmp.aai.vpn-bindingA.dst-access-node-id`' />
+ <!--<parameter name='dst-tpn-id' value='1' />-->
+ <parameter name='dst-tpn-id' value='`$tmp.aai.vpn-bindingA.customer-vpn-id`' />
+ <parameter name='dst-ttp-id' value='`$tmp.aai.vpn-bindingA.dst-access-ltp-id`' />
+ <parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />
+ <parameter name='otn-tunnel-name-src-domain' value='`$tmp.aai.vpn-bindingA.vpn-name`' />
+ <parameter name='client-id' value='`$tmp.aai.vpn-bindingA.access-client-id`' />
+ <parameter name='provider-id' value='`$tmp.aai.vpn-bindingA.access-provider-id`' />
+ <parameter name='topology-id' value='`$tmp.aai.vpn-bindingA.access-topology-id`' />
+ </set>
+ <set>
+ <parameter name='tmp.src.domainA.pnf-name' value="`'networkId-providerId-' +
+ $tmp.aai.vpn-bindingA.access-provider-id + '-clientId-' +
+ $tmp.aai.vpn-bindingA.access-client-id + '-topologyId-' +
+ $tmp.aai.vpn-bindingA.access-topology-id + '-nodeId-' +
+ $tmp.aai.vpn-bindingA.src-access-node-id`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="pnf"
+ key="pnf.pnf-name = $tmp.src.domainA.pnf-name"
+ pfx='tmp.aai.source-pnf' local-only='false' >
+ <!--AND depth = '0'"-->
+ <outcome value='success'>
+ <block>
+ <for silentFailure='true' index='spvidx' start='0' end='`$tmp.aai.source-pnf.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].related-to`'>
+ <outcome value='esr-thirdparty-sdnc'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.domainA.esr-thirdparty-id' value="`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="esr-thirdparty-sdnc"
+ key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.domainA.esr-thirdparty-id AND
+ depth = '1'"
+ pfx='tmp.aai.domainA.esr-thirdparty-sdnc' local-only='false' >
+ <outcome value='success'>
+ <block>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainA.url' value="`$tmp.aai.domainA.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainA.user' value="`$tmp.aai.domainA.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainA.password' value="`$tmp.aai.domainA.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
+ <!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->
+ <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`" />-->
+ <!--<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="get"/>-->
+ <!--<parameter name="responsePrefix" value="topology"/>-->
+ <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->
+ <!--<parameter name="trustStorePassword" value="adminadmin"/>-->
+ <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->
+ <!--<parameter name="keyStorePassword" value="adminadmin"/>-->
+ </set>
+ </block>
+ </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>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
+ </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>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.cll-otn-src-domain-creation.templatefile`" />
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domainA.url + '/restconf/data/ietf-te:te'`" />
+ <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domainA.user`" />
+ <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domainA.password`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="patch"/>
+ <parameter name="responsePrefix" value="otn-oof"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.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 OTN tunnel rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ </execute>
+ <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
+ key='vpn-binding.vpn-id = $tmp.aai.vpn-bindingA.vpn-id' >
+ <parameter name='vpn-id' value='`$tmp.aai.vpn-bindingA.vpn-id`' />
+ <parameter name='vpn-name' value='`$tmp.aai.vpn-bindingA.vpn-name`' />
+ <parameter name='operational-status' value='Activated' />
+ </update>
+ <set>
+ <parameter name='`leaf-tunnels-list[$leaftunsidx].tunnel-name`' value='`$tmp.aai.vpn-binding.vpn-name`' />
+ <parameter name='`leaf-tunnels-list[$leaftunsidx].vpn-id`' value='`$tmp.aai.vpn-binding.vpn-id`' />
+ <parameter name='`leaf-tunnels-list_length`' value='`$leaftunsidx + 1`' />
+ </set>
+ <set>
+ <parameter name='`leaftunsidx`' value='`$leaftunsidx + 1`' />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.aai.vpn-bindingG.' value="`$tmp.aai.vpn-binding.`" />
+ <parameter name='tmp.aai.connectivityG.' value="`$tmp.aai.connectivity.`" />
+ </set>
+ <set>
+ <parameter name='src-node-id' value='`$tmp.aai.vpn-bindingG.src-access-node-id`' />
+ <parameter name='dst-node-id' value='`$tmp.aai.vpn-bindingG.dst-access-node-id`' />
+ <!--<parameter name='dst-tpn-id' value='1' />-->
+ <parameter name='src-tpn-id' value='`$tmp.aai.vpn-bindingG.customer-vpn-id`' />
+ <parameter name='dst-tpn-id' value='`$tmp.aai.vpn-bindingG.customer-vpn-id`' />
+ <parameter name='src-ttp-id' value='`$tmp.aai.vpn-bindingG.src-access-ltp-id`' />
+ <parameter name='dst-ttp-id' value='`$tmp.aai.vpn-bindingG.dst-access-ltp-id`' />
+ <parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />
+ <parameter name='otn-tunnel-name-domainG' value='`$tmp.aai.vpn-bindingG.vpn-name`' />
+ <parameter name='client-id' value='`$tmp.aai.vpn-bindingG.access-client-id`' />
+ <parameter name='provider-id' value='`$tmp.aai.vpn-bindingG.access-provider-id`' />
+ <parameter name='topology-id' value='`$tmp.aai.vpn-bindingG.access-topology-id`' />
+ </set>
+ <set>
+ <parameter name='tmp.domainG.pnf-name' value="`'networkId-providerId-' +
+ $tmp.aai.vpn-bindingG.access-provider-id + '-clientId-' +
+ $tmp.aai.vpn-bindingG.access-client-id + '-topologyId-' +
+ $tmp.aai.vpn-bindingG.access-topology-id + '-nodeId-' +
+ $tmp.aai.vpn-bindingG.src-access-node-id`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="pnf"
+ key="pnf.pnf-name = $tmp.domainG.pnf-name"
+ pfx='tmp.aai.domainG-pnf' local-only='false' >
+ <!--AND depth = '0'"-->
+ <outcome value='success'>
+ <block>
+ <for silentFailure='true' index='spvidx' start='0' end='`$tmp.aai.domainG-pnf.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.domainG-pnf.relationship-list.relationship[$spvidx].related-to`'>
+ <outcome value='esr-thirdparty-sdnc'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.domainG.esr-thirdparty-id' value="`$tmp.aai.domainG-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="esr-thirdparty-sdnc"
+ key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.domainG.esr-thirdparty-id AND
+ depth = '1'"
+ pfx='tmp.aai.domainG.esr-thirdparty-sdnc' local-only='false' >
+ <outcome value='success'>
+ <block>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainG.url' value="`$tmp.aai.domainG.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainG.user' value="`$tmp.aai.domainG.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainG.password' value="`$tmp.aai.domainG.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
+ <!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->
+ <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`" />-->
+ <!--<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="get"/>-->
+ <!--<parameter name="responsePrefix" value="topology"/>-->
+ <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->
+ <!--<parameter name="trustStorePassword" value="adminadmin"/>-->
+ <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->
+ <!--<parameter name="keyStorePassword" value="adminadmin"/>-->
+ </set>
+ </block>
+ </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>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
+ </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>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.cll-otn-domainG-creation.templatefile`" />
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domainG.url + '/restconf/data/ietf-te:te'`" />
+ <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domainG.user`" />
+ <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domainG.password`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="patch"/>
+ <parameter name="responsePrefix" value="otn-oof"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.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 OTN tunnel rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ </execute>
+ <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
+ key='vpn-binding.vpn-id = $tmp.aai.vpn-bindingG.vpn-id' >
+ <parameter name='vpn-id' value='`$tmp.aai.vpn-bindingG.vpn-id`' />
+ <parameter name='vpn-name' value='`$tmp.aai.vpn-bindingG.vpn-name`' />
+ <parameter name='operational-status' value='Activated' />
+ </update>
+ </block>
+ </outcome>
+ </switch>
+ </outcome>
+ <outcome value=''>
+ <switch test='`$tmp.aai.vpn-binding.src-access-ltp-id`'>
+ <outcome value='Other'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.aai.vpn-bindingB.' value="`$tmp.aai.vpn-binding.`" />
+ <parameter name='tmp.aai.connectivityB.' value="`$tmp.aai.connectivity.`" />
+ </set>
+ <set>
+ <parameter name='src-node-id' value='`$tmp.aai.vpn-bindingB.src-access-node-id`' />
+ <parameter name='dst-node-id' value='`$tmp.aai.vpn-bindingB.dst-access-node-id`' />
+ <!--<parameter name='src-tpn-id' value='1' />-->
+ <parameter name='src-tpn-id' value='`$tmp.aai.vpn-bindingB.customer-vpn-id`' />
+ <parameter name='src-ttp-id' value='`$tmp.aai.vpn-bindingB.src-access-ltp-id`' />
+ <parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />
+ <parameter name='otn-tunnel-name-dst-domain' value='`$tmp.aai.vpn-bindingB.vpn-name`' />
+ <parameter name='client-id' value='`$tmp.aai.vpn-bindingB.access-client-id`' />
+ <parameter name='provider-id' value='`$tmp.aai.vpn-bindingB.access-provider-id`' />
+ <parameter name='topology-id' value='`$tmp.aai.vpn-bindingB.access-topology-id`' />
+ </set>
+ <set>
+ <parameter name='tmp.dst.domainB.pnf-name' value="`'networkId-providerId-' +
+ $tmp.aai.vpn-bindingB.access-provider-id + '-clientId-' +
+ $tmp.aai.vpn-bindingB.access-client-id + '-topologyId-' +
+ $tmp.aai.vpn-bindingB.access-topology-id + '-nodeId-' +
+ $tmp.aai.vpn-bindingB.dst-access-node-id`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="pnf"
+ key="pnf.pnf-name = $tmp.dst.domainB.pnf-name"
+ pfx='tmp.aai.destination-pnf' local-only='false' >
+ <!--AND depth = '0'"-->
+ <outcome value='success'>
+ <block>
+ <for silentFailure='true' index='dpvidx' start='0' end='`$tmp.aai.destination-pnf.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.destination-pnf.relationship-list.relationship[$dpvidx].related-to`'>
+ <outcome value='esr-thirdparty-sdnc'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.domainB.esr-thirdparty-id' value="`$tmp.aai.destination-pnf.relationship-list.relationship[$dpvidx].relationship-data[0].relationship-value`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="esr-thirdparty-sdnc"
+ key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.domainB.esr-thirdparty-id AND
+ depth = '1'"
+ pfx='tmp.aai.domainB.esr-thirdparty-sdnc' local-only='false' >
+ <outcome value='success'>
+ <block>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainB.url' value="`$tmp.aai.domainB.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainB.user' value="`$tmp.aai.domainB.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainB.password' value="`$tmp.aai.domainB.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
+ <!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->
+ <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`" />-->
+ <!--<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="get"/>-->
+ <!--<parameter name="responsePrefix" value="topology"/>-->
+ <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->
+ <!--<parameter name="trustStorePassword" value="adminadmin"/>-->
+ <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->
+ <!--<parameter name="keyStorePassword" value="adminadmin"/>-->
+ </set>
+ </block>
+ </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>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
+ </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>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.cll-otn-dst-domain-creation.templatefile`" />
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domainB.url + '/restconf/data/ietf-te:te'`" />
+ <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domainB.user`" />
+ <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domainB.password`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="patch"/>
+ <parameter name="responsePrefix" value="otn-oof"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.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 OTN tunnel rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ </execute>
+ <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
+ key='vpn-binding.vpn-id = $tmp.aai.vpn-bindingB.vpn-id' >
+ <parameter name='vpn-id' value='`$tmp.aai.vpn-bindingB.vpn-id`' />
+ <parameter name='vpn-name' value='`$tmp.aai.vpn-bindingB.vpn-name`' />
+ <parameter name='operational-status' value='Activated' />
+ </update>
+ <set>
+ <parameter name='`root-tunnels-list[$roottunsidx].tunnel-name`' value='`$tmp.aai.vpn-binding.vpn-name`' />
+ <parameter name='`root-tunnels-list[$roottunsidx].vpn-id`' value='`$tmp.aai.vpn-binding.vpn-id`' />
+ <parameter name='`root-tunnels-list_length`' value='`$roottunsidx + 1`' />
+ </set>
+ <set>
+ <parameter name='`roottunsidx`' value='`$roottunsidx + 1`' />
+ </set>
+ </block>
+ </outcome>
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ </switch>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='false'>
+ <block></block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='false'></outcome>
+ </switch>
+ </block>
+ </for>
+ </block>
+ </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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ </get-resource>
+ <!--<get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" -->
+ <!-- resource="service-instance"-->
+ <!-- key='service-instance.service-instance-id = $service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.service-instance-id-->
+ <!-- AND customer.global-customer-id = $service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.global-customer-id -->
+ <!-- AND service-subscription.service-type = $service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.subscription-service-type'-->
+ <!-- local-only="false"-->
+ <!-- force="true" pfx="tmp.aai.service-instance">-->
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="service-instance"
+ key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id
+ AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id
+ AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type'
+ local-only="false"
+ force="true" pfx="tmp.aai.service-instance">
+ <!--$vnf-topology-operation-input.service-information.service-instance-id-->
+ <outcome value='success'>
+ <for index='rel-index' start='0' end='`$tmp.aai.service-instance.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.service-instance.relationship-list.relationship[$rel-index].related-to`'>
+ <outcome value='connectivity'>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="connectivity"
+ key="connectivity.connectivity-id = $tmp.aai.service-instance.relationship-list.relationship[$rel-index].relationship-data[0].relationship-value"
+ local-only="false"
+ pfx="tmp.aai.connectivity" >
+ <outcome value='success'>
+ <switch test="`$tmp.aai.connectivity.operational-status != 'Activated' `">
+ <outcome value='false'>
+ <block></block>
+ </outcome>
+ <outcome value='true'>
+ <block atomic="true">
+ <switch test="`$tmp.aai.connectivity.vpn-type`">
+ <outcome value='leaf'>
+ <block>
+ <set>
+ <parameter name='`ethernet-srv-end-points-list.`' value='' />
+ <parameter name='`ethernet-srv-end-points-list_length`' value='0' />
+ <parameter name='`epidx`' value='0' />
+ </set>
+ <set>
+ <parameter name='`leafOrRootAccess`' value='ietf-eth-tran-types:leaf-access' />
+ </set>
+ <for silentFailure='true' index='cridx' start='0' end='`$tmp.aai.connectivity.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.connectivity.relationship-list.relationship[$cridx].related-to`'>
+ <outcome value='uni'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.aai.uni.' value='' />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="uni"
+ key="uni.id = $tmp.aai.connectivity.relationship-list.relationship[$cridx].relationship-data[0].relationship-value"
+ local-only="false"
+ pfx="tmp.aai.uni" >
+ <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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ </get-resource>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >
+ <parameter name="original_string" value='`$tmp.aai.uni.id`'/>
+ <!--<parameter name="regex" value="[^-]+$"/>-->
+ <parameter name="regex" value="[-]+"/>
+ <parameter name="ctx_memory_result_key" value="param-prefix-uni"/>
+ <outcome value='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.uni-node-id-short' value='`$param-prefix-uni[$param-prefix-uni_length -3]`' />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value="An error occured while splitting sna1_route" />
+ </return>
+ </outcome>
+ </execute>
+ <set>
+ <parameter name='`ethernet-srv-end-points-list[$epidx].ethernet-end-point-name`' value='`$tmp.aai.connectivity.connectivity-id`' />
+ <parameter name='`ethernet-srv-end-points-list[$epidx].index-number`' value='0' />
+ <parameter name='`ethernet-srv-end-points-list[$epidx].eth-node-id`' value='`$tmp.uni-node-id-short`' />
+ <parameter name='`ethernet-srv-end-points-list[$epidx].eth-node-tp-id`' value='`$tmp.aai.uni.tp-id`' />
+ <parameter name='`ethernet-srv-end-points-list[$epidx].leafOrRootAccess`' value='`$leafOrRootAccess`' />
+ <parameter name='`ethernet-srv-end-points-list[$epidx].cvlan`' value='`$tmp.aai.connectivity.cvlan`' />
+ <parameter name='`ethernet-srv-end-points-list[$epidx].CIR`' value='`$tmp.aai.connectivity.cir`' />
+ <parameter name='`ethernet-srv-end-points-list[$epidx].EIR`' value='`$tmp.aai.connectivity.eir`' />
+ <parameter name='`ethernet-srv-end-points-list_length`' value='`$epidx + 1`' />
+ </set>
+ <set>
+ <parameter name='`epidx`' value='`$epidx + 1`' />
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ <set>
+ <parameter name='filenameclleths' value="`$leafOrRootAccess + $tmp.aai.connectivity.access-node-id`" />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
+ <parameter name="filename" value="`$filenameclleths`" />
+ </execute>
+ <set>
+ <parameter name='`otn-tunnels-name-list.`' value='' />
+ <parameter name='`otn-tunnels-name-list_length`' value='0' />
+ <parameter name='`otntunsidx`' value='0' />
+ </set>
+ <for silentFailure='true' index='cridx' start='0' end='`$tmp.aai.connectivity.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.connectivity.relationship-list.relationship[$cridx].related-to`'>
+ <outcome value='vpn-binding'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.aai.vpn-binding.' value='' />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="vpn-binding"
+ key="vpn-binding.vpn-id = $tmp.aai.connectivity.relationship-list.relationship[$cridx].relationship-data[0].relationship-value"
+ local-only="false"
+ pfx="tmp.aai.vpn-binding" >
+ <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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='`otn-tunnels-name-list[$otntunsidx].otn-tunnel-name`' value='`$tmp.aai.vpn-binding.vpn-name`' />
+ <parameter name='`otn-tunnels-name-list[$otntunsidx].vpn-id`' value='`$tmp.aai.vpn-binding.vpn-id`' />
+ <parameter name='`otn-tunnels-name-list_length`' value='`$otntunsidx + 1`' />
+ </set>
+ <set>
+ <parameter name='`otntunsidx`' value='`$otntunsidx + 1`' />
+ </set>
+ </block>
+ </outcome>
+ </get-resource>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ <set>
+ <parameter name='filenamecllotns' value="`leafrootOTNtunnelnames`" />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
+ <parameter name="filename" value="`$filenamecllotns`" />
+ </execute>
+ <set>
+ <!--<parameter name='eth-service-name' value='`$tmp.aai.connectivityA.connectivity-id`' />-->
+ <parameter name='eth-service-name' value='`$tmp.aai.connectivity.etht-svc-name`' />
+ <parameter name='slice-id' value='`$vnf-topology-operation-input.service-information.service-instance-id`' />
+ <parameter name='provider-id' value='`$tmp.aai.connectivity.access-provider-id`' />
+ <parameter name='client-id' value='`$tmp.aai.connectivity.access-client-id`' />
+ <parameter name='topology-id' value='`$tmp.aai.connectivity.access-topology-id`' />
+ <!--<parameter name='otn-tunnel-name' value='`$tmp.aai.vpn-bindingA.vpn-name`' />-->
+ <!--<parameter name='ethernet-end-point-name' value='`$tmp.aai.connectivityA.connectivity-id`' />-->
+ <!--<parameter name='index-number' value='0' />-->
+ <!--<parameter name='eth-node-id' value='`$tmp.aai.connectivityA.access-node-id`' />-->
+ <!--<parameter name='eth-node-tp-id' value='`$tmp.aai.connectivityA.access-ltp-id`' />-->
+ <!--<parameter name='CIR' value='`$tmp.aai.vpn-bindingA.route-distinguisher *1000000`' />-->
+ <!--<parameter name='EIR' value='`$tmp.aai.vpn-bindingA.route-distinguisher *1000000`' />-->
+ <!--<parameter name='cvlan' value='`$tmp.aai.connectivityA.cvlan`' />-->
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.cll-ethernet-service-loop.templatefile`" />
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domainA.url + '/restconf/data/ietf-eth-tran-service:etht-svc'`" />
+ <!--<parameter name="restapiUrl" value="`$prop.restapi.connection-oof-url`" />-->
+ <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domainA.user`" />
+ <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domainA.password`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="patch"/>
+ <parameter name='dirPath' value="/opt/onap/sdnc/restconfapi/yang" />
+ <parameter name="responsePrefix" value="vpn-result"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
+ <parameter name="trustStorePassword" value="adminadmin"/>
+ <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
+ <parameter name="keyStorePassword" value="adminadmin"/>
+ <outcome value='failure'></outcome>
+ <outcome value='success'>
+ <block atomic="true">
+ <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity'
+ key='connectivity.connectivity-id = $tmp.aai.connectivity.connectivity-id'>
+ <parameter name='connectivity-id' value='`$tmp.aai.connectivity.connectivity-id`' />
+ <parameter name='operational-status' value='Activated' />
+ </update>
+ </block>
+ </outcome>
+ </execute>
+ </block>
+ </outcome>
+ <outcome value='root'>
+ <block>
+ <set>
+ <parameter name='`ethernet-srv-end-points-list.`' value='' />
+ <parameter name='`ethernet-srv-end-points-list_length`' value='0' />
+ <parameter name='`epidx`' value='0' />
+ </set>
+ <set>
+ <parameter name='`leafOrRootAccess`' value='ietf-eth-tran-types:root-primary' />
+ </set>
+ <for silentFailure='true' index='cridx' start='0' end='`$tmp.aai.connectivity.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.connectivity.relationship-list.relationship[$cridx].related-to`'>
+ <outcome value='uni'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.aai.uni.' value='' />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="uni"
+ key="uni.id = $tmp.aai.connectivity.relationship-list.relationship[$cridx].relationship-data[0].relationship-value"
+ local-only="false"
+ pfx="tmp.aai.uni" >
+ <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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ </get-resource>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >
+ <parameter name="original_string" value='`$tmp.aai.uni.id`'/>
+ <!--<parameter name="regex" value="[^-]+$"/>-->
+ <parameter name="regex" value="[-]+"/>
+ <parameter name="ctx_memory_result_key" value="param-prefix-uni"/>
+ <outcome value='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.uni-node-id-short' value='`$param-prefix-uni[$param-prefix-uni_length -3]`' />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value="An error occured while splitting sna1_route" />
+ </return>
+ </outcome>
+ </execute>
+ <set>
+ <parameter name='`ethernet-srv-end-points-list[$epidx].ethernet-end-point-name`' value='`$tmp.aai.connectivity.connectivity-id`' />
+ <parameter name='`ethernet-srv-end-points-list[$epidx].index-number`' value='0' />
+ <parameter name='`ethernet-srv-end-points-list[$epidx].eth-node-id`' value='`$tmp.uni-node-id-short`' />
+ <parameter name='`ethernet-srv-end-points-list[$epidx].eth-node-tp-id`' value='`$tmp.aai.uni.tp-id`' />
+ <parameter name='`ethernet-srv-end-points-list[$epidx].leafOrRootAccess`' value='`$leafOrRootAccess`' />
+ <parameter name='`ethernet-srv-end-points-list[$epidx].cvlan`' value='`$tmp.aai.connectivity.cvlan`' />
+ <parameter name='`ethernet-srv-end-points-list[$epidx].CIR`' value='`$tmp.aai.connectivity.cir`' />
+ <parameter name='`ethernet-srv-end-points-list[$epidx].EIR`' value='`$tmp.aai.connectivity.eir`' />
+ <parameter name='`ethernet-srv-end-points-list_length`' value='`$epidx + 1`' />
+ </set>
+ <set>
+ <parameter name='`epidx`' value='`$epidx + 1`' />
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ <set>
+ <parameter name='filenameclleths' value="`$leafOrRootAccess + $tmp.aai.connectivity.access-node-id`" />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
+ <parameter name="filename" value="`$filenameclleths`" />
+ </execute>
+ <set>
+ <parameter name='`otn-tunnels-name-list.`' value='' />
+ <parameter name='`otn-tunnels-name-list_length`' value='0' />
+ <parameter name='`otntunsidx`' value='0' />
+ </set>
+ <for silentFailure='true' index='cridx' start='0' end='`$tmp.aai.connectivity.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.connectivity.relationship-list.relationship[$cridx].related-to`'>
+ <outcome value='vpn-binding'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.aai.vpn-binding.' value='' />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="vpn-binding"
+ key="vpn-binding.vpn-id = $tmp.aai.connectivity.relationship-list.relationship[$cridx].relationship-data[0].relationship-value"
+ local-only="false"
+ pfx="tmp.aai.vpn-binding" >
+ <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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='`otn-tunnels-name-list[$otntunsidx].otn-tunnel-name`' value='`$tmp.aai.vpn-binding.vpn-name`' />
+ <parameter name='`otn-tunnels-name-list[$otntunsidx].vpn-id`' value='`$tmp.aai.vpn-binding.vpn-id`' />
+ <parameter name='`otn-tunnels-name-list_length`' value='`$otntunsidx + 1`' />
+ </set>
+ <set>
+ <parameter name='`otntunsidx`' value='`$otntunsidx + 1`' />
+ </set>
+ </block>
+ </outcome>
+ </get-resource>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ <set>
+ <parameter name='filenamecllotns' value="`leafrootOTNtunnelnames`" />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
+ <parameter name="filename" value="`$filenamecllotns`" />
+ </execute>
+ <set>
+ <!--<parameter name='eth-service-name' value='`$tmp.aai.connectivityA.connectivity-id`' />-->
+ <parameter name='eth-service-name' value='`$tmp.aai.connectivity.etht-svc-name`' />
+ <parameter name='slice-id' value='`$vnf-topology-operation-input.service-information.service-instance-id`' />
+ <parameter name='provider-id' value='`$tmp.aai.connectivity.access-provider-id`' />
+ <parameter name='client-id' value='`$tmp.aai.connectivity.access-client-id`' />
+ <parameter name='topology-id' value='`$tmp.aai.connectivity.access-topology-id`' />
+ <!--<parameter name='otn-tunnel-name' value='`$tmp.aai.vpn-bindingA.vpn-name`' />-->
+ <!--<parameter name='ethernet-end-point-name' value='`$tmp.aai.connectivityA.connectivity-id`' />-->
+ <!--<parameter name='index-number' value='0' />-->
+ <!--<parameter name='eth-node-id' value='`$tmp.aai.connectivityA.access-node-id`' />-->
+ <!--<parameter name='eth-node-tp-id' value='`$tmp.aai.connectivityA.access-ltp-id`' />-->
+ <!--<parameter name='CIR' value='`$tmp.aai.vpn-bindingA.route-distinguisher *1000000`' />-->
+ <!--<parameter name='EIR' value='`$tmp.aai.vpn-bindingA.route-distinguisher *1000000`' />-->
+ <!--<parameter name='cvlan' value='`$tmp.aai.connectivityA.cvlan`' />-->
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.cll-ethernet-service-loop.templatefile`" />
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domainA.url + '/restconf/data/ietf-eth-tran-service:etht-svc'`" />
+ <!--<parameter name="restapiUrl" value="`$prop.restapi.connection-oof-url`" />-->
+ <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domainA.user`" />
+ <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domainA.password`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="patch"/>
+ <parameter name='dirPath' value="/opt/onap/sdnc/restconfapi/yang" />
+ <parameter name="responsePrefix" value="vpn-result"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
+ <parameter name="trustStorePassword" value="adminadmin"/>
+ <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
+ <parameter name="keyStorePassword" value="adminadmin"/>
+ <outcome value='failure'></outcome>
+ <outcome value='success'>
+ <block atomic="true">
+ <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity'
+ key='connectivity.connectivity-id = $tmp.aai.connectivity.connectivity-id'>
+ <parameter name='connectivity-id' value='`$tmp.aai.connectivity.connectivity-id`' />
+ <parameter name='operational-status' value='Activated' />
+ </update>
+ </block>
+ </outcome>
+ </execute>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <block></block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ </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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ </get-resource>
+ </outcome>
+ </switch>
+ </for>
+ </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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ </get-resource>
+ </block>
+ </method>
+</service-logic> \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1.xml b/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1.xml
new file mode 100644
index 00000000..111f98bd
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-F1.xml
@@ -0,0 +1,364 @@
+<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='cll-vnf-topology-operation-cll-F1' mode='sync'>
+ <block atomic="true">
+ <set>
+ <parameter name='prop.ethsrvType' value='`$network-route-A`' />
+ </set>
+ <call module='GENERIC-RESOURCE-API' rpc='tsli-vnf-topology-operation-get-otn-tunnel-path-from-oof' mode='sync' ></call>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
+ <parameter name="filename" value="`$filenamemm`" />
+ </execute>
+ <call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-find-maximum-used-tpn' mode='sync' ></call>
+ <set>
+ <!--<parameter name='tmp.srcTtpOtnLayer' value="`$tmp.pce-src-node + '-' + -->
+ <!-- $param-prefix-domainA[$param-prefix-domainA_length -2] + '-' +-->
+ <!-- $tmp.source.ttp-id`" />-->
+ <parameter name='tmp.srcTtpOtnLayer' value="`$tmp.pce-src-node`" />
+ </set>
+ <for index='otnidx' start='0' end='`$tmp.otninfo_length`' >
+ <block atomic='true'>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
+ <parameter name="ctx-destination" value="prop.vpn-binding-otnidx-uuid"/>
+ </execute>
+ <switch test="`$tmp.otninfo[$otnidx].dstPort.dst-access-provider-id == ''`">
+ <outcome value='true'>
+ <set>
+ <parameter name='tmp.access-provider-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-provider-id`' />
+ <parameter name='tmp.access-client-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-client-id`' />
+ <parameter name='tmp.access-topology-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-topology-id`' />
+ <parameter name='tmp.srcdstpnf-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-node-id`' />
+ </set>
+ </outcome>
+ <outcome value='false'>
+ <set>
+ <parameter name='tmp.access-provider-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-provider-id`' />
+ <parameter name='tmp.access-client-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-client-id`' />
+ <parameter name='tmp.access-topology-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-topology-id`' />
+ <parameter name='tmp.srcdstpnf-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-node-id`' />
+ </set>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name='tmp.srcdstpnf-name' value="`'networkId-providerId-' +
+ $tmp.access-provider-id + '-clientId-' +
+ $tmp.access-client-id + '-topologyId-' +
+ $tmp.access-topology-id + '-nodeId-' +
+ $tmp.srcdstpnf-id`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="pnf"
+ key="pnf.pnf-name = $tmp.srcdstpnf-name"
+ pfx='tmp.aai.srcdst-pnf' local-only='false' >
+ <!--AND depth = '0'"-->
+ <outcome value='success'>
+ <block>
+ <for silentFailure='true' index='spvidx' start='0' end='`$tmp.aai.srcdst-pnf.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.srcdst-pnf.relationship-list.relationship[$spvidx].related-to`'>
+ <outcome value='esr-thirdparty-sdnc'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.domainG.esr-thirdparty-id' value="`$tmp.aai.srcdst-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="esr-thirdparty-sdnc"
+ key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.domainG.esr-thirdparty-id AND
+ depth = '1'"
+ pfx='tmp.aai.domainG.esr-thirdparty-sdnc' local-only='false' >
+ <outcome value='success'>
+ <block>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainG.url' value="`$tmp.aai.domainG.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainG.user' value="`$tmp.aai.domainG.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainG.password' value="`$tmp.aai.domainG.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
+ <!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->
+ <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`" />-->
+ <!--<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="get"/>-->
+ <!--<parameter name="responsePrefix" value="topology"/>-->
+ <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->
+ <!--<parameter name="trustStorePassword" value="adminadmin"/>-->
+ <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->
+ <!--<parameter name="keyStorePassword" value="adminadmin"/>-->
+ </set>
+ </block>
+ </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>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
+ </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>
+ <switch test='`$otnidx == 0`'>
+ <outcome value='true'>
+ <block>
+ <set>
+ <parameter name='tmp.domainG-src-access-node-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />
+ <parameter name='tmp.domainG-dst-access-node-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-node-id`' />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='false'>
+ <switch test='`$otnidx == $tmp.otninfo_length - 1`'>
+ <outcome value='true'>
+ <block>
+ <set>
+ <parameter name='tmp.domainG-src-access-node-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-node-id`' />
+ <parameter name='tmp.domainG-dst-access-node-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -3]`' />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='false'>
+ <set>
+ <parameter name='tmp.domainG-src-access-node-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-node-id`' />
+ <parameter name='tmp.domainG-dst-access-node-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-node-id`' />
+ </set>
+ </outcome>
+ </switch>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name='tmp.srcTtpdstTtpPair' value="`$tmp.otninfo[$otnidx].srcPort.src-tunnel-tp-id + ',' +
+ $tmp.otninfo[$otnidx].dstPort.dst-tunnel-tp-id`" />
+ </set>
+ <set>
+ <parameter name='tmp.current-provider-id' value='`$tmp.access-provider-id`' />
+ <parameter name='tmp.current-cvlan-id' value='`$tmp.aai.network-route-A.logical-interface-id`' />
+ </set>
+ <call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-helper-find-connectivity' mode='sync' ></call>
+ <set>
+ <parameter name='prop.ethernet-service-name' value='`$middle-man-conn.etht-svc-name`' />
+ </set>
+ <switch test="`$found-connectivity`">
+ <outcome value='false'>
+ <block>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
+ key='vpn-binding.vpn-id = $prop.vpn-binding-otnidx-uuid' >
+ <parameter name='vpn-id' value='`$prop.vpn-binding-otnidx-uuid`' />
+ <parameter name='vpn-name' value='`$prop.otn-tunnel-name`' />
+ <!--<parameter name='customer-vpn-id' value='`($idx + 1) * 10`' />-->
+ <!--<parameter name='customer-vpn-id' value='`($maxtpn + $gfp)`' />-->
+ <parameter name='customer-vpn-id' value='`$newToBeUsedMaxtpn`' />
+ <!--<parameter name='access-provider-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-provider-id`' />-->
+ <parameter name='access-provider-id' value='`$tmp.access-provider-id`' />
+ <!--<parameter name='access-client-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-client-id`' />-->
+ <parameter name='access-client-id' value='`$tmp.access-client-id`' />
+ <!--<parameter name='access-topology-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-topology-id`' />-->
+ <parameter name='access-topology-id' value='`$tmp.access-topology-id`' />
+ <!--<parameter name='src-access-node-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-node-id`' />-->
+ <parameter name='src-access-node-id' value='`$tmp.domainG-src-access-node-id`' />
+ <parameter name='src-access-ltp-id' value='`$tmp.otninfo[$otnidx].srcPort.src-tunnel-tp-id`' />
+ <!--<parameter name='dst-access-node-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-node-id`' />-->
+ <parameter name='dst-access-node-id' value='`$tmp.domainG-dst-access-node-id`' />
+ <parameter name='dst-access-ltp-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-tunnel-tp-id`' />
+ <parameter name='route-distinguisher' value='`$gfp`' />
+ <parameter name='operational-status' value='Created' />
+ <parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />
+ <parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />
+ <parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />
+ <parameter name='vpn-region' value='`$prop.sdncRestApi.thirdpartySdnc.domainG.url`' />
+ <parameter name='vpn-description' value='`$prop.sdncRestApi.thirdpartySdnc.domainG.user`' />
+ <parameter name='vpn-platform' value='`$prop.sdncRestApi.thirdpartySdnc.domainG.password`' />
+ <!-- The following line is in lieu of vpn-binding.slice-id (new attribute in latest AAI) -->
+ <!--<parameter name='ops-note' value='`$tmp.aai.service-instance.service-instance-id`' />-->
+ <parameter name='slice-id' value='`$tmp.aai.service-instance.service-instance-id`' />
+ <parameter name='ops-note' value='`$tmp.srcTtpOtnLayer`' />
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ </save>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
+ <parameter name="ctx-destination" value="uuid.connectivity-otnidx-uuid"/>
+ </execute>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity'
+ key='connectivity.connectivity-id = $uuid.connectivity-otnidx-uuid'>
+ <parameter name='connectivity-id' value='`$uuid.connectivity-otnidx-uuid`' />
+ <parameter name='etht-svc-name' value='`$prop.ethernet-service-name`' />
+ <parameter name='operational-status' value='Created' />
+ <!--<parameter name='access-provider-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-provider-id`' />-->
+ <!--<parameter name='access-client-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-client-id`' />-->
+ <!--<parameter name='access-topology-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-topology-id`' />-->
+ <!--<parameter name='access-node-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-node-id`' />-->
+ <!--<parameter name='access-ltp-id' value='``' />-->
+ <parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />
+ <parameter name='coupling-flag' value='`$srcTtpdstTtpPair`' />
+ <!--<parameter name='bandwidth-profile-name' value='`$prop.sotn.etht-svc-name`' />-->
+ <parameter name='bandwidth-profile-name' value='`$gfp`' />
+ <parameter name='vpn-type' value='dummy' />
+ <parameter name='cir' value='`$gfp *1000000`' />
+ <parameter name='eir' value='`$gfp *1000000`' />
+ <!--<parameter name='cbs' value='`$prop.sotn.cbs`' />-->
+ <!--<parameter name='ebs' value='`$prop.sotn.ebs`' />-->
+ <!--<parameter name='color-aware' value='`$prop.sotn.colorAware`' />-->
+ <!--<parameter name='etht-svc-name' value='`$prop.sotn.etht-svc-name`' />-->
+ <parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />
+ <parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />
+ <parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />
+ <parameter name='connectivity-selflink' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $network-topology-operation-input.service-information.service-instance-id + '/service-data/networks/network/' + $prop.sotn.network-id + '/network-data/'` " />
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list'
+ key='connectivity.connectivity-id = $middle-man-conn.connectivity-id'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="connectivity" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $uuid.connectivity-otnidx-uuid`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$uuid.connectivity-otnidx-uuid`" />
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list'
+ key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id
+ AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id
+ AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="connectivity" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $uuid.connectivity-otnidx-uuid`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$uuid.connectivity-otnidx-uuid`" />
+ <!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' -->
+ <!-- key='service-instance.service-instance-id = $service-data.service-information.service-instance-id -->
+ <!-- AND customer.global-customer-id = $service-data.networks.network[$nidx].network-data.service-information.global-customer-id -->
+ <!-- AND service-subscription.service-type = $service-data.networks.network[$nidx].network-data.service-information.subscription-service-type' -->
+ <!-- force="true" pfx="tmp.AnAI-data">-->
+ <!--<parameter name="relationship-list.relationship[0].related-to" value="connectivity" />-->
+ <!--<parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $prop.sotn.network-id`" />-->
+ <!--<parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />-->
+ <!--<parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$prop.sotn.network-id`" />-->
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding:relationship-list'
+ key='vpn-binding.vpn-id = $prop.vpn-binding-otnidx-uuid'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="connectivity" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $uuid.connectivity-otnidx-uuid`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$uuid.connectivity-otnidx-uuid`" />
+ </save>
+ </block>
+ </outcome>
+ <outcome value='true'>
+ <block atomic='true'>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
+ key='vpn-binding.vpn-id = $prop.vpn-binding-otnidx-uuid' >
+ <parameter name='vpn-id' value='`$prop.vpn-binding-otnidx-uuid`' />
+ <parameter name='vpn-name' value='`$prop.otn-tunnel-name`' />
+ <!--<parameter name='customer-vpn-id' value='`($idx + 1) * 10`' />-->
+ <!--<parameter name='customer-vpn-id' value='`($maxtpn + $gfp)`' />-->
+ <parameter name='customer-vpn-id' value='`$newToBeUsedMaxtpn`' />
+ <!--<parameter name='access-provider-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-provider-id`' />-->
+ <parameter name='access-provider-id' value='`$tmp.access-provider-id`' />
+ <!--<parameter name='access-client-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-client-id`' />-->
+ <parameter name='access-client-id' value='`$tmp.access-client-id`' />
+ <!--<parameter name='access-topology-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-topology-id`' />-->
+ <parameter name='access-topology-id' value='`$tmp.access-topology-id`' />
+ <!--<parameter name='src-access-node-id' value='`$tmp.otninfo[$otnidx].srcPort.src-access-node-id`' />-->
+ <parameter name='src-access-node-id' value='`$tmp.domainG-src-access-node-id`' />
+ <parameter name='src-access-ltp-id' value='`$tmp.otninfo[$otnidx].srcPort.src-tunnel-tp-id`' />
+ <!--<parameter name='dst-access-node-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-access-node-id`' />-->
+ <parameter name='dst-access-node-id' value='`$tmp.domainG-dst-access-node-id`' />
+ <parameter name='dst-access-ltp-id' value='`$tmp.otninfo[$otnidx].dstPort.dst-tunnel-tp-id`' />
+ <parameter name='route-distinguisher' value='`$gfp`' />
+ <parameter name='operational-status' value='Created' />
+ <parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />
+ <parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />
+ <parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />
+ <parameter name='vpn-region' value='`$prop.sdncRestApi.thirdpartySdnc.domainG.url`' />
+ <parameter name='vpn-description' value='`$prop.sdncRestApi.thirdpartySdnc.domainG.user`' />
+ <parameter name='vpn-platform' value='`$prop.sdncRestApi.thirdpartySdnc.domainG.password`' />
+ <!-- The following line is in lieu of vpn-binding.slice-id (new attribute in latest AAI) -->
+ <!--<parameter name='ops-note' value='`$tmp.aai.service-instance.service-instance-id`' />-->
+ <parameter name='slice-id' value='`$tmp.aai.service-instance.service-instance-id`' />
+ <parameter name='ops-note' value='`$tmp.srcTtpOtnLayer`' />
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ </save>
+ <set>
+ <parameter name='tmp.newFlag' value="`$tmp.the-connectivity.coupling-flag + '-' +
+ $tmp.srcTtpdstTtpPair`" />
+ </set>
+ <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity'
+ key='connectivity.connectivity-id = $tmp.the-connectivity.connectivity-id'>
+ <parameter name='connectivity-id' value='`$tmp.the-connectivity.connectivity-id`' />
+ <parameter name='etht-svc-name' value='`$prop.ethernet-service-name`' />
+ <parameter name='operational-status' value='Modified' />
+ <parameter name='coupling-flag' value='`$tmp.newFlag`' />
+ </update>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding:relationship-list'
+ key='vpn-binding.vpn-id = $prop.vpn-binding-otnidx-uuid'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="connectivity" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $tmp.the-connectivity.connectivity-id`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$tmp.the-connectivity.connectivity-id`" />
+ </save>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </for>
+ <set>
+ <parameter name='domain-A.tunnel-tp-id' value='' />
+ <parameter name='domain-A.node-id' value='' />
+ <parameter name='domain-A.network-id' value="" />
+ <parameter name='domain-A.provider-id' value="" />
+ <parameter name='domain-A.client-id' value="" />
+ <parameter name='domain-A.te-topo-id' value="" />
+ <parameter name='domain-A.network-type' value="" />
+ <parameter name='domain-A.ltpId' value="" />
+ <parameter name='tmp.domain-A.network-id' value="" />
+ <parameter name='tmp.domain-A.ttp-id' value="" />
+ <parameter name='network-route-A' value="" />
+ <!--<parameter name='domain-A.' value="" />-->
+ <parameter name='request-id' value='' />
+ <parameter name='otn-source-node' value='' />
+ <parameter name='otn-dest-node' value='' />
+ <parameter name='bw-odu' value="" />
+ <parameter name='src-ttp-id' value='' />
+ <parameter name='dst-ttp-id' value='' />
+ <parameter name='domain-B.tunnel-tp-id' value='' />
+ <parameter name='domain-B.node-id' value='' />
+ <parameter name='domain-B.network-id' value="" />
+ <parameter name='domain-B.provider-id' value="" />
+ <parameter name='domain-B.client-id' value="" />
+ <parameter name='domain-B.te-topo-id' value="" />
+ <parameter name='domain-B.network-type' value="" />
+ <parameter name='domain-B.ltpId' value="" />
+ <parameter name='tmp.domain-B.network-id' value="" />
+ <parameter name='tmp.domain-B.ttp-id' value="" />
+ <parameter name='network-route-B' value="" />
+ <!--<parameter name='domain-B.' value="" />-->
+ </set>
+ </block>
+ </method>
+</service-logic> \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-create-clean.xml b/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-create-clean.xml
new file mode 100644
index 00000000..be49338c
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-create-clean.xml
@@ -0,0 +1,1239 @@
+<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='cll-vnf-topology-operation-cll-create-clean' mode='sync'>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
+ <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />
+ <parameter name='contextPrefix' value='prop' />
+ </execute>
+ <!--<get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" -->
+ <!-- resource="service-instance"-->
+ <!-- key='service-instance.service-instance-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.service-instance-id-->
+ <!-- AND customer.global-customer-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.global-customer-id -->
+ <!-- AND service-subscription.service-type = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.subscription-service-type'-->
+ <!-- local-only="false"-->
+ <!-- force="true" pfx="tmp.aai.service-instance">-->
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="service-instance"
+ key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id
+ AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id
+ AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type'
+ local-only="false"
+ force="true" pfx="tmp.aai.service-instance">
+ <!--<get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" -->
+ <!-- resource="service-instance"-->
+ <!-- key='service-instance.service-instance-id = $service-data.service-information.service-instance-id-->
+ <!-- AND customer.global-customer-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.global-customer-id -->
+ <!-- AND service-subscription.service-type = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.subscription-service-type'-->
+ <!-- local-only="false"-->
+ <!-- force="true" pfx="tmp.aai.service-instance">-->
+ <outcome value='success'>
+ <switch test='`$tmp.aai.service-instance.allotted-resources.allotted-resource_length != 0`'>
+ <outcome value='false'></outcome>
+ <outcome value='true'>
+ <block>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="pnfs"
+ key="selflink = 'https://aai.onap:8443/aai/v24/network/pnfs?depth=0'"
+ local-only="false"
+ pfx="ccsdkTopopnfs" ></get-resource>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="logical-links"
+ key="selflink = 'https://aai.onap:8443/aai/v24/network/logical-links?depth=0'"
+ local-only="false"
+ pfx="ccsdkTopologicalLinks" ></get-resource>
+ <set>
+ <parameter name='tmp.arr' value='' />
+ <parameter name='tmp.arridx' value='0' />
+ <parameter name='tmp.arr_length' value='0' />
+ <parameter name='otn-tunnel-slice' value='' />
+ <parameter name='otn-tunnel-slice_length' value='0' />
+ <!--<parameter name='tmp.slicevpns' value='' />-->
+ <!--<parameter name='tmp.slicevpns_length' value='0' />-->
+ <!--<parameter name='tmp.slicevpnuuids' value='' />-->
+ <!--<parameter name='tmp.slicevpnuuids.' value='' />-->
+ </set>
+ <for index='aridx' start='0' end='`$tmp.aai.service-instance.allotted-resources.allotted-resource_length`' >
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
+ <parameter name="ctx-destination" value="prop.ethernet-service-name"/>
+ </execute>
+ <set>
+ <!--<parameter name='prop.ethernet-service-name' value="`$tmp.aai.logical-link.link-name`" />-->
+ <parameter name='prop.ethernet-service-name' value="`$tmp.aai.logical-link.link-id`" />
+ </set>
+ <set>
+ <parameter name='allotted-resource-id' value="`$tmp.aai.service-instance.allotted-resources.allotted-resource[$aridx].id`" />
+ </set>
+ <!--<get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" -->
+ <!-- resource="allotted-resource"-->
+ <!-- key='service-instance.service-instance-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.service-instance-id-->
+ <!-- AND customer.global-customer-id = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.global-customer-id -->
+ <!-- AND service-subscription.service-type = $service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.subscription-service-type-->
+ <!-- AND allotted-resource.id = $allotted-resource-id'-->
+ <!-- local-only="false"-->
+ <!-- force="true" pfx="tmp.aai.allotted-resource">-->
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="allotted-resource"
+ key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id
+ AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id
+ AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type
+ AND allotted-resource.id = $allotted-resource-id'
+ local-only="false"
+ force="true" pfx="tmp.aai.allotted-resource">
+ <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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true">
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="allotted-resource:relationship-list"
+ key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id
+ AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id
+ AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type
+ AND allotted-resource.id = $allotted-resource-id'
+ local-only="false"
+ force="true" pfx="tmp.aai.allotted-resource.relationship-list">
+ <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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true">
+ <switch test='`$tmp.aai.allotted-resource.relationship-list.relationship_length != 0`'>
+ <outcome value='false'></outcome>
+ <outcome value='true'>
+ <block atomic="true">
+ <for index='idx' start='0' end='`$tmp.aai.allotted-resource.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.allotted-resource.relationship-list.relationship[$idx].related-to`'>
+ <outcome value='network-policy'>
+ <block atomic="true">
+ <set>
+ <parameter name='network-policy-id' value="`$tmp.aai.allotted-resource.relationship-list.relationship[$idx].relationship-data[0].relationship-value`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="network-policy"
+ key='network-policy.network-policy-id = $network-policy-id'
+ local-only="false"
+ force="true" pfx="tmp.aai.network-policy">
+ <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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block>
+ <set>
+ <parameter name='maximum-bandwidth' value="`$tmp.aai.network-policy.max-bandwidth`" />
+ <parameter name='route-distinguisher' value='`$maximum-bandwidth /1000 *4 /5 +1`' />
+ </set>
+ <set>
+ <parameter name='gfp' value='`$maximum-bandwidth /1000 *4 /5 +1`' />
+ </set>
+ </block>
+ </outcome>
+ </get-resource>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ <for index='idx' start='0' end='`$tmp.aai.allotted-resource.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.allotted-resource.relationship-list.relationship[$idx].related-to`'>
+ <outcome value='logical-link'>
+ <block atomic="true">
+ <set>
+ <parameter name='logical-link-name' value="`$tmp.aai.allotted-resource.relationship-list.relationship[$idx].relationship-data[0].relationship-value`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="logical-link"
+ key='logical-link.link-name = $logical-link-name'
+ local-only="false"
+ force="true" pfx="tmp.aai.logical-link">
+ <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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
+ <parameter name="ctx-destination" value="prop.otn-tunnel-name"/>
+ </execute>
+ <set>
+ <parameter name='network-route-one' value="`$tmp.aai.logical-link.link-name`" />
+ </set>
+ <set>
+ <parameter name='network-route-two' value="`$tmp.aai.logical-link.link-name2`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="network-route"
+ key='network-route.route-id = $network-route-one'
+ local-only="false"
+ force="true" pfx="tmp.aai.network-route-one">
+ <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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true">
+ <switch test='`$tmp.aai.network-route-one.type`'>
+ <outcome value='ROOT'>
+ <block>
+ <set>
+ <parameter name='tmp.aai.network-route-ROOT.' value="`$tmp.aai.network-route-one.`" />
+ </set>
+ <set>
+ <parameter name='tmp.aai.network-route-B.' value="`$tmp.aai.network-route-one.`" />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='LEAF'>
+ <block>
+ <set>
+ <parameter name='tmp.aai.network-route-LEAF.' value="`$tmp.aai.network-route-one.`" />
+ </set>
+ <set>
+ <parameter name='tmp.aai.network-route-A.' value="`$tmp.aai.network-route-one.`" />
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </get-resource>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="network-route"
+ key='network-route.route-id = $network-route-two'
+ local-only="false"
+ force="true" pfx="tmp.aai.network-route-two">
+ <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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true">
+ <switch test='`$tmp.aai.network-route-two.type`'>
+ <outcome value='ROOT'>
+ <block>
+ <set>
+ <parameter name='tmp.aai.network-route-ROOT.' value="`$tmp.aai.network-route-two.`" />
+ </set>
+ <set>
+ <parameter name='tmp.aai.network-route-B.' value="`$tmp.aai.network-route-two.`" />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='LEAF'>
+ <block>
+ <set>
+ <parameter name='tmp.aai.network-route-LEAF.' value="`$tmp.aai.network-route-two.`" />
+ </set>
+ <set>
+ <parameter name='tmp.aai.network-route-A.' value="`$tmp.aai.network-route-two.`" />
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </get-resource>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >
+ <parameter name="original_string" value='`$tmp.aai.network-route-A.next-hop`'/>
+ <!--<parameter name="regex" value="[^-]+$"/>-->
+ <parameter name="regex" value="[-]+"/>
+ <parameter name="ctx_memory_result_key" value="param-prefix-domainA-pnfName"/>
+ <outcome value='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.src.domainA.pnf-name' value="`$param-prefix-domainA-pnfName[0] + '-' +
+ $param-prefix-domainA-pnfName[1] + '-' +
+ $param-prefix-domainA-pnfName[2] + '-' +
+ $param-prefix-domainA-pnfName[3] + '-' +
+ $param-prefix-domainA-pnfName[4] + '-' +
+ $param-prefix-domainA-pnfName[5] + '-' +
+ $param-prefix-domainA-pnfName[6] + '-' +
+ $param-prefix-domainA-pnfName[7] + '-' +
+ $param-prefix-domainA-pnfName[8]`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="pnf"
+ key="pnf.pnf-name = $tmp.src.domainA.pnf-name"
+ pfx='tmp.aai.source-pnf' local-only='false' >
+ <!--AND depth = '0'"-->
+ <outcome value='success'>
+ <block>
+ <for silentFailure='true' index='spvidx' start='0' end='`$tmp.aai.source-pnf.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].related-to`'>
+ <outcome value='esr-thirdparty-sdnc'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.domainA.esr-thirdparty-id' value="`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="esr-thirdparty-sdnc"
+ key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.domainA.esr-thirdparty-id AND
+ depth = '1'"
+ pfx='tmp.aai.domainA.esr-thirdparty-sdnc' local-only='false' >
+ <outcome value='success'>
+ <block>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainA.url' value="`$tmp.aai.domainA.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainA.user' value="`$tmp.aai.domainA.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainA.password' value="`$tmp.aai.domainA.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
+ <!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->
+ <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`" />-->
+ <!--<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="get"/>-->
+ <!--<parameter name="responsePrefix" value="topology"/>-->
+ <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->
+ <!--<parameter name="trustStorePassword" value="adminadmin"/>-->
+ <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->
+ <!--<parameter name="keyStorePassword" value="adminadmin"/>-->
+ </set>
+ </block>
+ </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>
+ </block>
+ </outcome>
+ <outcome value='network-resource'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.domainA.eth-network-id' value="`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`" />
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
+ </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>
+ </block>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value="An error occured while splitting sna1_route" />
+ </return>
+ </outcome>
+ </execute>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="p-interface"
+ key="pnf.pnf-name = $tmp.src.domainA.pnf-name
+ AND p-interface.interface-name = $tmp.aai.network-route-A.next-hop"
+ local-only="false"
+ pfx="tmp.aai.network-route-A.p-interface-src" >
+ <!--<get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" -->
+ <!-- resource="p-interface"-->
+ <!-- key="pnf.pnf-name = $unique-src-node-Id-->
+ <!-- and p-interface.interface-name = $tmp.aai.endpointA.relationship-list.relationship[$rel-index].relationship-data[0].relationship-value"-->
+ <!-- local-only="false" -->
+ <!-- pfx="tmp.aai.endpointA.p-interface-src" >-->
+ <outcome value='success'>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >
+ <parameter name="original_string" value='`$tmp.aai.network-route-A.p-interface-src.interface-name`'/>
+ <!--<parameter name="regex" value="[^-]+$"/>-->
+ <parameter name="regex" value="[-]+"/>
+ <parameter name="ctx_memory_result_key" value="param-prefix-domainA"/>
+ <outcome value='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.src.ltpId' value='`$param-prefix-domainA[$param-prefix-domainA_length -1]`' />
+ </set>
+ <set>
+ <parameter name='tmp.src.pnf-name' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value="An error occured while splitting sna1_route" />
+ </return>
+ </outcome>
+ </execute>
+ <for silentFailure='true' index='pividx' start='0' end='`$tmp.aai.network-route-A.p-interface-src.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.network-route-A.p-interface-src.relationship-list.relationship[$pividx].related-to`'>
+ <outcome value='tunnel-termination-point'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.source.ttp-id' value="`$tmp.aai.network-route-A.p-interface-src.relationship-list.relationship[$pividx].relationship-data[0].relationship-value`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="tunnel-termination-point"
+ key="tunnel-termination-point.ttp-id = $tmp.source.ttp-id
+ AND depth = '0'"
+ pfx='tmp.aai.source-ttp' local-only='false' >
+ <outcome value='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='source.tunnel-tp-id' value="`$tmp.aai.source-ttp.tunnel-tp-id`" />
+ </set>
+ </block>
+ </outcome>
+ </get-resource>
+ <break/>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
+ </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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ </get-resource>
+ <set>
+ <parameter name='tmp.LEAF.pnf-name-long' value="`$param-prefix-domainA-pnfName[0] + '-' +
+ $param-prefix-domainA-pnfName[1] + '-' +
+ $param-prefix-domainA-pnfName[2] + '-' +
+ $param-prefix-domainA-pnfName[3] + '-' +
+ $param-prefix-domainA-pnfName[4] + '-' +
+ $param-prefix-domainA-pnfName[5] + '-' +
+ $param-prefix-domainA-pnfName[6] + '-' +
+ $param-prefix-domainA-pnfName[7] + '-' +
+ $param-prefix-domainA-pnfName[8]`" />
+ <!--<parameter name='tmp.LEAF.pnf-name-short' value="`$param-prefix-domainA-pnfName[8]`" />-->
+ <parameter name='tmp.LEAF.pnf-name-short' value="`$tmp.src.pnf-name`" />
+ <parameter name='tmp.LEAF.uni-p-interface-long' value="`$tmp.aai.network-route-A.next-hop`" />
+ <parameter name='tmp.LEAF.uni-tp-id' value="`$tmp.src.ltpId`" />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >
+ <parameter name="original_string" value='`$tmp.aai.network-route-B.next-hop`'/>
+ <!--<parameter name="regex" value="[^-]+$"/>-->
+ <parameter name="regex" value="[-]+"/>
+ <parameter name="ctx_memory_result_key" value="param-prefix-domainB-pnfName"/>
+ <outcome value='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.dst.domainB.pnf-name' value="`$param-prefix-domainB-pnfName[0] + '-' +
+ $param-prefix-domainB-pnfName[1] + '-' +
+ $param-prefix-domainB-pnfName[2] + '-' +
+ $param-prefix-domainB-pnfName[3] + '-' +
+ $param-prefix-domainB-pnfName[4] + '-' +
+ $param-prefix-domainB-pnfName[5] + '-' +
+ $param-prefix-domainB-pnfName[6] + '-' +
+ $param-prefix-domainB-pnfName[7] + '-' +
+ $param-prefix-domainB-pnfName[8]`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="pnf"
+ key="pnf.pnf-name = $tmp.dst.domainB.pnf-name"
+ pfx='tmp.aai.destination-pnf' local-only='false' >
+ <!--AND depth = '0'"-->
+ <outcome value='success'>
+ <block>
+ <for silentFailure='true' index='dpvidx' start='0' end='`$tmp.aai.destination-pnf.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.destination-pnf.relationship-list.relationship[$dpvidx].related-to`'>
+ <outcome value='esr-thirdparty-sdnc'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.domainB.esr-thirdparty-id' value="`$tmp.aai.destination-pnf.relationship-list.relationship[$dpvidx].relationship-data[0].relationship-value`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="esr-thirdparty-sdnc"
+ key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.domainB.esr-thirdparty-id AND
+ depth = '1'"
+ pfx='tmp.aai.domainB.esr-thirdparty-sdnc' local-only='false' >
+ <outcome value='success'>
+ <block>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainB.url' value="`$tmp.aai.domainB.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainB.user' value="`$tmp.aai.domainB.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domainB.password' value="`$tmp.aai.domainB.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
+ <!--<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >-->
+ <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`" />-->
+ <!--<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="get"/>-->
+ <!--<parameter name="responsePrefix" value="topology"/>-->
+ <!--<parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>-->
+ <!--<parameter name="trustStorePassword" value="adminadmin"/>-->
+ <!--<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>-->
+ <!--<parameter name="keyStorePassword" value="adminadmin"/>-->
+ </set>
+ </block>
+ </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>
+ </block>
+ </outcome>
+ <outcome value='network-resource'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.domainB.eth-network-id' value="`$tmp.aai.destination-pnf.relationship-list.relationship[$dpvidx].relationship-data[0].relationship-value`" />
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
+ </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>
+ </block>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value="An error occured while splitting sna1_route" />
+ </return>
+ </outcome>
+ </execute>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="p-interface"
+ key="pnf.pnf-name = $tmp.dst.domainB.pnf-name
+ AND p-interface.interface-name = $tmp.aai.network-route-B.next-hop"
+ local-only="false"
+ pfx="tmp.aai.network-route-B.p-interface-dst" >
+ <!--<get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" -->
+ <!-- resource="p-interface"-->
+ <!-- key="pnf.pnf-name = $unique-src-node-Id-->
+ <!-- and p-interface.interface-name = $tmp.aai.endpointA.relationship-list.relationship[$rel-index].relationship-data[0].relationship-value"-->
+ <!-- local-only="false" -->
+ <!-- pfx="tmp.aai.endpointA.p-interface-src" >-->
+ <outcome value='success'>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >
+ <parameter name="original_string" value='`$tmp.aai.network-route-B.p-interface-dst.interface-name`'/>
+ <!--<parameter name="regex" value="[^-]+$"/>-->
+ <parameter name="regex" value="[-]+"/>
+ <parameter name="ctx_memory_result_key" value="param-prefix-domainB"/>
+ <outcome value='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.dst.ltpId' value='`$param-prefix-domainB[$param-prefix-domainB_length -1]`' />
+ </set>
+ <set>
+ <parameter name='tmp.dst.pnf-name' value='`$param-prefix-domainB[$param-prefix-domainB_length -3]`' />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value="An error occured while splitting sna1_route" />
+ </return>
+ </outcome>
+ </execute>
+ <for silentFailure='true' index='dividx' start='0' end='`$tmp.aai.network-route-B.p-interface-dst.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.network-route-B.p-interface-dst.relationship-list.relationship[$dividx].related-to`'>
+ <outcome value='tunnel-termination-point'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.destination.ttp-id' value="`$tmp.aai.network-route-B.p-interface-dst.relationship-list.relationship[$dividx].relationship-data[0].relationship-value`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="tunnel-termination-point"
+ key="tunnel-termination-point.ttp-id = $tmp.destination.ttp-id
+ AND depth = '0'"
+ pfx='tmp.aai.destination-ttp' local-only='false' >
+ <outcome value='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='destination.tunnel-tp-id' value="`$tmp.aai.destination-ttp.tunnel-tp-id`" />
+ </set>
+ </block>
+ </outcome>
+ </get-resource>
+ <break/>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
+ </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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ </get-resource>
+ <set>
+ <parameter name='tmp.ROOT.pnf-name-long' value="`$param-prefix-domainB-pnfName[0] + '-' +
+ $param-prefix-domainB-pnfName[1] + '-' +
+ $param-prefix-domainB-pnfName[2] + '-' +
+ $param-prefix-domainB-pnfName[3] + '-' +
+ $param-prefix-domainB-pnfName[4] + '-' +
+ $param-prefix-domainB-pnfName[5] + '-' +
+ $param-prefix-domainB-pnfName[6] + '-' +
+ $param-prefix-domainB-pnfName[7] + '-' +
+ $param-prefix-domainB-pnfName[8]`" />
+ <!--<parameter name='tmp.ROOT.pnf-name-short' value="`$param-prefix-domainB-pnfName[8]`" />-->
+ <parameter name='tmp.ROOT.pnf-name-short' value="`$tmp.dst.pnf-name`" />
+ <parameter name='tmp.ROOT.uni-p-interface-long' value="`$tmp.aai.network-route-B.next-hop`" />
+ <parameter name='tmp.ROOT.uni-tp-id' value="`$tmp.dst.ltpId`" />
+ </set>
+ <call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-logic' mode='sync' ></call>
+ <switch test='`$found-middle-man`'>
+ <outcome value='false'>
+ <block atomic='true'>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
+ <parameter name="ctx-destination" value="uuid.connectivity-domainA-uuid"/>
+ </execute>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity'
+ key='connectivity.connectivity-id = $uuid.connectivity-domainA-uuid'>
+ <parameter name='connectivity-id' value='`$uuid.connectivity-domainA-uuid`' />
+ <parameter name='etht-svc-name' value='`$prop.ethernet-service-name`' />
+ <parameter name='operational-status' value='Created' />
+ <parameter name='access-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />
+ <parameter name='access-client-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -7]`' />
+ <parameter name='access-topology-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -5]`' />
+ <parameter name='access-node-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />
+ <parameter name='access-ltp-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -1]`' />
+ <parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />
+ <parameter name='vpn-type' value='leaf' />
+ <parameter name='bandwidth-profile-name' value='`$gfp`' />
+ <parameter name='cir' value='`$gfp *1000000`' />
+ <parameter name='eir' value='`$gfp *1000000`' />
+ <parameter name='cbs' value='`$prop.sotn.cbs`' />
+ <parameter name='ebs' value='`$prop.sotn.ebs`' />
+ <!--<parameter name='color-aware' value='`$prop.sotn.colorAware`' />-->
+ <!--<parameter name='coupling-flag' value='`$prop.sotn.couplingFlag`' />-->
+ <!--<parameter name='etht-svc-name' value='`$prop.sotn.etht-svc-name`' />-->
+ <parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />
+ <parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />
+ <parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />
+ <parameter name='connectivity-selflink' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $network-topology-operation-input.service-information.service-instance-id + '/service-data/networks/network/' + $prop.sotn.network-id + '/network-data/'` " />
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list'
+ key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id
+ AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id
+ AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="connectivity" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $uuid.connectivity-domainA-uuid`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$uuid.connectivity-domainA-uuid`" />
+ <!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' -->
+ <!-- key='service-instance.service-instance-id = $service-data.service-information.service-instance-id -->
+ <!-- AND customer.global-customer-id = $service-data.networks.network[$nidx].network-data.service-information.global-customer-id -->
+ <!-- AND service-subscription.service-type = $service-data.networks.network[$nidx].network-data.service-information.subscription-service-type' -->
+ <!-- force="true" pfx="tmp.AnAI-data">-->
+ <!--<parameter name="relationship-list.relationship[0].related-to" value="connectivity" />-->
+ <!--<parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $prop.sotn.network-id`" />-->
+ <!--<parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />-->
+ <!--<parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$prop.sotn.network-id`" />-->
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='uni'
+ key='uni.id = $tmp.LEAF.uni-p-interface-long'>
+ <parameter name='id' value='`$tmp.LEAF.uni-p-interface-long`' />
+ <parameter name='tp-id' value='`$tmp.LEAF.uni-tp-id`' />
+ <parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list'
+ key='connectivity.connectivity-id = $uuid.connectivity-domainA-uuid'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="uni" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/unis/uni/' + $tmp.LEAF.uni-p-interface-long`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="uni.id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$tmp.LEAF.uni-p-interface-long`" />
+ </save>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
+ <parameter name="ctx-destination" value="prop.connectivity-domainB-uuid"/>
+ </execute>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity'
+ key='connectivity.connectivity-id = $prop.connectivity-domainB-uuid'>
+ <parameter name='connectivity-id' value='`$prop.connectivity-domainB-uuid`' />
+ <!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' -->
+ <!-- key='connectivity.connectivity-id = $tmp.ROOT.uni-p-interface-long'>-->
+ <!--<parameter name='connectivity-id' value='`$tmp.ROOT.uni-p-interface-long`' />-->
+ <parameter name='etht-svc-name' value='`$prop.ethernet-service-name`' />
+ <parameter name='operational-status' value='Created' />
+ <parameter name='access-provider-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -9]`' />
+ <parameter name='access-client-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -7]`' />
+ <parameter name='access-topology-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -5]`' />
+ <parameter name='access-node-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -3]`' />
+ <parameter name='access-ltp-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -1]`' />
+ <parameter name='cvlan' value='`$tmp.aai.network-route-B.logical-interface-id`' />
+ <parameter name='color-aware' value='`$tmp.ROOT.uni-p-interface-long`' />
+ <parameter name='vpn-type' value='root' />
+ <parameter name='bandwidth-profile-name' value='`$gfp`' />
+ <parameter name='cir' value='`$gfp *1000000`' />
+ <parameter name='eir' value='`$gfp *1000000`' />
+ <parameter name='cbs' value='`$prop.sotn.cbs`' />
+ <parameter name='ebs' value='`$prop.sotn.ebs`' />
+ <!--<parameter name='color-aware' value='`$prop.sotn.colorAware`' />-->
+ <!--<parameter name='coupling-flag' value='`$prop.sotn.couplingFlag`' />-->
+ <!--<parameter name='etht-svc-name' value='`$prop.sotn.etht-svc-name`' />-->
+ <parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />
+ <parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />
+ <parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />
+ <parameter name='connectivity-selflink' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $network-topology-operation-input.service-information.service-instance-id + '/service-data/networks/network/' + $prop.sotn.network-id + '/network-data/'` " />
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list'
+ key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id
+ AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id
+ AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="connectivity" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $prop.connectivity-domainB-uuid`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$prop.connectivity-domainB-uuid`" />
+ <!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' -->
+ <!-- key='service-instance.service-instance-id = $service-data.service-information.service-instance-id -->
+ <!-- AND customer.global-customer-id = $service-data.networks.network[$nidx].network-data.service-information.global-customer-id -->
+ <!-- AND service-subscription.service-type = $service-data.networks.network[$nidx].network-data.service-information.subscription-service-type' -->
+ <!-- force="true" pfx="tmp.AnAI-data">-->
+ <!--<parameter name="relationship-list.relationship[0].related-to" value="connectivity" />-->
+ <!--<parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $prop.sotn.network-id`" />-->
+ <!--<parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />-->
+ <!--<parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$prop.sotn.network-id`" />-->
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='uni'
+ key='uni.id = $tmp.ROOT.uni-p-interface-long'>
+ <parameter name='id' value='`$tmp.ROOT.uni-p-interface-long`' />
+ <parameter name='tp-id' value='`$tmp.ROOT.uni-tp-id`' />
+ <parameter name='cvlan' value='`$tmp.aai.network-route-B.logical-interface-id`' />
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list'
+ key='connectivity.connectivity-id = $prop.connectivity-domainB-uuid'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="uni" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/unis/uni/' + $tmp.ROOT.uni-p-interface-long`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="uni.id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$tmp.ROOT.uni-p-interface-long`" />
+ </save>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
+ <parameter name="ctx-destination" value="prop.connectivity-middle-man-uuid"/>
+ </execute>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity'
+ key='connectivity.connectivity-id = $prop.connectivity-middle-man-uuid'>
+ <parameter name='connectivity-id' value='`$prop.connectivity-middle-man-uuid`' />
+ <parameter name='etht-svc-name' value='`$prop.ethernet-service-name`' />
+ <parameter name='operational-status' value='Created' />
+ <!--The followings are not needed for the middle-man-connectivity-->
+ <!--<parameter name='access-provider-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -9]`' />-->
+ <!--<parameter name='access-client-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -7]`' />-->
+ <!--<parameter name='access-topology-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -5]`' />-->
+ <!--<parameter name='access-node-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -3]`' />-->
+ <!--<parameter name='access-ltp-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -1]`' />-->
+ <parameter name='cvlan' value='`$tmp.aai.network-route-B.logical-interface-id`' />
+ <parameter name='color-aware' value='`$tmp.ROOT.uni-p-interface-long`' />
+ <parameter name='vpn-type' value='mdsc' />
+ <parameter name='bandwidth-profile-name' value='`$gfp`' />
+ <parameter name='cir' value='`$gfp *1000000`' />
+ <parameter name='eir' value='`$gfp *1000000`' />
+ <parameter name='cbs' value='`$prop.sotn.cbs`' />
+ <parameter name='ebs' value='`$prop.sotn.ebs`' />
+ <!--<parameter name='color-aware' value='`$prop.sotn.colorAware`' />-->
+ <!--<parameter name='coupling-flag' value='`$prop.sotn.couplingFlag`' />-->
+ <!--<parameter name='etht-svc-name' value='`$prop.sotn.etht-svc-name`' />-->
+ <parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />
+ <parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />
+ <parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />
+ <parameter name='connectivity-selflink' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $network-topology-operation-input.service-information.service-instance-id + '/service-data/networks/network/' + $prop.sotn.network-id + '/network-data/'` " />
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list'
+ key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id
+ AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id
+ AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="connectivity" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $prop.connectivity-middle-man-uuid`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$prop.connectivity-middle-man-uuid`" />
+ <!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' -->
+ <!-- key='service-instance.service-instance-id = $service-data.service-information.service-instance-id -->
+ <!-- AND customer.global-customer-id = $service-data.networks.network[$nidx].network-data.service-information.global-customer-id -->
+ <!-- AND service-subscription.service-type = $service-data.networks.network[$nidx].network-data.service-information.subscription-service-type' -->
+ <!-- force="true" pfx="tmp.AnAI-data">-->
+ <!--<parameter name="relationship-list.relationship[0].related-to" value="connectivity" />-->
+ <!--<parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $prop.sotn.network-id`" />-->
+ <!--<parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />-->
+ <!--<parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$prop.sotn.network-id`" />-->
+ </save>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="connectivity"
+ key="connectivity.connectivity-id = $prop.connectivity-middle-man-uuid"
+ local-only="false"
+ pfx="middle-man-conn" >
+ <outcome value='success'>
+ <block atomic='true'></block>
+ </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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ </get-resource>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list'
+ key='connectivity.connectivity-id = $middle-man-conn.connectivity-id'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="connectivity" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $uuid.connectivity-domainA-uuid`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$uuid.connectivity-domainA-uuid`" />
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list'
+ key='connectivity.connectivity-id = $middle-man-conn.connectivity-id'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="connectivity" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $prop.connectivity-domainB-uuid`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$prop.connectivity-domainB-uuid`" />
+ </save>
+ <call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-F1' mode='sync' ></call>
+ </block>
+ </outcome>
+ <outcome value='true'>
+ <block atomic='true'>
+ <set>
+ <parameter name='tmp.current-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />
+ <parameter name='tmp.current-cvlan-id' value='`$tmp.aai.network-route-A.logical-interface-id`' />
+ <!--<parameter name='access-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />-->
+ <!--<parameter name='access-client-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -7]`' />-->
+ <!--<parameter name='access-topology-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -5]`' />-->
+ <!--<parameter name='access-node-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />-->
+ <!--<parameter name='access-ltp-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -1]`' />-->
+ <!--<parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />-->
+ </set>
+ <call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-helper-find-connectivity' mode='sync' ></call>
+ <switch test='`$no-pce-call`'>
+ <outcome value='false'>
+ <block atomic='true'>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='uni'
+ key='uni.id = $tmp.LEAF.uni-p-interface-long'>
+ <parameter name='id' value='`$tmp.LEAF.uni-p-interface-long`' />
+ <parameter name='tp-id' value='`$tmp.LEAF.uni-tp-id`' />
+ <parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />
+ </save>
+ <switch test="`$found-connectivity`">
+ <outcome value='false'>
+ <block atomic='true'>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
+ <parameter name="ctx-destination" value="uuid.connectivity-domainA-uuid"/>
+ </execute>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity'
+ key='connectivity.connectivity-id = $uuid.connectivity-domainA-uuid'>
+ <parameter name='connectivity-id' value='`$uuid.connectivity-domainA-uuid`' />
+ <parameter name='etht-svc-name' value='`$middle-man-conn.etht-svc-name`' />
+ <parameter name='operational-status' value='Created' />
+ <parameter name='access-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />
+ <parameter name='access-client-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -7]`' />
+ <parameter name='access-topology-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -5]`' />
+ <parameter name='access-node-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />
+ <parameter name='access-ltp-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -1]`' />
+ <parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />
+ <parameter name='vpn-type' value='leaf' />
+ <parameter name='bandwidth-profile-name' value='`$gfp`' />
+ <parameter name='cir' value='`$gfp *1000000`' />
+ <parameter name='eir' value='`$gfp *1000000`' />
+ <parameter name='cbs' value='`$prop.sotn.cbs`' />
+ <parameter name='ebs' value='`$prop.sotn.ebs`' />
+ <!--<parameter name='color-aware' value='`$prop.sotn.colorAware`' />-->
+ <!--<parameter name='coupling-flag' value='`$prop.sotn.couplingFlag`' />-->
+ <!--<parameter name='etht-svc-name' value='`$prop.sotn.etht-svc-name`' />-->
+ <parameter name='model-customization-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-customization-uuid`' />
+ <parameter name='model-invariant-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-invariant-uuid`' />
+ <parameter name='model-version-id' value='`$network-topology-operation-input.network-information.onap-model-information.model-uuid`' />
+ <parameter name='connectivity-selflink' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $network-topology-operation-input.service-information.service-instance-id + '/service-data/networks/network/' + $prop.sotn.network-id + '/network-data/'` " />
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list'
+ key='service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-instance-id
+ AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id
+ AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="connectivity" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $uuid.connectivity-domainA-uuid`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$uuid.connectivity-domainA-uuid`" />
+ <!--<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='service-instance:relationship-list' -->
+ <!-- key='service-instance.service-instance-id = $service-data.service-information.service-instance-id -->
+ <!-- AND customer.global-customer-id = $service-data.networks.network[$nidx].network-data.service-information.global-customer-id -->
+ <!-- AND service-subscription.service-type = $service-data.networks.network[$nidx].network-data.service-information.subscription-service-type' -->
+ <!-- force="true" pfx="tmp.AnAI-data">-->
+ <!--<parameter name="relationship-list.relationship[0].related-to" value="connectivity" />-->
+ <!--<parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $prop.sotn.network-id`" />-->
+ <!--<parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />-->
+ <!--<parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$prop.sotn.network-id`" />-->
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list'
+ key='connectivity.connectivity-id = $middle-man-conn.connectivity-id'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="connectivity" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/connectivities/connectivity/' + $uuid.connectivity-domainA-uuid`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="connectivity.connectivity-id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$uuid.connectivity-domainA-uuid`" />
+ </save>
+ </block>
+ </outcome>
+ <outcome value='true'>
+ <block atomic='true'>
+ <set>
+ <parameter name='uuid.connectivity-domainA-uuid' value="`$tmp.the-connectivity.connectivity-id`" />
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list'
+ key='connectivity.connectivity-id = $uuid.connectivity-domainA-uuid'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="uni" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/unis/uni/' + $tmp.LEAF.uni-p-interface-long`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="uni.id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$tmp.LEAF.uni-p-interface-long`" />
+ </save>
+ <call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-helper-find-ROOT-conn' mode='sync' ></call>
+ <switch test="`$found-root-connectivity`">
+ <outcome value='true'>
+ <block atomic='true'>
+ <set>
+ <!--<parameter name='prop.connectivity-domainB-uuid' value="`$tmp.ROOT.uni-p-interface-long`" />-->
+ <!--OR-->
+ <parameter name='prop.connectivity-domainB-uuid' value="`$tmp.aai.ROOT.connectivity.connectivity-id`" />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='false'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='Root Connectivity was not found' />
+ </return>
+ </outcome>
+ </switch>
+ <call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-F1' mode='sync' ></call>
+ </block>
+ </outcome>
+ <outcome value='true'>
+ <block atomic='true'>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='uni'
+ key='uni.id = $tmp.LEAF.uni-p-interface-long'>
+ <parameter name='id' value='`$tmp.LEAF.uni-p-interface-long`' />
+ <parameter name='tp-id' value='`$tmp.LEAF.uni-tp-id`' />
+ <parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />
+ </save>
+ <set>
+ <parameter name='tmp.current-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />
+ <parameter name='tmp.current-cvlan-id' value='`$tmp.aai.network-route-A.logical-interface-id`' />
+ <!--<parameter name='access-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />-->
+ <!--<parameter name='access-client-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -7]`' />-->
+ <!--<parameter name='access-topology-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -5]`' />-->
+ <!--<parameter name='access-node-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />-->
+ <!--<parameter name='access-ltp-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -1]`' />-->
+ <!--<parameter name='cvlan' value='`$tmp.aai.network-route-A.logical-interface-id`' />-->
+ </set>
+ <call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-helper-find-connectivity' mode='sync' ></call>
+ <switch test="`$found-connectivity`">
+ <outcome value='false'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='Connectivity should have been created' />
+ </return>
+ </outcome>
+ <outcome value='true'>
+ <block>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity:relationship-list'
+ key='connectivity.connectivity-id = $tmp.the-connectivity.connectivity-id'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="uni" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/unis/uni/' + $tmp.LEAF.uni-p-interface-long`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="uni.id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$tmp.LEAF.uni-p-interface-long`" />
+ </save>
+ <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity'
+ key='connectivity.connectivity-id = $tmp.the-connectivity.connectivity-id'>
+ <parameter name='connectivity-id' value='`$tmp.the-connectivity.connectivity-id`' />
+ <parameter name='operational-status' value='Modified' />
+ </update>
+ <set>
+ <parameter name='allNetworksList.' value='' />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="network-resources"
+ key="selflink = 'https://aai.onap:8443/aai/v24/network/network-resources?depth=0'"
+ local-only="false"
+ pfx="allNetworksList" >
+ <outcome value='success'></outcome>
+ <outcome value='Other'></outcome>
+ <outcome value='not-found'></outcome>
+ </get-resource>
+ <for index='netwidx' start='0' end='`$allNetworksList.network-resource_length`' >
+ <switch test='`$allNetworksList.network-resource[$netwidx].provider-id == $param-prefix-domainA-pnfName[2]`'>
+ <outcome value='true'>
+ <switch test='`$allNetworksList.network-resource[$netwidx].te-topo-id != $param-prefix-domainA-pnfName[6]`'>
+ <outcome value='true'>
+ <set>
+ <parameter name='otnTopoIdSrc' value='`$allNetworksList.network-resource[$netwidx].te-topo-id`' />
+ </set>
+ </outcome>
+ </switch>
+ </outcome>
+ </switch>
+ </for>
+ <set>
+ <parameter name='tmp.pce-src-node.' value='' />
+ </set>
+ <set>
+ <!--<parameter name='tmp.pce-src-node' value="`$param-prefix-domainA-pnfName[0] + '-' +-->
+ <!-- $param-prefix-domainA-pnfName[1] + '-' +-->
+ <!-- $param-prefix-domainA-pnfName[2] + '-' +-->
+ <!-- $param-prefix-domainA-pnfName[3] + '-' +-->
+ <!-- $param-prefix-domainA-pnfName[4] + '-' +-->
+ <!-- $param-prefix-domainA-pnfName[5] + '-' +-->
+ <!-- 1 + '-' +-->
+ <!-- $param-prefix-domainA-pnfName[7] + '-' +-->
+ <!-- $param-prefix-domainA-pnfName[8]`" />-->
+ <parameter name='tmp.pce-src-node' value="`$param-prefix-domainA-pnfName[0] + '-' +
+ $param-prefix-domainA-pnfName[1] + '-' +
+ $param-prefix-domainA-pnfName[2] + '-' +
+ $param-prefix-domainA-pnfName[3] + '-' +
+ $param-prefix-domainA-pnfName[4] + '-' +
+ $param-prefix-domainA-pnfName[5] + '-' +
+ $otnTopoIdSrc + '-' +
+ $param-prefix-domainA-pnfName[7] + '-' +
+ $param-prefix-domainA-pnfName[8]`" />
+ </set>
+ <set>
+ <!--<parameter name='tmp.srcTtpOtnLayer' value="`$tmp.pce-src-node + '-' + -->
+ <!-- $param-prefix-domainA[$param-prefix-domainA_length -2] + '-' +-->
+ <!-- $tmp.source.ttp-id`" />-->
+ <parameter name='tmp.srcTtpOtnLayer' value="`$tmp.pce-src-node`" />
+ </set>
+ <call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-find-maximum-used-tpn' mode='sync' ></call>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="vpn-bindings"
+ key="selflink = 'https://aai.onap:8443/aai/v24/network/vpn-bindings"
+ local-only="false"
+ pfx="tmp.aai.all-vpn-bindings" >
+ <outcome value='success'>
+ <block atomic="true">
+ <for index='vpnbidx' start='0' end='`$tmp.aai.all-vpn-bindings.vpn-binding_length`' >
+ <block atomic='true'>
+ <!--<switch test="`$tmp.slicevpnuuids[$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].vpn-id] != '' `">-->
+ <!-- Replace vpn-type with slice-id (a new attribbute in the latest AAI) -->
+ <switch test="`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].slice-id == $tmp.aai.service-instance.service-instance-id `">
+ <outcome value='false'></outcome>
+ <outcome value='true'>
+ <block atomic='true'>
+ <switch test="`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].ops-note == $tmp.srcTtpOtnLayer `">
+ <outcome value='true'>
+ <block atomic='true'>
+ <set>
+ <parameter name='tmp.aai.the-vpn-binding.' value="" />
+ </set>
+ <set>
+ <parameter name='tmp.aai.the-vpn-binding.' value="`$tmp.aai.all-vpn-bindings.vpn-binding[$vpnbidx].`" />
+ </set>
+ <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
+ key='vpn-binding.vpn-id = $tmp.aai.the-vpn-binding.vpn-id' >
+ <parameter name='vpn-id' value='`$tmp.aai.the-vpn-binding.vpn-id`' />
+ <!--<parameter name='vpn-name' value='`$prop.otn-tunnel-name`' />-->
+ <parameter name='customer-vpn-id' value='`$newToBeUsedMaxtpn`' />
+ <parameter name='route-distinguisher' value='`$tmp.aai.the-vpn-binding.route-distinguisher + $gfp`' />
+ <parameter name='operational-status' value='Modified' />
+ </update>
+ </block>
+ </outcome>
+ <outcome value='false'></outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </for>
+ </block>
+ </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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ </get-resource>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </get-resource>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </get-resource>
+ </block>
+ </outcome>
+ </get-resource>
+ </for>
+ <call module='GENERIC-RESOURCE-API' rpc='cll-vnf-topology-operation-cll-F1-activate' mode='sync' ></call>
+ </block>
+ </outcome>
+ </switch>
+ </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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ </get-resource>
+ <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/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-find-maximum-used-tpn.xml b/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-find-maximum-used-tpn.xml
new file mode 100644
index 00000000..468a4f7d
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-find-maximum-used-tpn.xml
@@ -0,0 +1,46 @@
+<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='cll-vnf-topology-operation-find-maximum-used-tpn' mode='sync'>
+ <block atomic="true">
+ <set>
+ <parameter name='maxtpn' value='1' />
+ <parameter name='newToBeUsedMaxtpn' value='1' />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="vpn-bindings"
+ key="selflink = 'https://aai.onap:8443/aai/v21/network/vpn-bindings"
+ local-only="false"
+ pfx="tmp.aai.allvpnbindings" >
+ <outcome value='not-found'></outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true">
+ <for index='allvpnbidx' start='0' end='`$tmp.aai.allvpnbindings.vpn-binding_length`' >
+ <block atomic='true'>
+ <switch test="`$tmp.aai.allvpnbindings.vpn-binding[$allvpnbidx].customer-vpn-id >= $maxtpn `">
+ <outcome value='true'>
+ <block atomic='true'>
+ <set>
+ <parameter name='maxtpn' value='`$tmp.aai.allvpnbindings.vpn-binding[$allvpnbidx].customer-vpn-id`' />
+ </set>
+ <set>
+ <parameter name='newToBeUsedMaxtpn' value='`$maxtpn + $tmp.aai.allvpnbindings.vpn-binding[$allvpnbidx].route-distinguisher`' />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='false'></outcome>
+ </switch>
+ </block>
+ </for>
+ </block>
+ </outcome>
+ </get-resource>
+ </block>
+ </method>
+</service-logic> \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-ROOT-conn.xml b/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-ROOT-conn.xml
new file mode 100644
index 00000000..71bc7c1f
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-ROOT-conn.xml
@@ -0,0 +1,54 @@
+<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='cll-vnf-topology-operation-cll-helper-find-ROOT-conn' mode='sync'>
+ <block atomic="true">
+ <set>
+ <parameter name='found-root-connectivity' value="false" />
+ </set>
+ <set>
+ <parameter name='tmp.aai.ROOT.connectivity.' value="" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="connectivities"
+ key="selflink = 'https://aai.onap:8443/aai/v24/network/connectivities/'"
+ local-only="false"
+ pfx="tmp.aai.helper-root-all-connectivities" >
+ <outcome value='success'>
+ <block atomic="true">
+ <for index='helprconnidx' start='0' end='`$tmp.aai.helper-root-all-connectivities.connectivity_length`' >
+ <block atomic='true'>
+ <switch test="`$tmp.aai.helper-root-all-connectivities.connectivity[$helprconnidx].color-aware == $tmp.ROOT.uni-p-interface-long`">
+ <outcome value='true'>
+ <block atomic='true'>
+ <set>
+ <parameter name='found-root-connectivity' value="true" />
+ </set>
+ <set>
+ <parameter name='tmp.aai.ROOT.connectivity.' value="`$tmp.aai.helper-root-all-connectivities.connectivity[$helprconnidx].`" />
+ </set>
+ <break/>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </for>
+ </block>
+ </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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ </get-resource>
+ </block>
+ </method>
+</service-logic> \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-connectivity.xml b/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-connectivity.xml
new file mode 100644
index 00000000..6e279384
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-helper-find-connectivity.xml
@@ -0,0 +1,60 @@
+<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='cll-vnf-topology-operation-cll-helper-find-connectivity' mode='sync'>
+ <block atomic="true">
+ <set>
+ <parameter name='found-connectivity' value="false" />
+ </set>
+ <set>
+ <parameter name='tmp.the-connectivity.' value="" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="connectivities"
+ key="selflink = 'https://aai.onap:8443/aai/v24/network/connectivities/'"
+ local-only="false"
+ pfx="tmp.aai.helper-all-connectivities" >
+ <outcome value='success'>
+ <block atomic="true">
+ <for index='helpconnidx' start='0' end='`$tmp.aai.helper-all-connectivities.connectivity_length`' >
+ <block atomic='true'>
+ <switch test="`$tmp.current-provider-id == $tmp.aai.helper-all-connectivities.connectivity[$helpconnidx].access-provider-id`">
+ <outcome value='true'>
+ <block atomic='true'>
+ <switch test="`$tmp.current-cvlan-id == $tmp.aai.helper-all-connectivities.connectivity[$helpconnidx].cvlan`">
+ <outcome value='true'>
+ <block atomic='true'>
+ <set>
+ <parameter name='found-connectivity' value="true" />
+ </set>
+ <set>
+ <parameter name='tmp.the-connectivity.' value="`$tmp.aai.helper-all-connectivities.connectivity[$helpconnidx].`" />
+ </set>
+ <break/>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </for>
+ </block>
+ </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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ </get-resource>
+ </block>
+ </method>
+</service-logic> \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-logic.xml b/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-logic.xml
new file mode 100644
index 00000000..a9562ab5
--- /dev/null
+++ b/platform-logic/generic-resource-api/src/main/xml/cloud_leased_line/GENERIC-RESOURCE-API_cll-vnf-topology-operation-cll-logic.xml
@@ -0,0 +1,207 @@
+<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='cll-vnf-topology-operation-cll-logic' mode='sync'>
+ <block atomic="true">
+ <set>
+ <parameter name='middle-man-conn.' value='' />
+ </set>
+ <set>
+ <parameter name='tmp.aai.all-connectivities.' value="" />
+ </set>
+ <set>
+ <parameter name='found-middle-man' value="false" />
+ </set>
+ <set>
+ <parameter name='no-pce-call' value="false" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="connectivities"
+ key="selflink = 'https://aai.onap:8443/aai/v24/network/connectivities"
+ local-only="false"
+ pfx="tmp.aai.all-connectivities" >
+ <outcome value='success'>
+ <block atomic="true">
+ <switch test="`$tmp.aai.all-connectivities.connectivity_length == 0`">
+ <outcome value='true'></outcome>
+ <outcome value='false'>
+ <for index='connidx' start='0' end='`$tmp.aai.all-connectivities.connectivity_length`' >
+ <block atomic='true'>
+ <switch test="`$tmp.aai.all-connectivities.connectivity[$connidx].vpn-type == 'mdsc' `">
+ <outcome value='false'>
+ <block></block>
+ </outcome>
+ <outcome value='true'>
+ <block atomic='true'>
+ <switch test="`$tmp.aai.all-connectivities.connectivity[$connidx].color-aware == $tmp.ROOT.uni-p-interface-long`">
+ <outcome value='false'>
+ <block></block>
+ </outcome>
+ <outcome value='true'>
+ <block atomic='true'>
+ <set>
+ <parameter name='found-middle-man' value="true" />
+ </set>
+ <set>
+ <parameter name='middle-man-conn.' value='`$tmp.aai.all-connectivities.connectivity[$connidx].`' />
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ <switch test="`$found-middle-man`">
+ <outcome value='false'>
+ <block></block>
+ </outcome>
+ <outcome value='true'>
+ <block atomic='true'>
+ <for silentFailure='true' index='mmridx' start='0' end='`$middle-man-conn.relationship-list.relationship_length`' >
+ <set>
+ <parameter name='tmp.aai.mmrconnectivity.' value='' />
+ </set>
+ <switch test='`$middle-man-conn.relationship-list.relationship[$mmridx].related-to`'>
+ <outcome value='connectivity'>
+ <block atomic="true">
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="connectivity"
+ key="connectivity.connectivity-id = $middle-man-conn.relationship-list.relationship[$mmridx].relationship-data[0].relationship-value"
+ local-only="false"
+ pfx="tmp.aai.mmrconnectivity" >
+ <outcome value='success'>
+ <switch test="`$tmp.aai.mmrconnectivity.vpn-type == 'leaf' `">
+ <outcome value='false'>
+ <block></block>
+ </outcome>
+ <outcome value='true'>
+ <block atomic='true'>
+ <!--<switch test="`$tmp.aai.all-connectivities.connectivity[$connidx].cvlan == $tmp.aai.network-route-LEAF.logical-interface-id `">-->
+ <switch test="`$tmp.aai.mmrconnectivity.cvlan == $tmp.aai.network-route-LEAF.logical-interface-id `">
+ <outcome value='false'>
+ <block></block>
+ </outcome>
+ <outcome value='true'>
+ <for silentFailure='true' index='connrelidx' start='0' end='`$tmp.aai.mmrconnectivity.relationship-list.relationship_length`' >
+ <set>
+ <parameter name='tmp.uni.id' value='' />
+ </set>
+ <switch test='`$tmp.aai.mmrconnectivity.relationship-list.relationship[$connrelidx].related-to`'>
+ <outcome value='uni'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.uni.id' value='`$tmp.aai.mmrconnectivity.relationship-list.relationship[$connrelidx].relationship-data[0].relationship-value`' />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="uni"
+ key="uni.id = $tmp.uni.id"
+ local-only="false"
+ pfx="tmp.aai.uni" >
+ <outcome value='success'>
+ <block atomic='true'>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >
+ <parameter name="original_string" value='`$tmp.aai.uni.id`'/>
+ <!--<parameter name="regex" value="[^-]+$"/>-->
+ <parameter name="regex" value="[-]+"/>
+ <parameter name="ctx_memory_result_key" value="param-prefix-uni-pnfName"/>
+ <outcome value='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.uni.pnf-name' value="`$param-prefix-uni-pnfName[0] + '-' +
+ $param-prefix-uni-pnfName[1] + '-' +
+ $param-prefix-uni-pnfName[2] + '-' +
+ $param-prefix-uni-pnfName[3] + '-' +
+ $param-prefix-uni-pnfName[4] + '-' +
+ $param-prefix-uni-pnfName[5] + '-' +
+ $param-prefix-uni-pnfName[6] + '-' +
+ $param-prefix-uni-pnfName[7] + '-' +
+ $param-prefix-uni-pnfName[8]`" />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value="An error occured while splitting sna1_route" />
+ </return>
+ </outcome>
+ </execute>
+ <switch test='`$tmp.uni.pnf-name == $tmp.LEAF.pnf-name-long`'>
+ <outcome value='false'>
+ <block></block>
+ </outcome>
+ <outcome value='true'>
+ <block atomic='true'>
+ <set>
+ <parameter name='no-pce-call' value="true" />
+ </set>
+ <set>
+ <parameter name='middle-man-conn.' value='`$tmp.aai.all-connectivities.connectivity[$connidx].`' />
+ </set>
+ <set>
+ <parameter name='filenamebb' value="`$param-prefix-uni-pnfName[8]`" />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
+ <parameter name="filename" value="`$filenamebb`" />
+ </execute>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='not-found'>
+ <return status='failure'>
+ <parameter name='error-code' value='500' />
+ <parameter name='error-message' value='uni not found' />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='500' />
+ <parameter name='error-message' value='uni not found' />
+ </return>
+ </outcome>
+ </get-resource>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ </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.l3vpn.pe1_id`" />
+ </return>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value='' />
+ </return>
+ </outcome>
+ </get-resource>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </for>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='not-found'></outcome>
+ <outcome value='failure'></outcome>
+ </get-resource>
+ </block>
+ </method>
+</service-logic> \ No newline at end of file
diff --git a/platform-logic/restapi-templates/src/main/json/cll-ethernet-service-loop.json b/platform-logic/restapi-templates/src/main/json/cll-ethernet-service-loop.json
new file mode 100644
index 00000000..e4198aa5
--- /dev/null
+++ b/platform-logic/restapi-templates/src/main/json/cll-ethernet-service-loop.json
@@ -0,0 +1,61 @@
+{
+ "ietf-eth-tran-service:etht-svc":{
+ "etht-svc-instances":[
+ {
+ "etht-svc-name": ${eth-service-name},
+ "ietf-optical-slice:slice-id": ${slice-id},
+ "etht-svc-descr": "Ethernet-over-OTN",
+ "etht-svc-type": "ietf-eth-tran-types:p2p-svc",
+ "te-topology-identifier":{
+ "provider-id": ${provider-id},
+ "client-id": ${client-id},
+ "topology-id": ${topology-id}
+ },
+ "underlay":{
+ "otn-tunnels": [
+ ${repeat:otn-tunnels-name-list_length:
+ {
+ "name": ${otn-tunnels-name-list[${1}].otn-tunnel-name}
+ },
+ }
+ ]
+ "resilience":{
+ "protection":{
+ "enable":"true",
+ "hold-off-time":"0",
+ "protection-reversion-disable":"true",
+ "protection-type":"ietf-te-types:lsp-protection-unprotected",
+ "wait-to-revert":"0"
+ }
+ },
+ "admin-status":"ietf-te-types:tunnel-admin-state-up",
+ "etht-svc-end-points":[
+ ${repeat:ethernet-srv-end-points-list_length:
+ {
+ "etht-svc-end-point-name": ${ethernet-srv-end-points-list[${1}].ethernet-end-point-name},
+ "etht-svc-access-points":[
+ {
+ "access-point-id": ${ethernet-srv-end-points-list[${1}].index-number},
+ "access-node-id": ${ethernet-srv-end-points-list[${1}].eth-node-id},
+ "access-ltp-id": ${ethernet-srv-end-points-list[${1}].eth-node-tp-id},
+ "access-role": ${ethernet-srv-end-points-list[${1}].leafOrRootAccess}
+ // "ietf-eth-tran-types:leaf-access"
+ // "ietf-eth-tran-types:root-primary"
+ }
+ ],
+ "outer-tag":{
+ "tag-type":"ietf-eth-tran-types:classify-c-vlan",
+ "vlan-value":${ethernet-srv-end-points-list[${1}].cvlan}
+ },
+ "service-classification-type":"ietf-eth-tran-types:vlan-classification",
+ "ingress-egress-bandwidth-profile":{
+ "bandwidth-profile-type":"ietf-eth-tran-types:mef-10-bwp",
+ "CIR": ${ethernet-srv-end-points-list[${1}].CIR},
+ "EIR": ${ethernet-srv-end-points-list[${1}].EIR}
+ }
+ },
+ }
+ ]
+ ]
+ }
+}
diff --git a/platform-logic/restapi-templates/src/main/json/cll-otn-tunnel-domainG.json b/platform-logic/restapi-templates/src/main/json/cll-otn-tunnel-domainG.json
new file mode 100644
index 00000000..85b974ee
--- /dev/null
+++ b/platform-logic/restapi-templates/src/main/json/cll-otn-tunnel-domainG.json
@@ -0,0 +1,66 @@
+{
+ "ietf-te:te": {
+ "tunnels": {
+ "tunnel": [
+ {
+ "name": ${otn-tunnel-name-domainG},
+ "source": ${src-node-id},
+ "destination": ${dst-node-id},
+ "src-tunnel-tp-id": ${src-ttp-id},
+ "dst-tunnel-tp-id": ${dst-ttp-id},
+ "te-bandwidth": {
+ "ietf-otn-tunnel:otn": {
+ "ietf-otn-tunnel:odu-type": "ietf-layer1-types:ODUflex",
+ "ietf-otn-tunnel:gfp-n": ${gfp-n}
+ }
+ },
+ "encoding": "ietf-te-types:lsp-encoding-oduk",
+ "switching-type": "ietf-te-types:switching-otn",
+ "protection": {
+ "enable": "true",
+ "hold-off-time": "0",
+ "protection-reversion-disable": "true",
+ "protection-type": "ietf-te-types:lsp-protection-unprotected",
+ "wait-to-revert": "0"
+ },
+ "admin-state": "ietf-te-types:tunnel-admin-state-up",
+ "primary-paths":{
+ "primary-path" :[
+ {
+ "name":"primary",
+ "path-in-segment":{
+ "label-restrictions":{
+ "label-restriction":[
+ {
+ "index" :1,
+ "label-start":{
+ "te-label":{
+ "ietf-otn-tunnel:otn-tpn": ${src-tpn-id}
+ }
+ }
+ }
+ ]
+ }
+ },
+ "path-out-segment":{
+ "label-restrictions":{
+ "label-restriction":[
+ {
+ "index" :1,
+ "label-start":{
+ "te-label":{
+ "ietf-otn-tunnel:otn-tpn": ${dst-tpn-id}
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+}
diff --git a/platform-logic/restapi-templates/src/main/json/cll-otn-tunnel-dst-domain.json b/platform-logic/restapi-templates/src/main/json/cll-otn-tunnel-dst-domain.json
new file mode 100644
index 00000000..29d19e04
--- /dev/null
+++ b/platform-logic/restapi-templates/src/main/json/cll-otn-tunnel-dst-domain.json
@@ -0,0 +1,51 @@
+{
+ "ietf-te:te": {
+ "tunnels": {
+ "tunnel": [
+ {
+ "name": ${otn-tunnel-name-dst-domain},
+ "source": ${src-node-id},
+ "destination": ${dst-node-id},
+ "src-tunnel-tp-id": ${src-ttp-id},
+ "te-bandwidth": {
+ "ietf-otn-tunnel:otn": {
+ "ietf-otn-tunnel:odu-type": "ietf-layer1-types:ODUflex",
+ "ietf-otn-tunnel:gfp-n": ${gfp-n}
+ }
+ },
+ "encoding": "ietf-te-types:lsp-encoding-oduk",
+ "switching-type": "ietf-te-types:switching-otn",
+ "protection": {
+ "enable": "true",
+ "hold-off-time": "0",
+ "protection-reversion-disable": "true",
+ "protection-type": "ietf-te-types:lsp-protection-unprotected",
+ "wait-to-revert": "0"
+ },
+ "admin-state": "ietf-te-types:tunnel-admin-state-up",
+ "primary-paths":{
+ "primary-path" :[
+ {
+ "name":"primary",
+ "path-in-segment":{
+ "label-restrictions":{
+ "label-restriction":[
+ {
+ "index" :1,
+ "label-start":{
+ "te-label":{
+ "ietf-otn-tunnel:otn-tpn": ${src-tpn-id}
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+}
diff --git a/platform-logic/restapi-templates/src/main/json/cll-otn-tunnel-src-domain.json b/platform-logic/restapi-templates/src/main/json/cll-otn-tunnel-src-domain.json
new file mode 100644
index 00000000..6dce14c9
--- /dev/null
+++ b/platform-logic/restapi-templates/src/main/json/cll-otn-tunnel-src-domain.json
@@ -0,0 +1,51 @@
+{
+ "ietf-te:te": {
+ "tunnels": {
+ "tunnel": [
+ {
+ "name": ${otn-tunnel-name-src-domain},
+ "source": ${src-node-id},
+ "destination": ${dst-node-id},
+ "dst-tunnel-tp-id": ${dst-ttp-id},
+ "te-bandwidth": {
+ "ietf-otn-tunnel:otn": {
+ "ietf-otn-tunnel:odu-type": "ietf-layer1-types:ODUflex",
+ "ietf-otn-tunnel:gfp-n": ${gfp-n}
+ }
+ },
+ "encoding": "ietf-te-types:lsp-encoding-oduk",
+ "switching-type": "ietf-te-types:switching-otn",
+ "protection": {
+ "enable": "true",
+ "hold-off-time": "0",
+ "protection-reversion-disable": "true",
+ "protection-type": "ietf-te-types:lsp-protection-unprotected",
+ "wait-to-revert": "0"
+ },
+ "admin-state": "ietf-te-types:tunnel-admin-state-up",
+ "primary-paths":{
+ "primary-path" :[
+ {
+ "name":"primary",
+ "path-out-segment":{
+ "label-restrictions":{
+ "label-restriction":[
+ {
+ "index" :1,
+ "label-start":{
+ "te-label":{
+ "ietf-otn-tunnel:otn-tpn": ${dst-tpn-id}
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ ]
+ }
+ }
+}