diff options
author | 2020-10-30 03:29:17 +0000 | |
---|---|---|
committer | 2020-11-03 09:47:25 -0500 | |
commit | 550fe5b30603ff6da993acc5aeea83d1096433eb (patch) | |
tree | a4a76af7d7438cd396f775f8b5f7b452af034341 /platform-logic/generic-resource-api/src | |
parent | bc5810f48963ec7414b69d077cd2ed91ae187136 (diff) |
Completing the logic and the call flow for Transport Slicing operations:
- Allocate a Transport Slice
- Activate a Transport Slice
- DeActivate a Transport Slice
- Delete a Transport Slice
Bug Fixing and cleaning up the DGs.
Issue-ID: SDNC-1202
Issue-ID: SDNC-1404
Change-Id: Ib2eae06c543ae8277ee2014fda87ca2ca3a516af
Signed-off-by: Hesam Rahimi <hesam.rahimi@huawei.com>
Former-commit-id: 7d1d841fd7271844c65ca1e9754ad5eec2487c4d
Diffstat (limited to 'platform-logic/generic-resource-api/src')
10 files changed, 11112 insertions, 0 deletions
diff --git a/platform-logic/generic-resource-api/src/main/json/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-get-otn-tunnel-path-from-oof.json b/platform-logic/generic-resource-api/src/main/json/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-get-otn-tunnel-path-from-oof.json new file mode 100644 index 00000000..edc6aadf --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-get-otn-tunnel-path-from-oof.json @@ -0,0 +1,1652 @@ +[
+ {
+ "id": "ffc612a5.7b0918",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 183,
+ "y": 130,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "6dda290e.27dad8"
+ ]
+ ]
+ },
+ {
+ "id": "6dda290e.27dad8",
+ "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": 308,
+ "y": 456.00001525878906,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "3ffa7f3f.e7e27"
+ ]
+ ]
+ },
+ {
+ "id": "3ffa7f3f.e7e27",
+ "type": "method",
+ "name": "tsli-vnf-topology-operation-get-otn-tunnel-path-from-oof",
+ "xml": "<method rpc='tsli-vnf-topology-operation-get-otn-tunnel-path-from-oof' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 372.0001220703125,
+ "y": 549,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "9aa7ba3c.52a7f"
+ ]
+ ]
+ },
+ {
+ "id": "4ab3abe1.e87adc",
+ "type": "execute",
+ "name": "execute RestApiCallNode getPath from OOF",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.oof-getpath.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.restapi.connection-oof-url`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.oof.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.oof.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"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": 854.9730834960938,
+ "y": 207.99600219726562,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "6b5ff944.5bf648",
+ "850f0c15.20d28"
+ ]
+ ]
+ },
+ {
+ "id": "6b5ff944.5bf648",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1094.9732246398926,
+ "y": 231.9959716796875,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "cd276ba.d3fc218"
+ ]
+ ]
+ },
+ {
+ "id": "905d3517.25cab8",
+ "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 OOF api\" />\n",
+ "comments": "",
+ "x": 1233.973258972168,
+ "y": 180.99606323242188,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "850f0c15.20d28",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1093.9730110168457,
+ "y": 180.99606227874756,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "905d3517.25cab8"
+ ]
+ ]
+ },
+ {
+ "id": "6a5159e4.7418a",
+ "type": "comment",
+ "name": "OTN tunnel path computation",
+ "info": "TODO: check input parameters -- they should be\nthe source and destination of ETH node+tp.",
+ "comments": "",
+ "x": 826.4768829345703,
+ "y": 164.00000190734863,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "eda4482b.a18e38",
+ "type": "for",
+ "name": "for vidx..otn-oof.solutions_length[]",
+ "xml": "<for index='vidx' start='0' end='`$otn-oof.solutions_length`' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 845.972900390625,
+ "y": 517.2457275390625,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "576c4b0b.248fb4"
+ ]
+ ]
+ },
+ {
+ "id": "735419f0.115878",
+ "type": "comment",
+ "name": "Loop through OTN links",
+ "info": "",
+ "comments": "",
+ "x": 929.4732055664062,
+ "y": 596.74609375,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "576c4b0b.248fb4",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 950.5001220703125,
+ "y": 708.2864990234375,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "da160010.38d94",
+ "5b4dabd5.4d7054"
+ ]
+ ]
+ },
+ {
+ "id": "da160010.38d94",
+ "type": "get-resource",
+ "name": "get-resource cross-link",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"logical-link\" \n\t\tkey=\"logical-link.link-name = $otn-oof.link-name\"\n pfx='tmp.aai.cross-link' local-only='false' >\n\n <!--AND depth = '0'\"-->\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1217.5001220703125,
+ "y": 628.2864685058594,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "38a6a5c5.3878b2",
+ "7911950a.d4f9bc",
+ "c37b490.2ec29b8"
+ ]
+ ]
+ },
+ {
+ "id": "c37b490.2ec29b8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1409.0001220703125,
+ "y": 573.2864685058594,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "203a4a36.513986"
+ ]
+ ]
+ },
+ {
+ "id": "38a6a5c5.3878b2",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1445.0001220703125,
+ "y": 698.2864990234375,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "21535143.0a939e"
+ ]
+ ]
+ },
+ {
+ "id": "7911950a.d4f9bc",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1439.0001220703125,
+ "y": 748.2864990234375,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "21f78d15.02bd0a"
+ ]
+ ]
+ },
+ {
+ "id": "21535143.0a939e",
+ "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": 1606.0001220703125,
+ "y": 687.2864990234375,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "21f78d15.02bd0a",
+ "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": 1604.0001220703125,
+ "y": 743.2864990234375,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "875b8573.2757",
+ "type": "comment",
+ "name": "get cross-domain-link information",
+ "info": "",
+ "comments": "",
+ "x": 1218.5001220703125,
+ "y": 589.2864685058594,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "5b4dabd5.4d7054",
+ "type": "set",
+ "name": "set otn-oof.link-name",
+ "xml": "<set>\n<parameter name='otn-oof.link-name' value='`$otn-oof.solutions[$vidx].link`' />",
+ "comments": "",
+ "x": 1200.0001220703125,
+ "y": 538.2864685058594,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "cd276ba.d3fc218",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1240.0002708435059,
+ "y": 229.74145698547363,
+ "z": "59711e8e.29744",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "9aa7ba3c.52a7f",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 612.9688835144043,
+ "y": 475.74163722991943,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "eda4482b.a18e38",
+ "4ab3abe1.e87adc"
+ ]
+ ]
+ },
+ {
+ "id": "edd38a6c.67c6b8",
+ "type": "switchNode",
+ "name": "test cross-domain-link role",
+ "xml": "<switch test='`$tmp.aai.cross-link.link-role`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1724.5001220703125,
+ "y": 573,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "344b3505.db598a"
+ ]
+ ]
+ },
+ {
+ "id": "344b3505.db598a",
+ "type": "outcome",
+ "name": "outcome cross-domain",
+ "xml": "<outcome value='cross-domain'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1960.5001220703125,
+ "y": 574,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "bdc2d141.60e88"
+ ]
+ ]
+ },
+ {
+ "id": "7c9a4f45.2dfb5",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 2279.5,
+ "y": 1051,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "bdc2d141.60e88",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2163.5001220703125,
+ "y": 575,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "7c9a4f45.2dfb5",
+ "54d54d35.c8ade4",
+ "965a7aea.98984",
+ "f57884fd.e852f"
+ ]
+ ]
+ },
+ {
+ "id": "7f48300c.649cc8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2604,
+ "y": 542,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "2a6040f8.29261"
+ ]
+ ]
+ },
+ {
+ "id": "9cd22818.9c99c",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2637.0001220703125,
+ "y": 600,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "8222994e.269fa"
+ ]
+ ]
+ },
+ {
+ "id": "11e5f855.56b93",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2640.0001220703125,
+ "y": 652,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "39b267f5.2906b8"
+ ]
+ ]
+ },
+ {
+ "id": "8222994e.269fa",
+ "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": 2822.0001220703125,
+ "y": 604,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "39b267f5.2906b8",
+ "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": 2810.0001220703125,
+ "y": 655,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "6235283.bbe1f58",
+ "type": "set",
+ "name": "set domain A node ttp-id",
+ "xml": "<set>\n<parameter name='tmp.domain-A.ttp-id' value=\"`$tmp.aai.src-tp.relationship-list.relationship[$vidx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 3940.5,
+ "y": 457,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "4dcc3c3f.b0f8dc",
+ "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.domain-A.ttp-id \n\t\tAND depth = '0'\"\n pfx='tmp.aai.src-ttp' local-only='false' >\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3948.5,
+ "y": 509,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "83dfda72.1dad78"
+ ]
+ ]
+ },
+ {
+ "id": "83dfda72.1dad78",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4155,
+ "y": 487,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "bd70272d.20274"
+ ]
+ ]
+ },
+ {
+ "id": "49b3daba.22ab04",
+ "type": "outcome",
+ "name": "tunnel-termination-point",
+ "xml": "<outcome value='tunnel-termination-point'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3492.66845703125,
+ "y": 535.4815063476562,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "2abdfdd6.de70da"
+ ]
+ ]
+ },
+ {
+ "id": "db5fdeca.64d9c8",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='vidx' start='0' end='`$tmp.aai.src-tp.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2955.3828125,
+ "y": 537.6597290039062,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "7fedd7f6.218328"
+ ]
+ ]
+ },
+ {
+ "id": "7fedd7f6.218328",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.src-tp.relationship-list.relationship[$vidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3207.3828125,
+ "y": 534.6597290039062,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "49b3daba.22ab04"
+ ]
+ ]
+ },
+ {
+ "id": "2abdfdd6.de70da",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3719.5,
+ "y": 524,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "6235283.bbe1f58",
+ "4dcc3c3f.b0f8dc",
+ "3af252ac.f5160e",
+ "b3928b44.45b93",
+ "6051cb19.bdbedc"
+ ]
+ ]
+ },
+ {
+ "id": "54d54d35.c8ade4",
+ "type": "get-resource",
+ "name": "get-resource dst tp",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"p-interface\" \n\t\tkey=\"pnf.pnf-name = $tmp.dst-pnf-name\n\t\t AND p-interface.interface-name = $tmp.cross-link.dst-ltpId\"\n pfx='tmp.aai.dst-tp' local-only='false' >\n \n <!--AND depth = '0'\"-->\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2360.5001220703125,
+ "y": 947,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "caa1180f.475d",
+ "4f60ddcb.06c464",
+ "99e66acf.ef78a8"
+ ]
+ ]
+ },
+ {
+ "id": "caa1180f.475d",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2583,
+ "y": 1089,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "99dd61a2.0612b8"
+ ]
+ ]
+ },
+ {
+ "id": "4f60ddcb.06c464",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2567,
+ "y": 1140,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "ecf71935.9fff1"
+ ]
+ ]
+ },
+ {
+ "id": "99e66acf.ef78a8",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2570,
+ "y": 1192,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "b029d176.ebc328"
+ ]
+ ]
+ },
+ {
+ "id": "b029d176.ebc328",
+ "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": 2740,
+ "y": 1195,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "ecf71935.9fff1",
+ "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": 2752,
+ "y": 1144,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "446999ee.737b88",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='vidx' start='0' end='`$tmp.aai.dst-tp.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2939.3828125,
+ "y": 1099.6597290039062,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "733247bb.4951e8"
+ ]
+ ]
+ },
+ {
+ "id": "733247bb.4951e8",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.dst-tp.relationship-list.relationship[$vidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3182.3828125,
+ "y": 1098.6597290039062,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "551892cc.c334d4"
+ ]
+ ]
+ },
+ {
+ "id": "d1ae1073.116fc8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4948.5,
+ "y": 900,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "e4453cc8.2d68",
+ "a58a5fab.4b9628",
+ "a3e0896b.517c78"
+ ]
+ ]
+ },
+ {
+ "id": "551892cc.c334d4",
+ "type": "outcome",
+ "name": "tunnel-termination-point",
+ "xml": "<outcome value='tunnel-termination-point'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3438.66845703125,
+ "y": 1098.4815063476562,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "167858f1.4d47ff"
+ ]
+ ]
+ },
+ {
+ "id": "c5e10d55.b93e8",
+ "type": "outcome",
+ "name": "network-resource",
+ "xml": "<outcome value='network-resource'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4735.5,
+ "y": 899,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "d1ae1073.116fc8"
+ ]
+ ]
+ },
+ {
+ "id": "167858f1.4d47ff",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3738.5,
+ "y": 1096,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "b3d72c6d.8cf07",
+ "1624e4ba.2068eb",
+ "140c24f7.3b14f3",
+ "c25cb799.15c3f8",
+ "a035bf70.73a55"
+ ]
+ ]
+ },
+ {
+ "id": "b3d72c6d.8cf07",
+ "type": "set",
+ "name": "set domain B node ttp-id",
+ "xml": "<set>\n<parameter name='tmp.domain-B.ttp-id' value=\"`$tmp.aai.dst-tp.relationship-list.relationship[$vidx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 3980.5,
+ "y": 1050,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "1624e4ba.2068eb",
+ "type": "get-resource",
+ "name": "get-resource dst 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.domain-B.ttp-id \n\t\tAND depth = '0'\"\n pfx='tmp.aai.dst-ttp' local-only='false' >\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3970.5,
+ "y": 1101,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "58cdb5cc.380cfc"
+ ]
+ ]
+ },
+ {
+ "id": "58cdb5cc.380cfc",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4158,
+ "y": 1099,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "355115bb.2168d2"
+ ]
+ ]
+ },
+ {
+ "id": "e4453cc8.2d68",
+ "type": "set",
+ "name": "set domain B network-id",
+ "xml": "<set>\n<parameter name='tmp.domain-B.network-id' value=\"`$tmp.aai.dst-pnf.relationship-list.relationship[$mvidx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 5218.5,
+ "y": 876,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "a58a5fab.4b9628",
+ "type": "get-resource",
+ "name": "get-resource dst network-resource",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"network-resource\" \n\t\tkey=\"network-resource.network-id = $tmp.domain-B.network-id \n\t\tAND depth = '0'\"\n pfx='tmp.aai.dst-network-resource' local-only='false' >\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5228.5,
+ "y": 922,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "a2d84f11.e4cb88"
+ ]
+ ]
+ },
+ {
+ "id": "a2d84f11.e4cb88",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5444,
+ "y": 913,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "33f08d3a.c124c2"
+ ]
+ ]
+ },
+ {
+ "id": "33f08d3a.c124c2",
+ "type": "set",
+ "name": "set domain B network-id, topo-id, client-id, etc",
+ "xml": "<set>\n<parameter name='domain-B.network-id' value=\"`$tmp.aai.dst-network-resource.network-id`\" />\n<parameter name='domain-B.provider-id' value=\"`$tmp.aai.dst-network-resource.provider-id`\" />\n<parameter name='domain-B.client-id' value=\"`$tmp.aai.dst-network-resource.client-id`\" />\n<parameter name='domain-B.te-topo-id' value=\"`$tmp.aai.dst-network-resource.te-topo-id`\" />\n<parameter name='domain-B.network-type' value=\"`$tmp.aai.dst-network-resource.network-type`\" />\n\n\n",
+ "comments": "",
+ "x": 5698.5,
+ "y": 919,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "2a6040f8.29261",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2738,
+ "y": 538,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "db5fdeca.64d9c8"
+ ]
+ ]
+ },
+ {
+ "id": "99dd61a2.0612b8",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2729,
+ "y": 1080,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "446999ee.737b88"
+ ]
+ ]
+ },
+ {
+ "id": "203a4a36.513986",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1543,
+ "y": 575,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "edd38a6c.67c6b8"
+ ]
+ ]
+ },
+ {
+ "id": "965a7aea.98984",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for index='lridx' start='0' end='`$tmp.aai.cross-link.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2313,
+ "y": 359,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "3bc95abb.a9239e"
+ ]
+ ]
+ },
+ {
+ "id": "3bc95abb.a9239e",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.cross-link.relationship-list.relationship[$lridx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2512,
+ "y": 356,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "3cce24fd.740654"
+ ]
+ ]
+ },
+ {
+ "id": "3cce24fd.740654",
+ "type": "outcome",
+ "name": "p-interface",
+ "xml": "<outcome value='p-interface'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2689.117431640625,
+ "y": 354.34027099609375,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "6ac060c8.1a11e8"
+ ]
+ ]
+ },
+ {
+ "id": "9ef5481b.bf4b48",
+ "type": "set",
+ "name": "set src-ltpId and dst-ltpId",
+ "xml": "<set>\n<parameter name='tmp.cross-link.src-ltpId' value=\"`$tmp.aai.cross-link.relationship-list.relationship[$lridx].relationship-data[1].relationship-value`\" />\n<parameter name='tmp.cross-link.dst-ltpId' value=\"`$tmp.aai.cross-link.relationship-list.relationship[$lridx + 1].relationship-data[1].relationship-value`\" />\n\n<parameter name='tmp.src-pnf-name' value=\"`$tmp.aai.cross-link.relationship-list.relationship[$lridx].relationship-data[0].relationship-value`\" />\n<parameter name='tmp.dst-pnf-name' value=\"`$tmp.aai.cross-link.relationship-list.relationship[$lridx + 1].relationship-data[0].relationship-value`\" />\n\n\n",
+ "comments": "",
+ "x": 3003,
+ "y": 298,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "ddeb58ef.e40c3",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 2964,
+ "y": 361,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "6ac060c8.1a11e8",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2829,
+ "y": 339,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "9ef5481b.bf4b48",
+ "ddeb58ef.e40c3"
+ ]
+ ]
+ },
+ {
+ "id": "bd70272d.20274",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4330,
+ "y": 483,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "b2e7a790.6b1818"
+ ]
+ ]
+ },
+ {
+ "id": "355115bb.2168d2",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4347,
+ "y": 1088,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "d4658a57.f78ed8"
+ ]
+ ]
+ },
+ {
+ "id": "f57884fd.e852f",
+ "type": "get-resource",
+ "name": "get-resource src tp",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"p-interface\" \n\t\tkey=\"pnf.pnf-name = $tmp.src-pnf-name\n\t\t AND p-interface.interface-name = $tmp.cross-link.src-ltpId\"\n pfx='tmp.aai.src-tp' local-only='false' >\n \n <!--AND depth = '0'\"-->\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2406.5001220703125,
+ "y": 581,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "7f48300c.649cc8",
+ "9cd22818.9c99c",
+ "11e5f855.56b93"
+ ]
+ ]
+ },
+ {
+ "id": "3af252ac.f5160e",
+ "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-pnf-name\"\n pfx='tmp.aai.src-pnf' local-only='false' >\n\n <!--AND depth = '0'\"-->\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3810,
+ "y": 327,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "fd4b75db.4422e8",
+ "650bdcdc.cfece4",
+ "72662c6f.14033c"
+ ]
+ ]
+ },
+ {
+ "id": "fd4b75db.4422e8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4005.5001220703125,
+ "y": 279,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "b45c7d99.22c22"
+ ]
+ ]
+ },
+ {
+ "id": "650bdcdc.cfece4",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3997.5001220703125,
+ "y": 334,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "cb3c1121.cbe778"
+ ]
+ ]
+ },
+ {
+ "id": "72662c6f.14033c",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4002.5001220703125,
+ "y": 391,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "789ed2a8.499b74"
+ ]
+ ]
+ },
+ {
+ "id": "789ed2a8.499b74",
+ "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": 4154.5001220703125,
+ "y": 392,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "cb3c1121.cbe778",
+ "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": 4165.5001220703125,
+ "y": 337,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "b45c7d99.22c22",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4149.8824462890625,
+ "y": 276.6556701660156,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "ba380e73.fe2bc8",
+ "65a7e039.6dcda8"
+ ]
+ ]
+ },
+ {
+ "id": "ba380e73.fe2bc8",
+ "type": "set",
+ "name": "set domain A node-id and tpn",
+ "xml": "<set>\n<parameter name='domain-A.node-id' value=\"`$tmp.aai.src-pnf.pnf-id`\" />\n<parameter name='domain-A.tpn' value='1' />\n",
+ "comments": "",
+ "x": 4375,
+ "y": 232,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "b3928b44.45b93",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 3897,
+ "y": 574,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "b2e7a790.6b1818",
+ "type": "set",
+ "name": "set domain A tunnel tp ip",
+ "xml": "<set>\n<parameter name='domain-A.tunnel-tp-id' value=\"`$tmp.aai.src-ttp.tunnel-tp-id`\" />\n",
+ "comments": "",
+ "x": 4591,
+ "y": 480,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "c25cb799.15c3f8",
+ "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-pnf-name\"\n pfx='tmp.aai.dst-pnf' local-only='false' >\n\n <!--AND depth = '0'\"-->\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3807,
+ "y": 930,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "c37473f2.19f208",
+ "c644027c.70c3f8",
+ "98fb79a9.84cdc8"
+ ]
+ ]
+ },
+ {
+ "id": "98fb79a9.84cdc8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4002.5001220703125,
+ "y": 882,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "3c4a5895.c63a"
+ ]
+ ]
+ },
+ {
+ "id": "c644027c.70c3f8",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3994.5001220703125,
+ "y": 937,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "70fd1b7c.8d1aac"
+ ]
+ ]
+ },
+ {
+ "id": "c37473f2.19f208",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3999.5001220703125,
+ "y": 994,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "cd3e066f.324aa"
+ ]
+ ]
+ },
+ {
+ "id": "3c4a5895.c63a",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4146.8824462890625,
+ "y": 879.6556701660156,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "a79b012a.c282e",
+ "469c63f2.54b414"
+ ]
+ ]
+ },
+ {
+ "id": "70fd1b7c.8d1aac",
+ "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": 4162.5001220703125,
+ "y": 940,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "cd3e066f.324aa",
+ "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": 4151.5001220703125,
+ "y": 995,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "a79b012a.c282e",
+ "type": "set",
+ "name": "set domain B node-id and tpn",
+ "xml": "<set>\n<parameter name='domain-B.node-id' value=\"`$tmp.aai.dst-pnf.pnf-id`\" />\n<parameter name='domain-B.tpn' value='1' />\n",
+ "comments": "",
+ "x": 4356,
+ "y": 847,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "140c24f7.3b14f3",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 3926,
+ "y": 1142,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "d4658a57.f78ed8",
+ "type": "set",
+ "name": "set domain B tunnel tp id",
+ "xml": "<set>\n<parameter name='domain-B.tunnel-tp-id' value=\"`$tmp.aai.dst-ttp.tunnel-tp-id`\" />\n",
+ "comments": "",
+ "x": 4580,
+ "y": 1087,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "4b900139.065478",
+ "type": "outcome",
+ "name": "network-resource",
+ "xml": "<outcome value='network-resource'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4732,
+ "y": 295,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "c3283205.62573"
+ ]
+ ]
+ },
+ {
+ "id": "c3283205.62573",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4909,
+ "y": 287,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "e3322f04.45bf9",
+ "201af2cb.ff685e",
+ "24c615e9.67af32"
+ ]
+ ]
+ },
+ {
+ "id": "e3322f04.45bf9",
+ "type": "set",
+ "name": "set domain A network-id",
+ "xml": "<set>\n<parameter name='tmp.domain-A.network-id' value=\"`$tmp.aai.src-pnf.relationship-list.relationship[$pvidx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 5124,
+ "y": 268,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "201af2cb.ff685e",
+ "type": "get-resource",
+ "name": "get-resource src network-resource",
+ "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"network-resource\" \n\t\tkey=\"network-resource.network-id = $tmp.domain-A.network-id \n\t\tAND depth = '0'\"\n pfx='tmp.aai.src-network-resource' local-only='false' >\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5141,
+ "y": 332,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "ba151945.9e348"
+ ]
+ ]
+ },
+ {
+ "id": "ba151945.9e348",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5364.5,
+ "y": 333,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "bf5ba977.146f8"
+ ]
+ ]
+ },
+ {
+ "id": "bf5ba977.146f8",
+ "type": "set",
+ "name": "set domain A network-id, topo-id, client-id, etc",
+ "xml": "<set>\n<parameter name='domain-A.network-id' value=\"`$tmp.aai.src-network-resource.network-id`\" />\n<parameter name='domain-A.provider-id' value=\"`$tmp.aai.src-network-resource.provider-id`\" />\n<parameter name='domain-A.client-id' value=\"`$tmp.aai.src-network-resource.client-id`\" />\n<parameter name='domain-A.te-topo-id' value=\"`$tmp.aai.src-network-resource.te-topo-id`\" />\n<parameter name='domain-A.network-type' value=\"`$tmp.aai.src-network-resource.network-type`\" />\n\n\n",
+ "comments": "",
+ "x": 5629,
+ "y": 322,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "65a7e039.6dcda8",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='pvidx' start='0' end='`$tmp.aai.src-pnf.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4334,
+ "y": 291,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "ebc07ec5.500b48"
+ ]
+ ]
+ },
+ {
+ "id": "ebc07ec5.500b48",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.src-pnf.relationship-list.relationship[$pvidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4529,
+ "y": 291,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "4b900139.065478"
+ ]
+ ]
+ },
+ {
+ "id": "24c615e9.67af32",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 5068,
+ "y": 385,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "469c63f2.54b414",
+ "type": "for",
+ "name": "for each relationship",
+ "xml": "<for silentFailure='true' index='mvidx' start='0' end='`$tmp.aai.dst-pnf.relationship-list.relationship_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4335,
+ "y": 898,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "a4a499c0.e7f04"
+ ]
+ ]
+ },
+ {
+ "id": "a4a499c0.e7f04",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.dst-pnf.relationship-list.relationship[$mvidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4530,
+ "y": 898,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "c5e10d55.b93e8"
+ ]
+ ]
+ },
+ {
+ "id": "a3e0896b.517c78",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 5154,
+ "y": 978,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "6051cb19.bdbedc",
+ "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.src-tp`'/>\n<!--<parameter name=\"regex\" value=\"[^-]+$\"/>-->\n<parameter name=\"regex\" value=\"[-]+\"/>\n<parameter name=\"ctx_memory_result_key\" value=\"param-prefix-src-tp\"/>\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3838,
+ "y": 121,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "474c52a4.93fc74",
+ "2bdecc1b.43ff94"
+ ]
+ ]
+ },
+ {
+ "id": "2bdecc1b.43ff94",
+ "type": "failure",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4059,
+ "y": 89,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "21520c33.eb9b1c"
+ ]
+ ]
+ },
+ {
+ "id": "474c52a4.93fc74",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4059,
+ "y": 136,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "ff0936f5.25fc9"
+ ]
+ ]
+ },
+ {
+ "id": "21520c33.eb9b1c",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4224,
+ "y": 86,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "47f81613.356b38"
+ ]
+ ]
+ },
+ {
+ "id": "47f81613.356b38",
+ "type": "set",
+ "name": "set domain-A.ltpId",
+ "xml": "<set>\n<parameter name='domain-A.ltpId' value='`$param-prefix-src-tp[$param-prefix-src-tp_length -1]`' />\n",
+ "comments": "",
+ "x": 4406,
+ "y": 90,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "ff0936f5.25fc9",
+ "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": 4226,
+ "y": 136,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "a035bf70.73a55",
+ "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.dst-tp`'/>\n<!--<parameter name=\"regex\" value=\"[^-]+$\"/>-->\n<parameter name=\"regex\" value=\"[-]+\"/>\n<parameter name=\"ctx_memory_result_key\" value=\"param-prefix-dst-tp\"/>\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3846,
+ "y": 745,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "310e01dd.c1a27e",
+ "976ae4f1.c35c1"
+ ]
+ ]
+ },
+ {
+ "id": "976ae4f1.c35c1",
+ "type": "failure",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4067,
+ "y": 713,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "20b670c9.8ae9c8"
+ ]
+ ]
+ },
+ {
+ "id": "310e01dd.c1a27e",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4067,
+ "y": 760,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "75ef28c6.5e31a"
+ ]
+ ]
+ },
+ {
+ "id": "20b670c9.8ae9c8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4232,
+ "y": 710,
+ "z": "59711e8e.29744",
+ "wires": [
+ [
+ "3c392a8.397b7d6"
+ ]
+ ]
+ },
+ {
+ "id": "3c392a8.397b7d6",
+ "type": "set",
+ "name": "set domain-B.ltpId",
+ "xml": "<set>\n<parameter name='domain-B.ltpId' value='`$param-prefix-dst-tp[$param-prefix-dst-tp_length -1]`' />\n",
+ "comments": "",
+ "x": 4428,
+ "y": 707,
+ "z": "59711e8e.29744",
+ "wires": []
+ },
+ {
+ "id": "75ef28c6.5e31a",
+ "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": 4234,
+ "y": 760,
+ "z": "59711e8e.29744",
+ "wires": []
+ }
+]
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/json/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-activate.json b/platform-logic/generic-resource-api/src/main/json/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-activate.json new file mode 100644 index 00000000..9ffaaf75 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-activate.json @@ -0,0 +1,1738 @@ +[
+ {
+ "id": "d3bb30c4.60fa",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 130,
+ "y": 87,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "d58b4202.9cdb3"
+ ]
+ ]
+ },
+ {
+ "id": "d58b4202.9cdb3",
+ "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": 261.2856903076172,
+ "y": 136.23810863494873,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "617bde2e.1132b"
+ ]
+ ]
+ },
+ {
+ "id": "617bde2e.1132b",
+ "type": "method",
+ "name": "method tsli-vnf-topology-operation-trans-slice-activate",
+ "xml": "<method rpc='tsli-vnf-topology-operation-trans-slice-activate' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 264.4286193847656,
+ "y": 221.00003242492676,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "8ac7a60e.72d768"
+ ]
+ ]
+ },
+ {
+ "id": "8ac7a60e.72d768",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 414.238037109375,
+ "y": 350.6666564941406,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "72b21bde.5e8f94",
+ "9fe7f5eb.e26c6",
+ "9bca10ea.41532"
+ ]
+ ]
+ },
+ {
+ "id": "72b21bde.5e8f94",
+ "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": 682.5716552734375,
+ "y": 737.59716796875,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "441fc399.08ca9c",
+ "type": "comment",
+ "name": "new for TransportSlicing",
+ "info": "",
+ "comments": "",
+ "x": 714,
+ "y": 412,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "9fe7f5eb.e26c6",
+ "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": 734,
+ "y": 508,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "926c12ae.af2a48",
+ "5deb4cbf.60b5f4",
+ "35c77549.8e65c2"
+ ]
+ ]
+ },
+ {
+ "id": "926c12ae.af2a48",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 953,
+ "y": 446,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "c296586e.046f08"
+ ]
+ ]
+ },
+ {
+ "id": "5deb4cbf.60b5f4",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 962.490966796875,
+ "y": 488.57403564453125,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "bb46ff52.717af8"
+ ]
+ ]
+ },
+ {
+ "id": "35c77549.8e65c2",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 951,
+ "y": 535,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "236d61d5.47d9a6"
+ ]
+ ]
+ },
+ {
+ "id": "bb46ff52.717af8",
+ "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": 1116.0623779296875,
+ "y": 491.8597717285156,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "236d61d5.47d9a6",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 1120,
+ "y": 536,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "c296586e.046f08",
+ "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": 1150,
+ "y": 442,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "b77b70ed.c591c"
+ ]
+ ]
+ },
+ {
+ "id": "b77b70ed.c591c",
+ "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": 1373.33349609375,
+ "y": 441.99993896484375,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "2fc295b4.0602da"
+ ]
+ ]
+ },
+ {
+ "id": "2fc295b4.0602da",
+ "type": "outcome",
+ "name": "connectivity",
+ "xml": "<outcome value='connectivity'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1574.0001335144043,
+ "y": 443.00002098083496,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "483259b4.af3e1"
+ ]
+ ]
+ },
+ {
+ "id": "cba9b813.e1b22",
+ "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-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": 3835,
+ "y": 162,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "c84632a9.494938",
+ "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.ts-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=\"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`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 3916,
+ "y": 477,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "f012f442.27b7b8",
+ "961e7c8c.e8988"
+ ]
+ ]
+ },
+ {
+ "id": "f012f442.27b7b8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4225.5,
+ "y": 446,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "85de6f60.586588"
+ ]
+ ]
+ },
+ {
+ "id": "961e7c8c.e8988",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4230.5,
+ "y": 511,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "b3e28f35.f331c"
+ ]
+ ]
+ },
+ {
+ "id": "85de6f60.586588",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Create vpn rest api\" />\n",
+ "comments": "",
+ "x": 4401.5,
+ "y": 446,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "b3e28f35.f331c",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 4397,
+ "y": 511,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "9e9578a4.5a4df",
+ "type": "set",
+ "name": "set sotn_value",
+ "xml": "<set>\n<parameter name='eth-service-name' value='`$tmp.aai.connectivityA.connectivity-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",
+ "comments": "",
+ "x": 3782.5,
+ "y": 665,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "8d5f5723.afac28",
+ "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=\"post\"/>\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": 3936.5,
+ "y": 713,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "7efa3090.e1e078",
+ "602bb58a.eb8054"
+ ]
+ ]
+ },
+ {
+ "id": "7efa3090.e1e078",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4282,
+ "y": 694,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "d892eebe.cdbb5"
+ ]
+ ]
+ },
+ {
+ "id": "602bb58a.eb8054",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4286,
+ "y": 734,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "34660646.412fea"
+ ]
+ ]
+ },
+ {
+ "id": "d892eebe.cdbb5",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Create vpn rest api\" />\n",
+ "comments": "",
+ "x": 4440,
+ "y": 694,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "34660646.412fea",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 4443.5,
+ "y": 734,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "63e48280.b2cb84",
+ "ffe3929d.a2fda"
+ ]
+ ]
+ },
+ {
+ "id": "bae980db.b9d408",
+ "type": "comment",
+ "name": "TODO: FIXME:",
+ "info": "put proper values based on connectivity resource retrieved from AAI",
+ "comments": "",
+ "x": 3780,
+ "y": 621,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "63e48280.b2cb84",
+ "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-id`' />\n\n<parameter name='operational-status' value='Activated' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4774,
+ "y": 699,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "2bc3079a.d7dde",
+ "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": 4638,
+ "y": 658,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "ffe3929d.a2fda",
+ "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": 4701,
+ "y": 745,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "f01334b4.1d8928",
+ "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": 3773,
+ "y": 210,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "dbf99a2b.67c71",
+ "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": 3799,
+ "y": 327,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "27a62f4.f17ab5",
+ "1aa65c21.28f974",
+ "a732e62d.9d3f9"
+ ]
+ ]
+ },
+ {
+ "id": "27a62f4.f17ab5",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3994.5001220703125,
+ "y": 279,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "b04b9242.14b66"
+ ]
+ ]
+ },
+ {
+ "id": "1aa65c21.28f974",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3986.5001220703125,
+ "y": 334,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "5b188d77.8ffc8c"
+ ]
+ ]
+ },
+ {
+ "id": "b04b9242.14b66",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4138.8824462890625,
+ "y": 278.6556701660156,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "14763204.df94c6"
+ ]
+ ]
+ },
+ {
+ "id": "a517ec9b.cf8fc8",
+ "type": "outcome",
+ "name": "esr-thirdparty-sdnc",
+ "xml": "<outcome value='esr-thirdparty-sdnc'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4721,
+ "y": 281,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "37ce34d7.e5314c"
+ ]
+ ]
+ },
+ {
+ "id": "14763204.df94c6",
+ "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": 4323,
+ "y": 277,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "bbbe4e04.e26da"
+ ]
+ ]
+ },
+ {
+ "id": "bbbe4e04.e26da",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4518,
+ "y": 277,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "a517ec9b.cf8fc8"
+ ]
+ ]
+ },
+ {
+ "id": "a732e62d.9d3f9",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3991.5001220703125,
+ "y": 391,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "ebcd1e8f.a8cb18"
+ ]
+ ]
+ },
+ {
+ "id": "ebcd1e8f.a8cb18",
+ "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": 4143.5001220703125,
+ "y": 392,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "5b188d77.8ffc8c",
+ "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": 4154.5001220703125,
+ "y": 335,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "d99536cb.cbc39",
+ "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": 5106,
+ "y": 294,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "5f8e12fe.363034",
+ "3e541a04.379ece",
+ "5e7e63a7.7acdcc"
+ ]
+ ]
+ },
+ {
+ "id": "37ce34d7.e5314c",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4900,
+ "y": 281,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "17ccdbf.84352a4",
+ "d99536cb.cbc39"
+ ]
+ ]
+ },
+ {
+ "id": "17ccdbf.84352a4",
+ "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": 5136,
+ "y": 242,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "5f8e12fe.363034",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5316,
+ "y": 285,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "a674bdd4.cbe5f"
+ ]
+ ]
+ },
+ {
+ "id": "3e541a04.379ece",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5308,
+ "y": 340,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "b14ed6a2.e3874"
+ ]
+ ]
+ },
+ {
+ "id": "5e7e63a7.7acdcc",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5313,
+ "y": 397,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "1ce96021.1d8b"
+ ]
+ ]
+ },
+ {
+ "id": "1ce96021.1d8b",
+ "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": 5465,
+ "y": 398,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "b14ed6a2.e3874",
+ "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": 5476,
+ "y": 343,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "a674bdd4.cbe5f",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 5460.38232421875,
+ "y": 282.6556701660156,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "67e87cc0.72543c"
+ ]
+ ]
+ },
+ {
+ "id": "67e87cc0.72543c",
+ "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": 5675,
+ "y": 279,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "9bca10ea.41532",
+ "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": 700,
+ "y": 456,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "9469a92e.1082c",
+ "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-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-src-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": 3815,
+ "y": 966,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "8e72aaca.f223b8",
+ "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.ts-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=\"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`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 3878,
+ "y": 1295,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "4967c60e.7eec88",
+ "d728c3b6.b72d4"
+ ]
+ ]
+ },
+ {
+ "id": "4967c60e.7eec88",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4173.5,
+ "y": 1262,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "957f3c62.36bab"
+ ]
+ ]
+ },
+ {
+ "id": "d728c3b6.b72d4",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4178.5,
+ "y": 1327,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "9b37bb11.43c248"
+ ]
+ ]
+ },
+ {
+ "id": "957f3c62.36bab",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Create vpn rest api\" />\n",
+ "comments": "",
+ "x": 4341.5,
+ "y": 1262,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "9b37bb11.43c248",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 4352,
+ "y": 1327,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "24fc86b.f179cfa",
+ "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": 3754,
+ "y": 1023,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "a4e80e5.b17c0f",
+ "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": 3774,
+ "y": 1120,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "d87e44a4.312df",
+ "c39adf70.78fbd",
+ "ae2b50d9.d9592"
+ ]
+ ]
+ },
+ {
+ "id": "d87e44a4.312df",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3976.5001220703125,
+ "y": 1073,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "1f01bb4d.6d662d"
+ ]
+ ]
+ },
+ {
+ "id": "c39adf70.78fbd",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3968.5001220703125,
+ "y": 1128,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "7e32fa48.cb95e4"
+ ]
+ ]
+ },
+ {
+ "id": "1f01bb4d.6d662d",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4120.8824462890625,
+ "y": 1070.6556701660156,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "71c66ab3.44665c"
+ ]
+ ]
+ },
+ {
+ "id": "71c66ab3.44665c",
+ "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": 4305,
+ "y": 1085,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "7900c812.a2abd"
+ ]
+ ]
+ },
+ {
+ "id": "ae2b50d9.d9592",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3973.5001220703125,
+ "y": 1185,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "c7f28bc4.db74a"
+ ]
+ ]
+ },
+ {
+ "id": "c7f28bc4.db74a",
+ "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": 4125.5001220703125,
+ "y": 1186,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "7e32fa48.cb95e4",
+ "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": 4136.5001220703125,
+ "y": 1131,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "d3528946.ee7a88",
+ "type": "outcome",
+ "name": "esr-thirdparty-sdnc",
+ "xml": "<outcome value='esr-thirdparty-sdnc'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4703,
+ "y": 1089,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "746ece73.5c4d48"
+ ]
+ ]
+ },
+ {
+ "id": "7900c812.a2abd",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.destination-pnf.relationship-list.relationship[$dpvidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4500,
+ "y": 1085,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "d3528946.ee7a88"
+ ]
+ ]
+ },
+ {
+ "id": "f8459d33.082c4",
+ "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": 5088,
+ "y": 1088,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "652db70b.f69af",
+ "cd87b694.170a2",
+ "e10452ec.f851f"
+ ]
+ ]
+ },
+ {
+ "id": "746ece73.5c4d48",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4880,
+ "y": 1081,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "13e8c9be.60d2ee",
+ "f8459d33.082c4"
+ ]
+ ]
+ },
+ {
+ "id": "13e8c9be.60d2ee",
+ "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": 5118,
+ "y": 1036,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "64b1d1df.af4928",
+ "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": 5447,
+ "y": 1192,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "afae5d5f.cf8cd8",
+ "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": 5458,
+ "y": 1137,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "fe8767e6.75d1",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 5442.38232421875,
+ "y": 1076.6556701660156,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "9e679808.748fd"
+ ]
+ ]
+ },
+ {
+ "id": "9e679808.748fd",
+ "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": 5657,
+ "y": 1073,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "652db70b.f69af",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5298,
+ "y": 1079,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "fe8767e6.75d1"
+ ]
+ ]
+ },
+ {
+ "id": "cd87b694.170a2",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5290,
+ "y": 1134,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "afae5d5f.cf8cd8"
+ ]
+ ]
+ },
+ {
+ "id": "e10452ec.f851f",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5295,
+ "y": 1191,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "64b1d1df.af4928"
+ ]
+ ]
+ },
+ {
+ "id": "483259b4.af3e1",
+ "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": 1812,
+ "y": 445,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "deb24009.8fcaa8",
+ "f99db731.cec29",
+ "20c66e63.50491a"
+ ]
+ ]
+ },
+ {
+ "id": "deb24009.8fcaa8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2020,
+ "y": 409,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "4730a3bd.f32424"
+ ]
+ ]
+ },
+ {
+ "id": "f99db731.cec29",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2020.490966796875,
+ "y": 454.57403564453125,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "5f621d7d.168d04"
+ ]
+ ]
+ },
+ {
+ "id": "20c66e63.50491a",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2018,
+ "y": 498,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "3d808fc9.409a"
+ ]
+ ]
+ },
+ {
+ "id": "5f621d7d.168d04",
+ "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": 2183.0623779296875,
+ "y": 454.8597717285156,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "3d808fc9.409a",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 2187,
+ "y": 499,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "98bf7163.623b18",
+ "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": 2493,
+ "y": 498,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "4a10f363.97f04c",
+ "75240e64.8364b",
+ "7a8b2677.1e3f6"
+ ]
+ ]
+ },
+ {
+ "id": "262c25a6.ad70a2",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2877,
+ "y": 498,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "471d55bd.ad492c"
+ ]
+ ]
+ },
+ {
+ "id": "4a10f363.97f04c",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2704,
+ "y": 500,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "262c25a6.ad70a2"
+ ]
+ ]
+ },
+ {
+ "id": "75240e64.8364b",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2704.490966796875,
+ "y": 545.5740356445312,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "1484cf74.c39e71"
+ ]
+ ]
+ },
+ {
+ "id": "7a8b2677.1e3f6",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2702,
+ "y": 589,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "d377f001.ff927"
+ ]
+ ]
+ },
+ {
+ "id": "d377f001.ff927",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 2869,
+ "y": 588,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "1484cf74.c39e71",
+ "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": 2867.0623779296875,
+ "y": 545.8597717285156,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "4730a3bd.f32424",
+ "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": 2221,
+ "y": 404,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "ed79cbad.42008"
+ ]
+ ]
+ },
+ {
+ "id": "ed79cbad.42008",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.connectivity.relationship-list.relationship[$cridx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2426,
+ "y": 404,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "87636f23.10a238"
+ ]
+ ]
+ },
+ {
+ "id": "87636f23.10a238",
+ "type": "outcome",
+ "name": "vpn-binding",
+ "xml": "<outcome value='vpn-binding'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2592,
+ "y": 404,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "f49319bb.999b88"
+ ]
+ ]
+ },
+ {
+ "id": "f49319bb.999b88",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2755,
+ "y": 404,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "98bf7163.623b18"
+ ]
+ ]
+ },
+ {
+ "id": "471d55bd.ad492c",
+ "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": 3131,
+ "y": 497,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "a6851b6e.131e78",
+ "f997812a.bb5bf"
+ ]
+ ]
+ },
+ {
+ "id": "a6851b6e.131e78",
+ "type": "outcome",
+ "name": "Null",
+ "xml": "<outcome value=''>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3384,
+ "y": 531,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "9ec23d9e.f5fd3"
+ ]
+ ]
+ },
+ {
+ "id": "f997812a.bb5bf",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3384,
+ "y": 475,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "a48cbe42.98bbb"
+ ]
+ ]
+ },
+ {
+ "id": "9ec23d9e.f5fd3",
+ "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": 3123,
+ "y": 1317,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "12733247.02817e",
+ "457dfc0a.58968c"
+ ]
+ ]
+ },
+ {
+ "id": "12733247.02817e",
+ "type": "outcome",
+ "name": "Null",
+ "xml": "<outcome value=''>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3376,
+ "y": 1351,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "13d35870.d79cf8"
+ ]
+ ]
+ },
+ {
+ "id": "457dfc0a.58968c",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3376,
+ "y": 1295,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "b272db0a.663f1"
+ ]
+ ]
+ },
+ {
+ "id": "13d35870.d79cf8",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 3527,
+ "y": 1351,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "d316857d.f41628",
+ "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": 3830,
+ "y": 102,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "3accaf74.7f8a68",
+ "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": 3811,
+ "y": 908,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "a48cbe42.98bbb",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 3552,
+ "y": 477,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "d316857d.f41628",
+ "cba9b813.e1b22",
+ "f01334b4.1d8928",
+ "dbf99a2b.67c71",
+ "9e9578a4.5a4df",
+ "8d5f5723.afac28",
+ "c84632a9.494938"
+ ]
+ ]
+ },
+ {
+ "id": "b272db0a.663f1",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3527,
+ "y": 1294,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "3accaf74.7f8a68",
+ "9469a92e.1082c",
+ "24fc86b.f179cfa",
+ "a4e80e5.b17c0f",
+ "8e72aaca.f223b8",
+ "6e17b735.11933",
+ "35d8443b.290754"
+ ]
+ ]
+ },
+ {
+ "id": "6e17b735.11933",
+ "type": "set",
+ "name": "set sotn_value",
+ "xml": "<set>\n<parameter name='eth-service-name' value='`$tmp.aai.connectivityB.connectivity-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",
+ "comments": "",
+ "x": 3756,
+ "y": 1437,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "35d8443b.290754",
+ "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": 3910,
+ "y": 1485,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "3ee71f70.cef2d8",
+ "ec28887e.13052"
+ ]
+ ]
+ },
+ {
+ "id": "3ee71f70.cef2d8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4255.5,
+ "y": 1466,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "146e8cbe.f1427b"
+ ]
+ ]
+ },
+ {
+ "id": "ec28887e.13052",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4259.5,
+ "y": 1506,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "6938dd8d.725ce4"
+ ]
+ ]
+ },
+ {
+ "id": "146e8cbe.f1427b",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Create vpn rest api\" />\n",
+ "comments": "",
+ "x": 4413.5,
+ "y": 1466,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "6938dd8d.725ce4",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 4417,
+ "y": 1506,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ [
+ "3103adf.03ebdd2",
+ "abd5a958.8851"
+ ]
+ ]
+ },
+ {
+ "id": "b5e2d859.f89e48",
+ "type": "comment",
+ "name": "TODO: FIXME:",
+ "info": "put proper values based on connectivity resource retrieved from AAI",
+ "comments": "",
+ "x": 3753.5,
+ "y": 1393,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "3103adf.03ebdd2",
+ "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-id`' />\n\n<parameter name='operational-status' value='Activated' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4757,
+ "y": 1505,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "1ee5068c.50a041",
+ "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": 4615,
+ "y": 1463,
+ "z": "bc9d969b.328b8",
+ "wires": []
+ },
+ {
+ "id": "abd5a958.8851",
+ "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": 4686,
+ "y": 1554,
+ "z": "bc9d969b.328b8",
+ "wires": [
+ []
+ ]
+ }
+]
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/json/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-allocate.json b/platform-logic/generic-resource-api/src/main/json/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-allocate.json new file mode 100644 index 00000000..41f969b0 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-allocate.json @@ -0,0 +1,3497 @@ +[
+ {
+ "id": "a3297c66.2e7f5",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 142,
+ "y": 86,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "48923819.f8ff98"
+ ]
+ ]
+ },
+ {
+ "id": "48923819.f8ff98",
+ "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": 426.2856903076172,
+ "y": 147.23810863494873,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "e1ba1fcc.8dbf6"
+ ]
+ ]
+ },
+ {
+ "id": "e1ba1fcc.8dbf6",
+ "type": "method",
+ "name": "method tsli-vnf-topology-operation-trans-slice-allocate",
+ "xml": "<method rpc='tsli-vnf-topology-operation-trans-slice-allocate' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 432.42860412597656,
+ "y": 232.00003051757812,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "8bc33ebc.b214a8"
+ ]
+ ]
+ },
+ {
+ "id": "8bc33ebc.b214a8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 802.238037109375,
+ "y": 256.66668701171875,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "e456a6e6.bd0f",
+ "de4cd097.718578",
+ "7ac4d896.f266b8"
+ ]
+ ]
+ },
+ {
+ "id": "e456a6e6.bd0f",
+ "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": 1103.571533203125,
+ "y": 527.5969848632812,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "de4cd097.718578",
+ "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": 1125,
+ "y": 230,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "2bb44cf2.b576bc",
+ "23a4fd03.4dc0a2",
+ "7fe07366.1d3c84"
+ ]
+ ]
+ },
+ {
+ "id": "2bb44cf2.b576bc",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1350,
+ "y": 88,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "de3469e6.1a5318"
+ ]
+ ]
+ },
+ {
+ "id": "23a4fd03.4dc0a2",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1359.490966796875,
+ "y": 130.57403564453125,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "abc9c45c.0486d"
+ ]
+ ]
+ },
+ {
+ "id": "7fe07366.1d3c84",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1348,
+ "y": 177,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "bf6c9630.da1718"
+ ]
+ ]
+ },
+ {
+ "id": "de3469e6.1a5318",
+ "type": "switchNode",
+ "name": "switch allotted-resources_length != 0",
+ "xml": "<switch test='`$tmp.aai.service-instance.allotted-resources_length != 0`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1589,
+ "y": 85,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "3fe961c5.f65bb6",
+ "9b0ccc32.5daa98"
+ ]
+ ]
+ },
+ {
+ "id": "abc9c45c.0486d",
+ "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": 1513.0623779296875,
+ "y": 133.85977172851562,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "bf6c9630.da1718",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 1517,
+ "y": 178,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "e72a9478.9558f",
+ "type": "set",
+ "name": "set the 1st allotted-resource-id",
+ "xml": "<set>\n<parameter name='allotted-resource-id' value=\"`$tmp.aai.service-instance.allotted-resources.allotted-resource[0].id`\" />\n\n\n",
+ "comments": "",
+ "x": 1988,
+ "y": 152,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "3fe961c5.f65bb6",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1802,
+ "y": 109,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "7db53ef.cfaf2c"
+ ]
+ ]
+ },
+ {
+ "id": "9b0ccc32.5daa98",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1804,
+ "y": 49,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "3b9d4f7a.e5b418",
+ "type": "comment",
+ "name": "new for TransportSlicing",
+ "info": "",
+ "comments": "",
+ "x": 1104,
+ "y": 118,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "7db53ef.cfaf2c",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1787,
+ "y": 197,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "e72a9478.9558f",
+ "f1da2bc3.8935b"
+ ]
+ ]
+ },
+ {
+ "id": "fd1e5e1b.83e83",
+ "type": "set",
+ "name": "set network-route-A",
+ "xml": "<set>\n<parameter name='network-route-A' value=\"`$tmp.aai.logical-link.link-name`\" />\n\n\n",
+ "comments": "",
+ "x": 2349,
+ "y": 795,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "ff342d97.b64c78",
+ "type": "set",
+ "name": "set network-route-B",
+ "xml": "<set>\n<parameter name='network-route-B' value=\"`$tmp.aai.logical-link.link-name2`\" />\n\n\n",
+ "comments": "",
+ "x": 2351,
+ "y": 846,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "f1da2bc3.8935b",
+ "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": 1991,
+ "y": 227,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "24443c7d.51e17c",
+ "5466a6b1.99c71",
+ "6dbbe1dd.c8d2"
+ ]
+ ]
+ },
+ {
+ "id": "24443c7d.51e17c",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2207,
+ "y": 294,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "381969a5.e5019e"
+ ]
+ ]
+ },
+ {
+ "id": "5466a6b1.99c71",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2207.490966796875,
+ "y": 193.573974609375,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "5f41762b.9fae3"
+ ]
+ ]
+ },
+ {
+ "id": "6dbbe1dd.c8d2",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2203,
+ "y": 243,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "35df5bd.60d91a4"
+ ]
+ ]
+ },
+ {
+ "id": "5f41762b.9fae3",
+ "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": 2385.0625,
+ "y": 193.8597412109375,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "35df5bd.60d91a4",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 2385,
+ "y": 243,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "8c284458.c08ae8",
+ "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": 1726,
+ "y": 716,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "2b62ab10.ff50ec",
+ "a72426b1.68469",
+ "f1a9c962.2a68a8"
+ ]
+ ]
+ },
+ {
+ "id": "a72426b1.68469",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2017.490966796875,
+ "y": 694.573974609375,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "b15724ee.fb934"
+ ]
+ ]
+ },
+ {
+ "id": "f1a9c962.2a68a8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2006,
+ "y": 739,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "71027f5f.6dfd2"
+ ]
+ ]
+ },
+ {
+ "id": "b15724ee.fb934",
+ "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": 2166.0625,
+ "y": 694.8597412109375,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "71027f5f.6dfd2",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 2165,
+ "y": 739,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "2b62ab10.ff50ec",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2013,
+ "y": 818,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "68ca5242.42eadc"
+ ]
+ ]
+ },
+ {
+ "id": "68ca5242.42eadc",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2152,
+ "y": 818,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "fd1e5e1b.83e83",
+ "ff342d97.b64c78",
+ "c6e4c4bb.cde228",
+ "beeca149.096358",
+ "b3a21500.4dc258",
+ "4a385582.c0497c",
+ "8ecd4f21.958f3",
+ "87e71c84.c17b98",
+ "b0430b3.4eee0f8",
+ "9e9e0741.eed478",
+ "41475eff.deafd",
+ "171af565.db9233",
+ "a0a45fd6.c31fe",
+ "fdbb72c5.61c228",
+ "62bd6081.059d7",
+ "3f4df906.b67d7e",
+ "fad5035b.7ee3a8",
+ "d037b0c3.f093c"
+ ]
+ ]
+ },
+ {
+ "id": "c6e4c4bb.cde228",
+ "type": "save",
+ "name": "get network-route-A 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-A'\n\tlocal-only=\"false\"\n\tforce=\"true\" pfx=\"tmp.aai.network-route-A\">",
+ "comments": "",
+ "outputs": 1,
+ "x": 2381,
+ "y": 899,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "99527920.d104f",
+ "471613.ac9f61ec",
+ "d7106a2a.e2e008"
+ ]
+ ]
+ },
+ {
+ "id": "beeca149.096358",
+ "type": "save",
+ "name": "get network-route-B 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-B'\n\tlocal-only=\"false\"\n\tforce=\"true\" pfx=\"tmp.aai.network-route-B\">",
+ "comments": "",
+ "outputs": 1,
+ "x": 2360,
+ "y": 1500.9998779296875,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "f5b57d2.711fb8",
+ "ee69c7ed.d244a",
+ "b86b9154.d8271"
+ ]
+ ]
+ },
+ {
+ "id": "99527920.d104f",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2582,
+ "y": 783,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "dee03a78.25dd08"
+ ]
+ ]
+ },
+ {
+ "id": "471613.ac9f61ec",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2577.509033203125,
+ "y": 832.426025390625,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "afb5fd1c.14f968"
+ ]
+ ]
+ },
+ {
+ "id": "d7106a2a.e2e008",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2581.509033203125,
+ "y": 883.426025390625,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "b1e48bbc.9418f8"
+ ]
+ ]
+ },
+ {
+ "id": "dee03a78.25dd08",
+ "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": 2730.571533203125,
+ "y": 782.2857666015625,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "afb5fd1c.14f968",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 2720.509033203125,
+ "y": 832.426025390625,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "f5b57d2.711fb8",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2583,
+ "y": 1470.9998779296875,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "e4bc5398.587c9"
+ ]
+ ]
+ },
+ {
+ "id": "ee69c7ed.d244a",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2578.509033203125,
+ "y": 1520.4259033203125,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "7a22de95.f8d34"
+ ]
+ ]
+ },
+ {
+ "id": "b86b9154.d8271",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2582.509033203125,
+ "y": 1571.4259033203125,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "706786f4.1c86"
+ ]
+ ]
+ },
+ {
+ "id": "e4bc5398.587c9",
+ "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": 2731.571533203125,
+ "y": 1470.28564453125,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "7a22de95.f8d34",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 2721.509033203125,
+ "y": 1520.4259033203125,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "6a5608a5.7646c8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3395.66650390625,
+ "y": 927,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "e59ae0d9.0b3bb8",
+ "b65b8a91.4e15",
+ "600bf3e5.b14284",
+ "af7a5358.49a49",
+ "a8e7dd16.944608"
+ ]
+ ]
+ },
+ {
+ "id": "b8369203.6c1e7",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3223,
+ "y": 928,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "6a5608a5.7646c8"
+ ]
+ ]
+ },
+ {
+ "id": "9feeef15.8800c",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3232.490966796875,
+ "y": 970.5740356445312,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "cbf27e14.644ef8"
+ ]
+ ]
+ },
+ {
+ "id": "e8e1bd1d.029dd",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3221,
+ "y": 1017,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "7478805e.d0dee8"
+ ]
+ ]
+ },
+ {
+ "id": "cbf27e14.644ef8",
+ "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": 3386.0623779296875,
+ "y": 973.8597717285156,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "7478805e.d0dee8",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 3390,
+ "y": 1018,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "b1e48bbc.9418f8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2743,
+ "y": 885,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "b8e4ab1b.5f9428",
+ "7b409cff.da197c"
+ ]
+ ]
+ },
+ {
+ "id": "706786f4.1c86",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2733,
+ "y": 1572.9998779296875,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "6545b277.ec5df4",
+ "e04c02f4.2f63f8"
+ ]
+ ]
+ },
+ {
+ "id": "a1cc2eec.aa7708",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3363.66650390625,
+ "y": 1763,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "69afc187.c0c28",
+ "9c8c62ca.8659",
+ "72280e7f.000388",
+ "5d487f8.16a5d",
+ "34f70001.b13958"
+ ]
+ ]
+ },
+ {
+ "id": "a9223749.8519e8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3191,
+ "y": 1764,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "a1cc2eec.aa7708"
+ ]
+ ]
+ },
+ {
+ "id": "8aac19ac.984638",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3200.490966796875,
+ "y": 1806.5740356445312,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "e01c6b8b.6173d8"
+ ]
+ ]
+ },
+ {
+ "id": "15568030.09492",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3189,
+ "y": 1853,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "f17ea401.42a54"
+ ]
+ ]
+ },
+ {
+ "id": "e01c6b8b.6173d8",
+ "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": 3354.0623779296875,
+ "y": 1809.8597717285156,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "f17ea401.42a54",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 3358,
+ "y": 1854,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "e59ae0d9.0b3bb8",
+ "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": 3660,
+ "y": 911,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "b90f8b2c.3443f8",
+ "f2af84b7.f19e7"
+ ]
+ ]
+ },
+ {
+ "id": "f2af84b7.f19e7",
+ "type": "failure",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3883,
+ "y": 866,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "af749f90.aea73"
+ ]
+ ]
+ },
+ {
+ "id": "b90f8b2c.3443f8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3885,
+ "y": 930,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "37b87470.480804"
+ ]
+ ]
+ },
+ {
+ "id": "58adc121.da62b8",
+ "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": 4218,
+ "y": 824,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "37b87470.480804",
+ "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": 4047,
+ "y": 926,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "af749f90.aea73",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4048,
+ "y": 863,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "a0d3646d.84d22",
+ "58adc121.da62b8"
+ ]
+ ]
+ },
+ {
+ "id": "a0d3646d.84d22",
+ "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": 4219,
+ "y": 929,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "b948285d.fc6638",
+ "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": 4220,
+ "y": 878,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "600bf3e5.b14284",
+ "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='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='' />\n\n<parameter name='bandwidth-profile-name' value='`$prop.sotn.etht-svc-name`' />\n<parameter name='vpn-type' value='`$prop.sotn.vpnType`' />\n<parameter name='CIR' value='`$prop.sotn.cir`' />\n<parameter name='EIR' value='`$prop.sotn.eir`' />\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": 3662,
+ "y": 1070,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "b65b8a91.4e15",
+ "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": 3707,
+ "y": 980,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "584061d2.7f676",
+ "type": "comment",
+ "name": "TODO: FIXME",
+ "info": "using the output of regex string arrays,\nconcatinate index 0 to index[?] all together\nin order to assemble the correct values for provider-id, \ntopology-id, node-id, etc.",
+ "comments": "",
+ "x": 3596,
+ "y": 1021,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "69afc187.c0c28",
+ "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": 3650,
+ "y": 1767.0001220703125,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "73786f45.91fbd",
+ "a8286fc.413fb9"
+ ]
+ ]
+ },
+ {
+ "id": "a8286fc.413fb9",
+ "type": "failure",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3873,
+ "y": 1722.0001220703125,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "6edaf2ce.ba97ac"
+ ]
+ ]
+ },
+ {
+ "id": "73786f45.91fbd",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3875,
+ "y": 1786.0001220703125,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "fcba834.c469f8"
+ ]
+ ]
+ },
+ {
+ "id": "e5ecf778.a4711",
+ "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": 4208,
+ "y": 1680.0001220703125,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "fcba834.c469f8",
+ "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": 4034,
+ "y": 1805.0001220703125,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "6edaf2ce.ba97ac",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4038,
+ "y": 1719.0001220703125,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "e5ecf778.a4711",
+ "865f8e50.82a5c"
+ ]
+ ]
+ },
+ {
+ "id": "865f8e50.82a5c",
+ "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": 4209,
+ "y": 1785.0001220703125,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "9e10e06d.c116e8",
+ "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": 4204,
+ "y": 1734.0001220703125,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "72280e7f.000388",
+ "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='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='' />\n\n\n<parameter name='bandwidth-profile-name' value='`$prop.sotn.etht-svc-name`' />\n<parameter name='vpn-type' value='`$prop.sotn.vpnType`' />\n<parameter name='CIR' value='`$prop.sotn.cir`' />\n<parameter name='EIR' value='`$prop.sotn.eir`' />\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": 3652,
+ "y": 1926.0001220703125,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "9c8c62ca.8659",
+ "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": 3697,
+ "y": 1836.0001220703125,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "eb2e4b08.8488e",
+ "type": "comment",
+ "name": "TODO: FIXME",
+ "info": "using the output of regex string arrays,\nconcatinate index 0 to index[?] all together\nin order to assemble the correct values for provider-id, \ntopology-id, node-id, etc.",
+ "comments": "",
+ "x": 3586,
+ "y": 1874.0001220703125,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "b3a21500.4dc258",
+ "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": 2561,
+ "y": 2001,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "4a385582.c0497c",
+ "type": "set",
+ "name": "set attachment_param",
+ "xml": "<set>\n<parameter name='prop.connection-attachment.access-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />\n<parameter name='prop.connection-attachment.access-client-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -7]`' />\n<parameter name='prop.connection-attachment.access-topology-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -5]`' />\n<parameter name='prop.connection-attachment.access-node-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />\n<parameter name='prop.connection-attachment.access-ltp-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -1]`' />\n\n<parameter name='prop.remote.connection-attachment.access-provider-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -9]`' />\n<parameter name='prop.remote.connection-attachment.access-client-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -7]`' />\n<parameter name='prop.remote.connection-attachment.access-topology-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -5]`' />\n<parameter name='prop.remote.connection-attachment.access-node-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -3]`' />\n<parameter name='prop.remote.connection-attachment.access-ltp-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -1]`' />\n\n<!--<parameter name='prop.remote.connection-attachment.access-provider-id' value='`$oof.vpn.access-provider-id`' />-->\n<!--<parameter name='prop.remote.connection-attachment.access-client-id' value='`$oof.vpn.access-client-id`' />-->\n<!--<parameter name='prop.remote.connection-attachment.access-topology-id' value='`$oof.vpn.access-topology-id`' />-->\n<!--<parameter name='prop.remote.connection-attachment.access-node-id' value='`$oof.vpn.access-node-id`' />-->\n<!--<parameter name='prop.remote.connection-attachment.access-ltp-id' value='`$oof.vpn.src-access-ltp-id`' />-->\n",
+ "comments": "",
+ "x": 2355,
+ "y": 1941,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "1846dda4.ce84b2",
+ "type": "comment",
+ "name": "TODO: FIXME",
+ "info": "put proper values for src topology-id, node-id, ltp-id, etc (in domain A)\nand dst topology-id, node-id, ltp-id, etc (in domain B)",
+ "comments": "",
+ "x": 2329,
+ "y": 1894,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "8ecd4f21.958f3",
+ "type": "save",
+ "name": "save vpn-binding A resource (aka. OTN domainA) in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $prop.vpn-binding-domainA-uuid' >\n<parameter name='vpn-id' value='`$prop.vpn-binding-domainA-uuid`' />\n<parameter name='vpn-name' value='`$prop.vpn-binding-domainA-uuid`' />\n<parameter name='access-provider-id' value='`$domain-A.provider-id`' />\n<!--<parameter name='access-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />-->\n<parameter name='access-client-id' value='`$domain-A.client-id`' />\n<!--<parameter name='access-client-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -7]`' />-->\n<parameter name='access-topology-id' value='`$domain-A.te-topo-id`' />\n<!--<parameter name='access-topology-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -5]`' />-->\n<parameter name='src-access-node-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />\n<!--<parameter name='src-access-ltp-id' value='`$source.tunnel-tp-id`' />-->\n<parameter name='src-access-ltp-id' value='' />\n<parameter name='dst-access-node-id' value='`$domain-A.node-id`' />\n<parameter name='dst-access-ltp-id' value='`$domain-A.tunnel-tp-id`' />\n<parameter name='vpn-type' value='`$prop.global.sotn.vpnType`' />\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",
+ "comments": "",
+ "outputs": 1,
+ "x": 2437,
+ "y": 2160,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "9a891a89.705e9"
+ ]
+ ]
+ },
+ {
+ "id": "87e71c84.c17b98",
+ "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-domainA-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": 2440.5,
+ "y": 2230,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "65814f19.31d048",
+ "type": "save",
+ "name": "save srcLTP relationship in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding:relationship-list' \n key='vpn-binding.vpn-id = $tmp.vpnName' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"p-interface\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/pnfs/pnf/' + $oof.vpn.access-node-id + '/p-interfaces/p-interface/' + $src-ltpId`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"p-interface.interface-name\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$src-ltpId`\" />\n\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3088.5,
+ "y": 2149,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "9a488056.fd463",
+ "type": "save",
+ "name": "save dstLTP relationship in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding:relationship-list' \n key='vpn-binding.vpn-id = $tmp.vpnName' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"p-interface\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/pnfs/pnf/' + $oof.vpn.access-node-id + '/p-interfaces/p-interface/' + $dst-ltpId`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"p-interface.interface-name\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$dst-ltpId`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 3090.5,
+ "y": 2188,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "af7a5358.49a49",
+ "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": 3790,
+ "y": 1118,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "5d487f8.16a5d",
+ "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": 3779,
+ "y": 1991.0001220703125,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "9a891a89.705e9",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2737,
+ "y": 2167,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "a2095f6a.84829"
+ ]
+ ]
+ },
+ {
+ "id": "a2095f6a.84829",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2877.500244140625,
+ "y": 2168.25390625,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "421e8d3c.2d000c",
+ "type": "comment",
+ "name": "TODO: FIXME: do we need this relationship?",
+ "info": "",
+ "comments": "",
+ "x": 3125,
+ "y": 2108,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "ec5e7e31.de7c9",
+ "type": "comment",
+ "name": "TODO: FIXME: put proper values",
+ "info": "",
+ "comments": "",
+ "x": 2404,
+ "y": 2120,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "b0430b3.4eee0f8",
+ "type": "save",
+ "name": "save vpn-binding B resource (aka. OTN domainB) in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $prop.vpn-binding-domainB-uuid' >\n<parameter name='vpn-id' value='`$prop.vpn-binding-domainB-uuid`' />\n<parameter name='vpn-name' value='`$prop.vpn-binding-domainB-uuid`' />\n<parameter name='access-provider-id' value='`$domain-B.provider-id`' />\n<!--<parameter name='access-provider-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -9]`' />-->\n<parameter name='access-client-id' value='`$domain-B.client-id`' />\n<!--<parameter name='access-client-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -7]`' />-->\n<parameter name='access-topology-id' value='`$domain-B.te-topo-id`' />\n<!--<parameter name='access-topology-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -5]`' />-->\n<parameter name='src-access-node-id' value='`$domain-B.node-id`' />\n<parameter name='src-access-ltp-id' value='`$domain-B.tunnel-tp-id`' />\n<parameter name='dst-access-node-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -3]`' />\n<!--<parameter name='dst-access-ltp-id' value='`$destination.tunnel-tp-id`' />-->\n<parameter name='dst-access-ltp-id' value='' />\n<parameter name='vpn-type' value='`$prop.global.sotn.vpnType`' />\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",
+ "comments": "",
+ "outputs": 1,
+ "x": 2440,
+ "y": 2448,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "ceffa653.90d39"
+ ]
+ ]
+ },
+ {
+ "id": "3a1d826b.1f953e",
+ "type": "comment",
+ "name": "TODO: FIXME: do we need this relationship?",
+ "info": "",
+ "comments": "",
+ "x": 3128,
+ "y": 2388,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "4a53aeab.a2778",
+ "type": "save",
+ "name": "save srcLTP relationship in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding:relationship-list' \n key='vpn-binding.vpn-id = $tmp.vpnName' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"p-interface\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/pnfs/pnf/' + $oof.vpn.access-node-id + '/p-interfaces/p-interface/' + $src-ltpId`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"p-interface.interface-name\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$src-ltpId`\" />\n\n\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3091.5,
+ "y": 2429,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "36a3debe.6aad72",
+ "type": "save",
+ "name": "save dstLTP relationship in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding:relationship-list' \n key='vpn-binding.vpn-id = $tmp.vpnName' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"p-interface\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/pnfs/pnf/' + $oof.vpn.access-node-id + '/p-interfaces/p-interface/' + $dst-ltpId`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"p-interface.interface-name\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$dst-ltpId`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 3093.5,
+ "y": 2468,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "a45d9658.764968",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2880.500244140625,
+ "y": 2448.25390625,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "ceffa653.90d39",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2740,
+ "y": 2447,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "a45d9658.764968"
+ ]
+ ]
+ },
+ {
+ "id": "7449a31b.49a87c",
+ "type": "comment",
+ "name": "TODO: FIXME: put proper values",
+ "info": "",
+ "comments": "",
+ "x": 2420,
+ "y": 2408,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "9e9e0741.eed478",
+ "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-domainB-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": 2438.5,
+ "y": 2488,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "a04f201b.1fb08",
+ "type": "comment",
+ "name": "TODO: FIXME:",
+ "info": "set attachment param and send request to NCE-T\nfor bandwidth matrix\nmay require a new template for JSON body",
+ "comments": "",
+ "x": 2312,
+ "y": 2571,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "a0a45fd6.c31fe",
+ "type": "set",
+ "name": "set attachment_param domain A",
+ "xml": "<set>\n<parameter name='request-id' value='`$prop.vpn-binding-domainA-uuid`' />\n<parameter name='otn-source-node' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />\n<parameter name='otn-dest-node' value='`$domain-A.node-id`' />\n<parameter name='bw-odu' value=\"`'0,' + $maximum-bandwidth /1000 *2 /3 `\" />\n<!--<parameter name='src-ttp-id' value='`$source.tunnel-tp-id`' />-->\n<parameter name='dst-ttp-id' value='`$domain-A.tunnel-tp-id`' />\n<parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n\n",
+ "comments": "",
+ "x": 2377,
+ "y": 2616,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "32eb8024.15dcc8",
+ "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": 4834,
+ "y": 638,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "73d2c0a6.ca0098",
+ "2f388561.aeb472",
+ "c9248b9c.994ac"
+ ]
+ ]
+ },
+ {
+ "id": "381969a5.e5019e",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2387,
+ "y": 294,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "2fa39853.fd6f7"
+ ]
+ ]
+ },
+ {
+ "id": "93b21596.ec10e8",
+ "type": "outcome",
+ "name": "logical-link",
+ "xml": "<outcome value='logical-link'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1317.0001220703125,
+ "y": 711.0001220703125,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "993cc770.3c90b"
+ ]
+ ]
+ },
+ {
+ "id": "8fdb5adc.4040d",
+ "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": 2055,
+ "y": 417,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "332b207c.0fec28",
+ "310fb819.3e915"
+ ]
+ ]
+ },
+ {
+ "id": "310fb819.3e915",
+ "type": "outcomeFalse",
+ "name": "false",
+ "xml": "<outcome value='false'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2365,
+ "y": 424,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "332b207c.0fec28",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2364,
+ "y": 478,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "b6e0228b.bc6398"
+ ]
+ ]
+ },
+ {
+ "id": "d9c8107.cbe1d7",
+ "type": "set",
+ "name": "set the 1st 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": 1737,
+ "y": 661,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "993cc770.3c90b",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 1494,
+ "y": 704,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "d9c8107.cbe1d7",
+ "8c284458.c08ae8"
+ ]
+ ]
+ },
+ {
+ "id": "d4f8497.5d30938",
+ "type": "comment",
+ "name": "Question?",
+ "info": "How to know if DG would send this get request\nin \"nodes\" namespace instead of \"network\" namespace?",
+ "comments": "",
+ "x": 2923,
+ "y": 890,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "b8e4ab1b.5f9428",
+ "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": 2966,
+ "y": 955,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "b8369203.6c1e7",
+ "9feeef15.8800c",
+ "e8e1bd1d.029dd"
+ ]
+ ]
+ },
+ {
+ "id": "6545b277.ec5df4",
+ "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": 2963,
+ "y": 1799,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "a9223749.8519e8",
+ "8aac19ac.984638",
+ "15568030.09492"
+ ]
+ ]
+ },
+ {
+ "id": "4f7449aa.1cee1",
+ "type": "comment",
+ "name": "Question?",
+ "info": "How to know if DG would send this get request\nin \"nodes\" namespace instead of \"network\" namespace?",
+ "comments": "",
+ "x": 2924,
+ "y": 1743,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "2fa39853.fd6f7",
+ "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": 2680,
+ "y": 241,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "e187deec.568f28",
+ "ca2e6451.404f78",
+ "42b58dd4.7191cc"
+ ]
+ ]
+ },
+ {
+ "id": "ca2e6451.404f78",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2953.490966796875,
+ "y": 133.573974609375,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "e5b0a6e5.509578"
+ ]
+ ]
+ },
+ {
+ "id": "e5b0a6e5.509578",
+ "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": 3131.0625,
+ "y": 133.8597412109375,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "42b58dd4.7191cc",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2949,
+ "y": 183,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "ecd1ffcd.8fafe8"
+ ]
+ ]
+ },
+ {
+ "id": "ecd1ffcd.8fafe8",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 3131,
+ "y": 183,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "e187deec.568f28",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2953,
+ "y": 234,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "d246d860.a6b138"
+ ]
+ ]
+ },
+ {
+ "id": "d246d860.a6b138",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3133,
+ "y": 234,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "8fdb5adc.4040d"
+ ]
+ ]
+ },
+ {
+ "id": "65e46dcd.9c5144",
+ "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": 2624,
+ "y": 458,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "dd606d5c.9d70f"
+ ]
+ ]
+ },
+ {
+ "id": "dd606d5c.9d70f",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.allotted-resource.relationship-list.relationship[$idx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2904,
+ "y": 458,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "93b21596.ec10e8"
+ ]
+ ]
+ },
+ {
+ "id": "da58235b.ecd51",
+ "type": "outcome",
+ "name": "network-policy",
+ "xml": "<outcome value='network-policy'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3109,
+ "y": 432,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "bae40be2.1a0898"
+ ]
+ ]
+ },
+ {
+ "id": "bae40be2.1a0898",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3285.9998779296875,
+ "y": 424.9998779296875,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "26610962.4550fe",
+ "1b905535.187f13"
+ ]
+ ]
+ },
+ {
+ "id": "26610962.4550fe",
+ "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": 3528.9998779296875,
+ "y": 381.9998779296875,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "1b905535.187f13",
+ "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": 3517.9998779296875,
+ "y": 436.9998779296875,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "690d79a7.ec256",
+ "33a9cbc4.26d4ec",
+ "93a52247.c17dd8"
+ ]
+ ]
+ },
+ {
+ "id": "93a52247.c17dd8",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3771,
+ "y": 323,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "2900fde3.f79c7a"
+ ]
+ ]
+ },
+ {
+ "id": "2900fde3.f79c7a",
+ "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": 3919.571533203125,
+ "y": 323.2857666015625,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "6f314ac7.786434",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 3918.509033203125,
+ "y": 367.426025390625,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "33a9cbc4.26d4ec",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3759.509033203125,
+ "y": 367.426025390625,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "6f314ac7.786434"
+ ]
+ ]
+ },
+ {
+ "id": "690d79a7.ec256",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3766.509033203125,
+ "y": 446.426025390625,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "13407089.aa8267"
+ ]
+ ]
+ },
+ {
+ "id": "13407089.aa8267",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 3905.509033203125,
+ "y": 446.426025390625,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "d0bc6aa5.e1fca8"
+ ]
+ ]
+ },
+ {
+ "id": "d0bc6aa5.e1fca8",
+ "type": "set",
+ "name": "set the max bandwidth",
+ "xml": "<set>\n<parameter name='maximum-bandwidth' value=\"`$tmp.aai.network-policy.max-bandwidth`\" />\n\n\n",
+ "comments": "",
+ "x": 4111,
+ "y": 444,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "7b409cff.da197c",
+ "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": 2967,
+ "y": 625,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "6c1cd175.73bac",
+ "685f5c8c.4102b4"
+ ]
+ ]
+ },
+ {
+ "id": "685f5c8c.4102b4",
+ "type": "failure",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3190,
+ "y": 611,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "1331c07a.407898"
+ ]
+ ]
+ },
+ {
+ "id": "6c1cd175.73bac",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3192,
+ "y": 644,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "c779d61e.1b8528"
+ ]
+ ]
+ },
+ {
+ "id": "c779d61e.1b8528",
+ "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": 3335,
+ "y": 641,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "1331c07a.407898",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3338,
+ "y": 604,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "59393385.2a7954",
+ "5055791b.75c5d"
+ ]
+ ]
+ },
+ {
+ "id": "59393385.2a7954",
+ "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": 3500,
+ "y": 599,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "e04c02f4.2f63f8",
+ "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": 2981,
+ "y": 1461.9998779296875,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "250eb2ce.721286",
+ "7ff4092b.9f4c3"
+ ]
+ ]
+ },
+ {
+ "id": "7ff4092b.9f4c3",
+ "type": "failure",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3204,
+ "y": 1447.9998779296875,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "4e15b8c4.ecfe8"
+ ]
+ ]
+ },
+ {
+ "id": "250eb2ce.721286",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3206,
+ "y": 1480.9998779296875,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "d740a9b4.496fa"
+ ]
+ ]
+ },
+ {
+ "id": "d740a9b4.496fa",
+ "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": 3349,
+ "y": 1477.9998779296875,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "4e15b8c4.ecfe8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 3352,
+ "y": 1440.9998779296875,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "a09d9728.0836a8",
+ "a9ef3bf.dca6748"
+ ]
+ ]
+ },
+ {
+ "id": "a09d9728.0836a8",
+ "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": 3546,
+ "y": 1444,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "7ac4d896.f266b8",
+ "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": 1092,
+ "y": 170,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "41475eff.deafd",
+ "type": "execute",
+ "name": "execute UUID generator for vpn-binding domainA",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.vpn-binding-domainA-uuid\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2443,
+ "y": 2082,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "171af565.db9233",
+ "type": "execute",
+ "name": "execute UUID generator for vpn-binding domainB",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.vpn-binding-domainB-uuid\"/>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2441,
+ "y": 2370,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "a8e7dd16.944608",
+ "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": 3614,
+ "y": 1195,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "58871d7.533a164"
+ ]
+ ]
+ },
+ {
+ "id": "58871d7.533a164",
+ "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": 3820,
+ "y": 1195,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "e6111c32.d5195"
+ ]
+ ]
+ },
+ {
+ "id": "e6111c32.d5195",
+ "type": "outcome",
+ "name": "tunnel-termination-point",
+ "xml": "<outcome value='tunnel-termination-point'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4035.28564453125,
+ "y": 1194.82177734375,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "4a0a1881.22b0b"
+ ]
+ ]
+ },
+ {
+ "id": "4a0a1881.22b0b",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4242.1171875,
+ "y": 1195.34033203125,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "5e5dd832.1a8688",
+ "54bc0e63.9b6c2",
+ "21213693.b01ef2"
+ ]
+ ]
+ },
+ {
+ "id": "5e5dd832.1a8688",
+ "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": 4457.1171875,
+ "y": 1157.34033203125,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "54bc0e63.9b6c2",
+ "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": 4454.1171875,
+ "y": 1196.34033203125,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "de5f8f91.d806"
+ ]
+ ]
+ },
+ {
+ "id": "21213693.b01ef2",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 4409.6171875,
+ "y": 1238.34033203125,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "de5f8f91.d806",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4634.6171875,
+ "y": 1195.34033203125,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "f282b1a5.b5514"
+ ]
+ ]
+ },
+ {
+ "id": "f282b1a5.b5514",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4792.6171875,
+ "y": 1195.34033203125,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "5cf873ba.a6923c"
+ ]
+ ]
+ },
+ {
+ "id": "5cf873ba.a6923c",
+ "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": 4999.6171875,
+ "y": 1195.34033203125,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "34f70001.b13958",
+ "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": 3611,
+ "y": 2064.0001220703125,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "a071673c.fc9a28"
+ ]
+ ]
+ },
+ {
+ "id": "a071673c.fc9a28",
+ "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": 3817,
+ "y": 2064.0001220703125,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "6adf0421.fc4f54"
+ ]
+ ]
+ },
+ {
+ "id": "6adf0421.fc4f54",
+ "type": "outcome",
+ "name": "tunnel-termination-point",
+ "xml": "<outcome value='tunnel-termination-point'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4032.28564453125,
+ "y": 2063.8218994140625,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "2bb1f1c3.65f2c6"
+ ]
+ ]
+ },
+ {
+ "id": "2bb1f1c3.65f2c6",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4239.1171875,
+ "y": 2064.3404541015625,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "11642463.fe6e2c",
+ "c588c96b.efcac",
+ "4df609a.395b578"
+ ]
+ ]
+ },
+ {
+ "id": "11642463.fe6e2c",
+ "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": 4454.1171875,
+ "y": 2026.3404541015625,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "c588c96b.efcac",
+ "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": 4451.1171875,
+ "y": 2065.3404541015625,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "946398a2.3fdd3"
+ ]
+ ]
+ },
+ {
+ "id": "4df609a.395b578",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 4406.6171875,
+ "y": 2107.3404541015625,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "946398a2.3fdd3",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4631.6171875,
+ "y": 2064.3404541015625,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "4ada9462.92f41c"
+ ]
+ ]
+ },
+ {
+ "id": "4ada9462.92f41c",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4789.6171875,
+ "y": 2064.3404541015625,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "85bbe5c.988a398"
+ ]
+ ]
+ },
+ {
+ "id": "85bbe5c.988a398",
+ "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": 4996.6171875,
+ "y": 2064.3404541015625,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "62bd6081.059d7",
+ "type": "set",
+ "name": "set attachment_param domain B",
+ "xml": "<set>\n<parameter name='request-id' value='`$prop.vpn-binding-domainB-uuid`' />\n<parameter name='otn-source-node' value='`$domain-B.node-id`' />\n<parameter name='otn-dest-node' value='`$param-prefix-domainB[$param-prefix-domainB_length -3]`' />\n<!--<parameter name='bw-odu' value='`$maximum-bandwidth /10`' />-->\n<parameter name='bw-odu' value=\"`'0,' + $maximum-bandwidth /1000 *2 /3 `\" />\n<parameter name='src-ttp-id' value='`$domain-B.tunnel-tp-id`' />\n<!--<parameter name='dst-ttp-id' value='`$destination.tunnel-tp-id`' />-->\n<parameter name='dst-ttp-id' value='' />\n<parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n\n",
+ "comments": "",
+ "x": 2372,
+ "y": 2991,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "5055791b.75c5d",
+ "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": 3527,
+ "y": 671,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "b37ffca0.5536d8",
+ "f29e8ee3.6f68c8",
+ "12ff2066.526398"
+ ]
+ ]
+ },
+ {
+ "id": "b37ffca0.5536d8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3722.5001220703125,
+ "y": 623,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "8d70b5c4.7732f8"
+ ]
+ ]
+ },
+ {
+ "id": "f29e8ee3.6f68c8",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3714.5001220703125,
+ "y": 678,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "aea102ae.c04f58"
+ ]
+ ]
+ },
+ {
+ "id": "12ff2066.526398",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3719.5001220703125,
+ "y": 735,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "d2755963.27f41"
+ ]
+ ]
+ },
+ {
+ "id": "d2755963.27f41",
+ "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": 3871.5001220703125,
+ "y": 736,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "aea102ae.c04f58",
+ "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": 3882.5001220703125,
+ "y": 681,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "8d70b5c4.7732f8",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 3866.8824462890625,
+ "y": 620.6556701660156,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "bbf0aa7e.e2119"
+ ]
+ ]
+ },
+ {
+ "id": "f4395a66.200ea",
+ "type": "outcome",
+ "name": "esr-thirdparty-sdnc",
+ "xml": "<outcome value='esr-thirdparty-sdnc'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4449,
+ "y": 639,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "89965e9d.5bf73"
+ ]
+ ]
+ },
+ {
+ "id": "89965e9d.5bf73",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4626,
+ "y": 631,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "cf2b04e9.c7ece",
+ "32eb8024.15dcc8"
+ ]
+ ]
+ },
+ {
+ "id": "bbf0aa7e.e2119",
+ "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": 4051,
+ "y": 635,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "5e8a47e5.344b2"
+ ]
+ ]
+ },
+ {
+ "id": "5e8a47e5.344b2",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4246,
+ "y": 635,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "f4395a66.200ea",
+ "cfe936cc.62cbd8"
+ ]
+ ]
+ },
+ {
+ "id": "cf2b04e9.c7ece",
+ "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": 4864,
+ "y": 586,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "73d2c0a6.ca0098",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5044,
+ "y": 629,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "c43ff31d.81e548"
+ ]
+ ]
+ },
+ {
+ "id": "2f388561.aeb472",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5036,
+ "y": 684,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "d2cf9090.58e4c8"
+ ]
+ ]
+ },
+ {
+ "id": "c9248b9c.994ac",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5041,
+ "y": 741,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "c9c36e85.c10ae8"
+ ]
+ ]
+ },
+ {
+ "id": "c9c36e85.c10ae8",
+ "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": 5193,
+ "y": 742,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "d2cf9090.58e4c8",
+ "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": 5204,
+ "y": 687,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "c43ff31d.81e548",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 5188.38232421875,
+ "y": 626.6556701660156,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "2aa1f89d.d99288"
+ ]
+ ]
+ },
+ {
+ "id": "2aa1f89d.d99288",
+ "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": 5403,
+ "y": 623,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "a9ef3bf.dca6748",
+ "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": 3568,
+ "y": 1512,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "4ce90a1d.60092c",
+ "60723c85.f84054",
+ "343ac8c.8b51638"
+ ]
+ ]
+ },
+ {
+ "id": "4ce90a1d.60092c",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3763.5001220703125,
+ "y": 1464,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "ce24a29a.e4d57"
+ ]
+ ]
+ },
+ {
+ "id": "60723c85.f84054",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3755.5001220703125,
+ "y": 1519,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "e9f57737.1a79b8"
+ ]
+ ]
+ },
+ {
+ "id": "343ac8c.8b51638",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3760.5001220703125,
+ "y": 1576,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "67449715.5406e8"
+ ]
+ ]
+ },
+ {
+ "id": "67449715.5406e8",
+ "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": 3912.5001220703125,
+ "y": 1577,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "e9f57737.1a79b8",
+ "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": 3923.5001220703125,
+ "y": 1522,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "ce24a29a.e4d57",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 3907.8824462890625,
+ "y": 1461.6556701660156,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "ed40a410.dc6fe8"
+ ]
+ ]
+ },
+ {
+ "id": "857c3216.12f558",
+ "type": "outcome",
+ "name": "esr-thirdparty-sdnc",
+ "xml": "<outcome value='esr-thirdparty-sdnc'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4490,
+ "y": 1480,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "6bbf97a7.ebebb8"
+ ]
+ ]
+ },
+ {
+ "id": "6bbf97a7.ebebb8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4667,
+ "y": 1472,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "ee554955.44691",
+ "1c8432c4.e13b6d"
+ ]
+ ]
+ },
+ {
+ "id": "ed40a410.dc6fe8",
+ "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": 4092,
+ "y": 1476,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "70b35483.a830f4"
+ ]
+ ]
+ },
+ {
+ "id": "70b35483.a830f4",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.destination-pnf.relationship-list.relationship[$dpvidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4287,
+ "y": 1476,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "857c3216.12f558",
+ "dc8e8812.fdd648"
+ ]
+ ]
+ },
+ {
+ "id": "1c8432c4.e13b6d",
+ "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": 4875,
+ "y": 1479,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "6cc22b96.ba67f4",
+ "b08dfdd6.0852f8",
+ "4f7e6e24.1a4"
+ ]
+ ]
+ },
+ {
+ "id": "ee554955.44691",
+ "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": 4905,
+ "y": 1427,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "6cc22b96.ba67f4",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5085,
+ "y": 1470,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "19f4c2b.fd2d63d"
+ ]
+ ]
+ },
+ {
+ "id": "b08dfdd6.0852f8",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5077,
+ "y": 1525,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "4d7c2f7b.855e48"
+ ]
+ ]
+ },
+ {
+ "id": "4f7e6e24.1a4",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 5082,
+ "y": 1582,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "92c87883.16eab"
+ ]
+ ]
+ },
+ {
+ "id": "92c87883.16eab",
+ "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": 5234,
+ "y": 1583,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "4d7c2f7b.855e48",
+ "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": 5245,
+ "y": 1528,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "19f4c2b.fd2d63d",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 5229.38232421875,
+ "y": 1467.6556701660156,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "f5fd6d7b.ccf568"
+ ]
+ ]
+ },
+ {
+ "id": "f5fd6d7b.ccf568",
+ "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": 5444,
+ "y": 1464,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "fdbb72c5.61c228",
+ "type": "execute",
+ "name": "execute RestApiCallNode slice creation domainA",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.transport-slice-creation.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainA.url + '/restconf/operations/ietf-optical-slice:create-optical-slice'`\" />\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=\"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`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 2423,
+ "y": 2674,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "b62b791e.5db38",
+ "47c9af20.002648"
+ ]
+ ]
+ },
+ {
+ "id": "47c9af20.002648",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2689,
+ "y": 2654,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "e173211c.50ca1"
+ ]
+ ]
+ },
+ {
+ "id": "b62b791e.5db38",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2690.000213623047,
+ "y": 2704.99990940094,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "9a481111.191d4"
+ ]
+ ]
+ },
+ {
+ "id": "e173211c.50ca1",
+ "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 OOF api\" />\n",
+ "comments": "",
+ "x": 2829.0002479553223,
+ "y": 2654.0000009536743,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "9a481111.191d4",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2835.02725982666,
+ "y": 2702.745394706726,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "3f4df906.b67d7e",
+ "type": "execute",
+ "name": "execute RestApiCallNode slice creation domainB",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.transport-slice-creation.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainB.url + '/restconf/operations/ietf-optical-slice:create-optical-slice'`\" />\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=\"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`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 2423,
+ "y": 3046,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "e8fdf08e.e8b0f8",
+ "a8718b8a.f404c8"
+ ]
+ ]
+ },
+ {
+ "id": "a8718b8a.f404c8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2689,
+ "y": 3026,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "fcecbd56.8e1ac"
+ ]
+ ]
+ },
+ {
+ "id": "e8fdf08e.e8b0f8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2690.000213623047,
+ "y": 3076.99990940094,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "ccb1984d.b4313"
+ ]
+ ]
+ },
+ {
+ "id": "fcecbd56.8e1ac",
+ "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 OOF api\" />\n",
+ "comments": "",
+ "x": 2829.0002479553223,
+ "y": 3026.0000009536743,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "ccb1984d.b4313",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2835.02725982666,
+ "y": 3074.745394706726,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "b6e0228b.bc6398",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2528,
+ "y": 404,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "65e46dcd.9c5144",
+ "bb6c8a2e.a61878"
+ ]
+ ]
+ },
+ {
+ "id": "bb6c8a2e.a61878",
+ "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": 2809,
+ "y": 360,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "475f2872.5fafd"
+ ]
+ ]
+ },
+ {
+ "id": "475f2872.5fafd",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.allotted-resource.relationship-list.relationship[$idx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3071,
+ "y": 360,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "da58235b.ecd51"
+ ]
+ ]
+ },
+ {
+ "id": "cfe936cc.62cbd8",
+ "type": "outcome",
+ "name": "network-resource",
+ "xml": "<outcome value='network-resource'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 4452,
+ "y": 713,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "29038cb1.b59084"
+ ]
+ ]
+ },
+ {
+ "id": "29038cb1.b59084",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4629,
+ "y": 705,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "c25692cd.684ce8"
+ ]
+ ]
+ },
+ {
+ "id": "c25692cd.684ce8",
+ "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": 4864,
+ "y": 829,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "68f808b3.66b5",
+ "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": 4904,
+ "y": 1669,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "ad76d9b4.88b908",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4669,
+ "y": 1545,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "68f808b3.66b5"
+ ]
+ ]
+ },
+ {
+ "id": "dc8e8812.fdd648",
+ "type": "outcome",
+ "name": "network-resource",
+ "xml": "<outcome value='network-resource'>",
+ "comments": "",
+ "outputs": 1,
+ "x": 4492,
+ "y": 1553,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "ad76d9b4.88b908"
+ ]
+ ]
+ },
+ {
+ "id": "fad5035b.7ee3a8",
+ "type": "execute",
+ "name": "execute RestApiCallNode domainA UNI Coloring",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.ts-coloring-uni-port.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainA.url + '/restconf/data/ietf-network:networks/network=' + $tmp.domainA.eth-network-id + '/node=' + $tmp.src.pnf-name + '/ietf-network-topology:termination-point=' + $tmp.src.ltpId + '/ietf-te-topology:te/ietf-optical-slice:tp-slice-id' `\" />\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=\"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`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 2425,
+ "y": 2807,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "bc31fb8e.e87f08",
+ "8c5d2dc9.bdb42"
+ ]
+ ]
+ },
+ {
+ "id": "8c5d2dc9.bdb42",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2691,
+ "y": 2787,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "536d6d82.f4f124"
+ ]
+ ]
+ },
+ {
+ "id": "bc31fb8e.e87f08",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2692.000213623047,
+ "y": 2837.99990940094,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "509489f1.58fe18"
+ ]
+ ]
+ },
+ {
+ "id": "536d6d82.f4f124",
+ "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 OOF api\" />\n",
+ "comments": "",
+ "x": 2831.0002479553223,
+ "y": 2787.0000009536743,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "509489f1.58fe18",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2837.02725982666,
+ "y": 2835.745394706726,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "d037b0c3.f093c",
+ "type": "execute",
+ "name": "execute RestApiCallNode domainB UNI Coloring",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.ts-coloring-uni-port.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainB.url + '/restconf/data/ietf-network:networks/network=' + $tmp.domainB.eth-network-id + '/node=' + $tmp.dst.pnf-name + '/ietf-network-topology:termination-point=' + $tmp.dst.ltpId + '/ietf-te-topology:te/ietf-optical-slice:tp-slice-id' `\" />\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=\"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`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 2425,
+ "y": 3173,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "8c8a801.d7272",
+ "b835a972.f48b7"
+ ]
+ ]
+ },
+ {
+ "id": "b835a972.f48b7",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2691,
+ "y": 3153,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "88a6a85e.9ed23"
+ ]
+ ]
+ },
+ {
+ "id": "8c8a801.d7272",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2692.000213623047,
+ "y": 3203.99990940094,
+ "z": "a52db008.999ba",
+ "wires": [
+ [
+ "7de5bd62.f4f62c"
+ ]
+ ]
+ },
+ {
+ "id": "88a6a85e.9ed23",
+ "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 OOF api\" />\n",
+ "comments": "",
+ "x": 2831.0002479553223,
+ "y": 3153.0000009536743,
+ "z": "a52db008.999ba",
+ "wires": []
+ },
+ {
+ "id": "7de5bd62.f4f62c",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 2837.02725982666,
+ "y": 3201.745394706726,
+ "z": "a52db008.999ba",
+ "wires": [
+ []
+ ]
+ }
+]
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/json/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-deactivate.json b/platform-logic/generic-resource-api/src/main/json/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-deactivate.json new file mode 100644 index 00000000..3584527b --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-deactivate.json @@ -0,0 +1,1000 @@ +[
+ {
+ "id": "fed3eb51.781ac8",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 131,
+ "y": 81,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "d2a4ea36.881b68"
+ ]
+ ]
+ },
+ {
+ "id": "d2a4ea36.881b68",
+ "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": 262.2856903076172,
+ "y": 130.23810863494873,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "7b1236d6.83c2c"
+ ]
+ ]
+ },
+ {
+ "id": "7b1236d6.83c2c",
+ "type": "method",
+ "name": "method tsli-vnf-topology-operation-trans-slice-deactivate",
+ "xml": "<method rpc='tsli-vnf-topology-operation-trans-slice-deactivate' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 265.4286193847656,
+ "y": 215.00003242492676,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "8228a949.234f38"
+ ]
+ ]
+ },
+ {
+ "id": "8228a949.234f38",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 415.238037109375,
+ "y": 344.6666564941406,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "341b32a3.25428e",
+ "1a6e5da0.98eb02",
+ "e5c8285b.2b695"
+ ]
+ ]
+ },
+ {
+ "id": "341b32a3.25428e",
+ "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": 689.5716552734375,
+ "y": 611.59716796875,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "f743b3f1.72f9f",
+ "type": "comment",
+ "name": "new for TransportSlicing",
+ "info": "",
+ "comments": "",
+ "x": 721,
+ "y": 286,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "1a6e5da0.98eb02",
+ "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": 741,
+ "y": 382,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "2976ce78.f07a42",
+ "de3912b8.6d67e",
+ "77b5fc18.2082a4"
+ ]
+ ]
+ },
+ {
+ "id": "2976ce78.f07a42",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 960,
+ "y": 320,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "7ee13e19.7c1348"
+ ]
+ ]
+ },
+ {
+ "id": "de3912b8.6d67e",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 969.490966796875,
+ "y": 362.57403564453125,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "4a305009.90c32"
+ ]
+ ]
+ },
+ {
+ "id": "77b5fc18.2082a4",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 958,
+ "y": 409,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "cd4775e4.2da96"
+ ]
+ ]
+ },
+ {
+ "id": "4a305009.90c32",
+ "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": 1123.0623779296875,
+ "y": 365.8597717285156,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "cd4775e4.2da96",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 1127,
+ "y": 410,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "7ee13e19.7c1348",
+ "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": 1157,
+ "y": 316,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "bc03982b.15ba78"
+ ]
+ ]
+ },
+ {
+ "id": "bc03982b.15ba78",
+ "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": 1380.33349609375,
+ "y": 315.99993896484375,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "aca4b74a.cb3118"
+ ]
+ ]
+ },
+ {
+ "id": "aca4b74a.cb3118",
+ "type": "outcome",
+ "name": "connectivity",
+ "xml": "<outcome value='connectivity'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1581.0001335144043,
+ "y": 317.00002098083496,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "2544f612.eeddca"
+ ]
+ ]
+ },
+ {
+ "id": "e5c8285b.2b695",
+ "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": 707,
+ "y": 330,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "2544f612.eeddca",
+ "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": 1819,
+ "y": 319,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "75c7fde8.1d4a84",
+ "563ee44e.bd096c",
+ "bc425b5.1b1fba8"
+ ]
+ ]
+ },
+ {
+ "id": "75c7fde8.1d4a84",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2027,
+ "y": 283,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "e6a3b8f2.9e7b38"
+ ]
+ ]
+ },
+ {
+ "id": "563ee44e.bd096c",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2027.490966796875,
+ "y": 328.57403564453125,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "ad15182e.154a8"
+ ]
+ ]
+ },
+ {
+ "id": "bc425b5.1b1fba8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2025,
+ "y": 372,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "8719a717.3cd9f8"
+ ]
+ ]
+ },
+ {
+ "id": "ad15182e.154a8",
+ "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": 2190.0623779296875,
+ "y": 328.8597717285156,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "8719a717.3cd9f8",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 2194,
+ "y": 373,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "c776a79f.7f2db",
+ "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": 2500,
+ "y": 372,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "b403a898.9fbc18",
+ "5d1a47a8.0dfe7",
+ "f3733135.d8a078"
+ ]
+ ]
+ },
+ {
+ "id": "c765be65.0f488",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2884,
+ "y": 372,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "e9922fb9.764098",
+ "eef29d57.4c4228",
+ "952ea8f1.7bda",
+ "14a01812.a7d138"
+ ]
+ ]
+ },
+ {
+ "id": "b403a898.9fbc18",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2711,
+ "y": 374,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "c765be65.0f488"
+ ]
+ ]
+ },
+ {
+ "id": "5d1a47a8.0dfe7",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2711.490966796875,
+ "y": 419.57403564453125,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "1295f1fa.69cac6"
+ ]
+ ]
+ },
+ {
+ "id": "f3733135.d8a078",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2709,
+ "y": 463,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "6ac7a77b.f5232"
+ ]
+ ]
+ },
+ {
+ "id": "6ac7a77b.f5232",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 2876,
+ "y": 462,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "1295f1fa.69cac6",
+ "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": 2874.0623779296875,
+ "y": 419.8597717285156,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "e6a3b8f2.9e7b38",
+ "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": 2228,
+ "y": 278,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "d8c7aa6c.9474d"
+ ]
+ ]
+ },
+ {
+ "id": "d8c7aa6c.9474d",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.connectivity.relationship-list.relationship[$cridx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2433,
+ "y": 278,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "6afd9b1f.24ad3c"
+ ]
+ ]
+ },
+ {
+ "id": "6afd9b1f.24ad3c",
+ "type": "outcome",
+ "name": "vpn-binding",
+ "xml": "<outcome value='vpn-binding'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2599,
+ "y": 278,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "489d615f.74d2b8"
+ ]
+ ]
+ },
+ {
+ "id": "489d615f.74d2b8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2762,
+ "y": 278,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "c776a79f.7f2db"
+ ]
+ ]
+ },
+ {
+ "id": "e9922fb9.764098",
+ "type": "set",
+ "name": "set pnf-name",
+ "xml": "<set>\n<parameter name='tmp.domain.pnf-name' value=\"`'networkId-providerId-' +\n $tmp.aai.vpn-binding.access-provider-id + '-clientId-' +\n $tmp.aai.vpn-binding.access-client-id + '-topologyId-' +\n $tmp.aai.vpn-binding.access-topology-id + '-nodeId-' +\n $tmp.aai.vpn-binding.src-access-node-id`\" />\n",
+ "comments": "",
+ "x": 3099,
+ "y": 82,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "eef29d57.4c4228",
+ "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.domain.pnf-name\"\n pfx='tmp.aai.source-pnf' local-only='false' >\n\n <!--AND depth = '0'\"-->\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3125,
+ "y": 199,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "e1caf9b0.f16ef",
+ "8ba822ff.3c855",
+ "3e54396e.89bb66"
+ ]
+ ]
+ },
+ {
+ "id": "e1caf9b0.f16ef",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3320.5001220703125,
+ "y": 151,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "12b4a6a1.bdd529"
+ ]
+ ]
+ },
+ {
+ "id": "8ba822ff.3c855",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3312.5001220703125,
+ "y": 206,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "6aa3fcb.c3a6c84"
+ ]
+ ]
+ },
+ {
+ "id": "12b4a6a1.bdd529",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 3464.8824462890625,
+ "y": 150.65567016601562,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "8559d2a.befa2b"
+ ]
+ ]
+ },
+ {
+ "id": "8559d2a.befa2b",
+ "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": 3649,
+ "y": 149,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "a2c1ad39.50b17"
+ ]
+ ]
+ },
+ {
+ "id": "a2c1ad39.50b17",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3844,
+ "y": 149,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "f7ee255a.8640e"
+ ]
+ ]
+ },
+ {
+ "id": "3e54396e.89bb66",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3317.5001220703125,
+ "y": 263,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "ff13ab9d.2deb7"
+ ]
+ ]
+ },
+ {
+ "id": "ff13ab9d.2deb7",
+ "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": 3469.5001220703125,
+ "y": 264,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "6aa3fcb.c3a6c84",
+ "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": 3480.5001220703125,
+ "y": 207,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "d85cad49.e7fe3",
+ "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.domain.esr-thirdparty-id AND \n\t\t depth = '1'\"\n pfx='tmp.aai.domain.esr-thirdparty-sdnc' local-only='false' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 4432,
+ "y": 166,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "5b32aba.7fc39d4",
+ "43d71291.c727fc",
+ "6b05861c.156668"
+ ]
+ ]
+ },
+ {
+ "id": "98badb93.a08c9",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4226,
+ "y": 153,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "48966cee.55dba4",
+ "d85cad49.e7fe3",
+ "ee878ee.4f8847"
+ ]
+ ]
+ },
+ {
+ "id": "48966cee.55dba4",
+ "type": "set",
+ "name": "set esr-thirdparty-sdnc domain id",
+ "xml": "<set>\n<parameter name='tmp.domain.esr-thirdparty-id' value=\"`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 4462,
+ "y": 114,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "5b32aba.7fc39d4",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4642,
+ "y": 157,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "20fc8e76.a69222"
+ ]
+ ]
+ },
+ {
+ "id": "43d71291.c727fc",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4634,
+ "y": 212,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "51e97aab.2d7044"
+ ]
+ ]
+ },
+ {
+ "id": "6b05861c.156668",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4639,
+ "y": 269,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "ef0b1a78.fffea8"
+ ]
+ ]
+ },
+ {
+ "id": "ef0b1a78.fffea8",
+ "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": 4791,
+ "y": 270,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "51e97aab.2d7044",
+ "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": 4802,
+ "y": 215,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "20fc8e76.a69222",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4786.38232421875,
+ "y": 154.65567016601562,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "a8dfc05f.e2f018"
+ ]
+ ]
+ },
+ {
+ "id": "f7ee255a.8640e",
+ "type": "outcome",
+ "name": "esr-thirdparty-sdnc",
+ "xml": "<outcome value='esr-thirdparty-sdnc'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4047,
+ "y": 153,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "98badb93.a08c9"
+ ]
+ ]
+ },
+ {
+ "id": "a8dfc05f.e2f018",
+ "type": "set",
+ "name": "set controller domain data",
+ "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domain.url' value=\"`$tmp.aai.domain.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domain.user' value=\"`$tmp.aai.domain.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domain.password' value=\"`$tmp.aai.domain.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": 5001,
+ "y": 151,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "ee878ee.4f8847",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 4382,
+ "y": 230,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "952ea8f1.7bda",
+ "type": "execute",
+ "name": "execute RestApiCallNode Delete ethernet Service without token",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domain.url + '/restconf/data/ietf-eth-tran-service:etht-svc/eth-svc-instances=' + $tmp.aai.connectivity.connectivity-id`\" />\n<!--<parameter name=\"restapiUrl\" value=\"`$prop.restapi.connection-oof-url`\" />-->\n<!--<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sotn-ethernet-service.json'`\" />-->\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domain.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domain.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\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": 3255,
+ "y": 594,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "d9dc02b.5b9308",
+ "f01b6c55.209f38"
+ ]
+ ]
+ },
+ {
+ "id": "d9dc02b.5b9308",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3601.5,
+ "y": 587,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "174c3f65.a9f0e1"
+ ]
+ ]
+ },
+ {
+ "id": "f01b6c55.209f38",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3605.5,
+ "y": 627,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "de16161.028de68"
+ ]
+ ]
+ },
+ {
+ "id": "de16161.028de68",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 3763,
+ "y": 627,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "1a3ebd6b.2a7953",
+ "30c3e280.4d41f6"
+ ]
+ ]
+ },
+ {
+ "id": "174c3f65.a9f0e1",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Create vpn rest api\" />\n",
+ "comments": "",
+ "x": 3759.5,
+ "y": 587,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "1a3ebd6b.2a7953",
+ "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-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-id`' />\n\n<parameter name='operational-status' value='Deactivated' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4091.5,
+ "y": 627,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "30c3e280.4d41f6",
+ "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='Deactivated' />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4018.5,
+ "y": 673,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "14a01812.a7d138",
+ "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.ts-otn-src-domain-creation.templatefile`\" />-->\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domainA.url + '/restconf/data/ietf-te:te/tunnels/tunnel=' + $tmp.aai.vpn-binding.vpn-id`\" />\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=\"delete\"/>\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": 3228,
+ "y": 466,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "8e721e50.020db",
+ "8f6c71d1.f7e258"
+ ]
+ ]
+ },
+ {
+ "id": "8e721e50.020db",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3560.5,
+ "y": 436,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "b94a74e8.509ec"
+ ]
+ ]
+ },
+ {
+ "id": "8f6c71d1.f7e258",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3565.5,
+ "y": 501,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ [
+ "e36acb2.364b538"
+ ]
+ ]
+ },
+ {
+ "id": "b94a74e8.509ec",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Create vpn rest api\" />\n",
+ "comments": "",
+ "x": 3736.5,
+ "y": 436,
+ "z": "fdc94a5e.7c86f8",
+ "wires": []
+ },
+ {
+ "id": "e36acb2.364b538",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 3732,
+ "y": 501,
+ "z": "fdc94a5e.7c86f8",
+ "wires": [
+ []
+ ]
+ }
+]
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/json/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-delete.json b/platform-logic/generic-resource-api/src/main/json/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-delete.json new file mode 100644 index 00000000..4e31cf5d --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-delete.json @@ -0,0 +1,1011 @@ +[
+ {
+ "id": "9067dc50.e26888",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 130,
+ "y": 78,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "51326c57.b5118c"
+ ]
+ ]
+ },
+ {
+ "id": "51326c57.b5118c",
+ "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": 261.2856903076172,
+ "y": 127.23810863494873,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "1a80b7c8.5e20d"
+ ]
+ ]
+ },
+ {
+ "id": "1a80b7c8.5e20d",
+ "type": "method",
+ "name": "method tsli-vnf-topology-operation-trans-slice-delete",
+ "xml": "<method rpc='tsli-vnf-topology-operation-trans-slice-delete' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 264.4286193847656,
+ "y": 212.00003242492676,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "727ca303.e92f14"
+ ]
+ ]
+ },
+ {
+ "id": "727ca303.e92f14",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 414.238037109375,
+ "y": 341.6666564941406,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "89ce3405.afdad8",
+ "f34628af.971e58",
+ "662b7b8b.c02da4"
+ ]
+ ]
+ },
+ {
+ "id": "89ce3405.afdad8",
+ "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": 710.5716552734375,
+ "y": 618.59716796875,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "7661af19.3745a8",
+ "type": "comment",
+ "name": "new for TransportSlicing",
+ "info": "",
+ "comments": "",
+ "x": 742,
+ "y": 293,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "f34628af.971e58",
+ "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\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": 762,
+ "y": 389,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "f2d7e1a3.9c55b8",
+ "893eca26.41fe2",
+ "67ceb9a8.a14aa8"
+ ]
+ ]
+ },
+ {
+ "id": "f2d7e1a3.9c55b8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 981,
+ "y": 327,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "6a81e2af.afefb4"
+ ]
+ ]
+ },
+ {
+ "id": "893eca26.41fe2",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 990.490966796875,
+ "y": 369.57403564453125,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "adcdedad.e4cfa8"
+ ]
+ ]
+ },
+ {
+ "id": "67ceb9a8.a14aa8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 979,
+ "y": 416,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "51f8ebc0.b96fdc"
+ ]
+ ]
+ },
+ {
+ "id": "adcdedad.e4cfa8",
+ "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": 1144.0623779296875,
+ "y": 372.8597717285156,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "51f8ebc0.b96fdc",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 1148,
+ "y": 417,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "6a81e2af.afefb4",
+ "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": 1178,
+ "y": 323,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "37d91278.b2e28e"
+ ]
+ ]
+ },
+ {
+ "id": "37d91278.b2e28e",
+ "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": 1401.33349609375,
+ "y": 322.99993896484375,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "63dc2a73.eea004"
+ ]
+ ]
+ },
+ {
+ "id": "63dc2a73.eea004",
+ "type": "outcome",
+ "name": "connectivity",
+ "xml": "<outcome value='connectivity'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1602.0001335144043,
+ "y": 324.00002098083496,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "3bc5d31f.4eff1c"
+ ]
+ ]
+ },
+ {
+ "id": "662b7b8b.c02da4",
+ "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": 728,
+ "y": 337,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "3bc5d31f.4eff1c",
+ "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": 1840,
+ "y": 326,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "f9ddca30.13fc18",
+ "2e83e20a.a4c64e",
+ "bbb85f3b.347968"
+ ]
+ ]
+ },
+ {
+ "id": "f9ddca30.13fc18",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2048,
+ "y": 290,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "7f6304c6.68b434"
+ ]
+ ]
+ },
+ {
+ "id": "2e83e20a.a4c64e",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2048.490966796875,
+ "y": 335.57403564453125,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "848ced52.aed45"
+ ]
+ ]
+ },
+ {
+ "id": "bbb85f3b.347968",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2046,
+ "y": 379,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "67746d9a.bb8fac"
+ ]
+ ]
+ },
+ {
+ "id": "848ced52.aed45",
+ "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": 2211.0623779296875,
+ "y": 335.8597717285156,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "67746d9a.bb8fac",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 2215,
+ "y": 380,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "a1788c2.5cbcc7",
+ "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": 2521,
+ "y": 379,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "ff5b5708.803718",
+ "2b7ab4e7.4996c4",
+ "8f3a9f9c.feba08"
+ ]
+ ]
+ },
+ {
+ "id": "66c494d6.d131ec",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2905,
+ "y": 379,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "4df4ccfd.828a9c",
+ "cc810976.1e78e",
+ "6804b3fb.447a5c",
+ "1114cd30.8fbe33",
+ "77014142.ee291",
+ "eea604e.273be78",
+ "c7f4c6b5.89c68"
+ ]
+ ]
+ },
+ {
+ "id": "ff5b5708.803718",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2732,
+ "y": 381,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "66c494d6.d131ec"
+ ]
+ ]
+ },
+ {
+ "id": "2b7ab4e7.4996c4",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2732.490966796875,
+ "y": 426.57403564453125,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "71b7f260.a02afc"
+ ]
+ ]
+ },
+ {
+ "id": "8f3a9f9c.feba08",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2730,
+ "y": 470,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "f1455dfe.4b515"
+ ]
+ ]
+ },
+ {
+ "id": "f1455dfe.4b515",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value='' />\n",
+ "comments": "",
+ "x": 2897,
+ "y": 469,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "71b7f260.a02afc",
+ "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": 2895.0623779296875,
+ "y": 426.8597717285156,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "7f6304c6.68b434",
+ "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": 2249,
+ "y": 285,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "df01a5ae.6dc3e8"
+ ]
+ ]
+ },
+ {
+ "id": "df01a5ae.6dc3e8",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.connectivity.relationship-list.relationship[$cridx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2454,
+ "y": 285,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "3c18e8d0.67c0b"
+ ]
+ ]
+ },
+ {
+ "id": "3c18e8d0.67c0b",
+ "type": "outcome",
+ "name": "vpn-binding",
+ "xml": "<outcome value='vpn-binding'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2620,
+ "y": 285,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "2564f00.0bbdd9"
+ ]
+ ]
+ },
+ {
+ "id": "2564f00.0bbdd9",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 2783,
+ "y": 285,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "a1788c2.5cbcc7"
+ ]
+ ]
+ },
+ {
+ "id": "4df4ccfd.828a9c",
+ "type": "set",
+ "name": "set pnf-name",
+ "xml": "<set>\n<parameter name='tmp.domain.pnf-name' value=\"`'networkId-providerId-' +\n $tmp.aai.vpn-binding.access-provider-id + '-clientId-' +\n $tmp.aai.vpn-binding.access-client-id + '-topologyId-' +\n $tmp.aai.vpn-binding.access-topology-id + '-nodeId-' +\n $tmp.aai.vpn-binding.src-access-node-id`\" />\n",
+ "comments": "",
+ "x": 3120,
+ "y": 89,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "cc810976.1e78e",
+ "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.domain.pnf-name\"\n pfx='tmp.aai.source-pnf' local-only='false' >\n\n <!--AND depth = '0'\"-->\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3146,
+ "y": 206,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "fbb5125b.955718",
+ "693af83c.f3ea18",
+ "2473f4a.835008c"
+ ]
+ ]
+ },
+ {
+ "id": "fbb5125b.955718",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3341.5001220703125,
+ "y": 158,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "9a9b433a.0ee84"
+ ]
+ ]
+ },
+ {
+ "id": "693af83c.f3ea18",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3333.5001220703125,
+ "y": 213,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "3249d5d1.aac972"
+ ]
+ ]
+ },
+ {
+ "id": "9a9b433a.0ee84",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 3485.8824462890625,
+ "y": 157.65567016601562,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "4c1ac004.69f11"
+ ]
+ ]
+ },
+ {
+ "id": "4c1ac004.69f11",
+ "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": 3670,
+ "y": 156,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "4cdbe422.34f9d4"
+ ]
+ ]
+ },
+ {
+ "id": "4cdbe422.34f9d4",
+ "type": "switchNode",
+ "name": "switch related-to",
+ "xml": "<switch test='`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].related-to`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3865,
+ "y": 156,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "9761202f.b6a0b"
+ ]
+ ]
+ },
+ {
+ "id": "2473f4a.835008c",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3338.5001220703125,
+ "y": 270,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "aacead6d.fefcb8"
+ ]
+ ]
+ },
+ {
+ "id": "aacead6d.fefcb8",
+ "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": 3490.5001220703125,
+ "y": 271,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "3249d5d1.aac972",
+ "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": 3501.5001220703125,
+ "y": 214,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "4c67262e.3701a8",
+ "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.domain.esr-thirdparty-id AND \n\t\t depth = '1'\"\n pfx='tmp.aai.domain.esr-thirdparty-sdnc' local-only='false' >",
+ "comments": "",
+ "outputs": 1,
+ "x": 4453,
+ "y": 173,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "906ef06e.7739a8",
+ "cb4dc0cc.5ae2c",
+ "8ceaa5d5.dc9b88"
+ ]
+ ]
+ },
+ {
+ "id": "12825971.5566ff",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 4247,
+ "y": 160,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "dddd5795.4cbcd",
+ "4c67262e.3701a8",
+ "459c85bd.d88044"
+ ]
+ ]
+ },
+ {
+ "id": "dddd5795.4cbcd",
+ "type": "set",
+ "name": "set esr-thirdparty-sdnc domain id",
+ "xml": "<set>\n<parameter name='tmp.domain.esr-thirdparty-id' value=\"`$tmp.aai.source-pnf.relationship-list.relationship[$spvidx].relationship-data[0].relationship-value`\" />\n",
+ "comments": "",
+ "x": 4483,
+ "y": 121,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "906ef06e.7739a8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4663,
+ "y": 164,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "97b50ccf.b69cd8"
+ ]
+ ]
+ },
+ {
+ "id": "cb4dc0cc.5ae2c",
+ "type": "not-found",
+ "name": "not-found",
+ "xml": "<outcome value='not-found'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4655,
+ "y": 219,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "34cf9d59.f69aea"
+ ]
+ ]
+ },
+ {
+ "id": "8ceaa5d5.dc9b88",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4660,
+ "y": 276,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "6573a76f.8f9128"
+ ]
+ ]
+ },
+ {
+ "id": "6573a76f.8f9128",
+ "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": 4812,
+ "y": 277,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "34cf9d59.f69aea",
+ "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": 4823,
+ "y": 222,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "97b50ccf.b69cd8",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 4807.38232421875,
+ "y": 161.65567016601562,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "e66f9d95.0b353"
+ ]
+ ]
+ },
+ {
+ "id": "9761202f.b6a0b",
+ "type": "outcome",
+ "name": "esr-thirdparty-sdnc",
+ "xml": "<outcome value='esr-thirdparty-sdnc'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 4068,
+ "y": 160,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "12825971.5566ff"
+ ]
+ ]
+ },
+ {
+ "id": "e66f9d95.0b353",
+ "type": "set",
+ "name": "set controller domain data",
+ "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domain.url' value=\"`$tmp.aai.domain.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domain.user' value=\"`$tmp.aai.domain.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.domain.password' value=\"`$tmp.aai.domain.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": 5022,
+ "y": 158,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "459c85bd.d88044",
+ "type": "break",
+ "name": "break",
+ "xml": "<break>\n",
+ "comments": "",
+ "x": 4403,
+ "y": 237,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "1114cd30.8fbe33",
+ "type": "execute",
+ "name": "execute RestApiCallNode Delete transport slice without token",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.transport-slice-creation.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domain.url + '/restconf/operations/ietf-optical-slice:deallocate-optical-slice'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domain.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domain.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\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": 3270,
+ "y": 504,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "aa415b48.c51fe8",
+ "f0d3a65b.427ad8"
+ ]
+ ]
+ },
+ {
+ "id": "aa415b48.c51fe8",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3613.5,
+ "y": 499,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "c60de7c9.d4f7f8"
+ ]
+ ]
+ },
+ {
+ "id": "f0d3a65b.427ad8",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3617.5,
+ "y": 539,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "a329dc5b.ef894"
+ ]
+ ]
+ },
+ {
+ "id": "a329dc5b.ef894",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 3775,
+ "y": 539,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "c60de7c9.d4f7f8",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Create vpn rest api\" />\n",
+ "comments": "",
+ "x": 3771.5,
+ "y": 499,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "6804b3fb.447a5c",
+ "type": "set",
+ "name": "set attachment_param for TN NSSSI deleteion in PNC",
+ "xml": "<set>\n<parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />\n\n",
+ "comments": "",
+ "x": 3246,
+ "y": 379,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "77014142.ee291",
+ "type": "save",
+ "name": "delete connectivity resource in AAI",
+ "xml": "<delete plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity' \n key='connectivity.connectivity-id = $tmp.aai.connectivity.connectivity-id'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3176,
+ "y": 814,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "eea604e.273be78",
+ "type": "save",
+ "name": "delete vpn-binding resource in AAI",
+ "xml": "<delete plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding' \n key='vpn-binding.vpn-id = $tmp.aai.vpn-binding.vpn-id' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3172,
+ "y": 858,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "c7f4c6b5.89c68",
+ "type": "execute",
+ "name": "execute RestApiCallNode domain UNI deColoring",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<!--<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.ts-coloring-uni-port.templatefile`\" />-->\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domain.url + '/restconf/data/ietf-network:networks/network=networkId-providerId-' + $tmp.aai.connectivity.access-provider-id + '-clientId-' + $tmp.aai.connectivity.access-client-id + '-topologyId-' + $tmp.aai.connectivity.access-topology-id + '/node=' + $tmp.aai.connectivity.access-node-id + '/ietf-network-topology:termination-point=' + $tmp.aai.connectivity.access-ltp-id + '/ietf-te-topology:te/ietf-optical-slice:tp-slice-id' `\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domain.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.domain.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\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": 3233,
+ "y": 677,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "e6edfa38.71c268",
+ "137ffb3e.b1daa5"
+ ]
+ ]
+ },
+ {
+ "id": "137ffb3e.b1daa5",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3499,
+ "y": 657,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "7548726d.c6844c"
+ ]
+ ]
+ },
+ {
+ "id": "e6edfa38.71c268",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 3500.000213623047,
+ "y": 707.9999094009399,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ [
+ "67229e1a.f4d798"
+ ]
+ ]
+ },
+ {
+ "id": "7548726d.c6844c",
+ "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 OOF api\" />\n",
+ "comments": "",
+ "x": 3639.0002479553223,
+ "y": 657.0000009536743,
+ "z": "65374df1.8a48d4",
+ "wires": []
+ },
+ {
+ "id": "67229e1a.f4d798",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 3645.02725982666,
+ "y": 705.7453947067261,
+ "z": "65374df1.8a48d4",
+ "wires": [
+ []
+ ]
+ }
+]
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/xml/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-get-otn-tunnel-path-from-oof.xml b/platform-logic/generic-resource-api/src/main/xml/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-get-otn-tunnel-path-from-oof.xml new file mode 100644 index 00000000..e1b76faf --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-get-otn-tunnel-path-from-oof.xml @@ -0,0 +1,333 @@ +<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='tsli-vnf-topology-operation-get-otn-tunnel-path-from-oof' mode='sync'>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.oof-getpath.templatefile`" />
+ <parameter name="restapiUrl" value="`$prop.restapi.connection-oof-url`" />
+ <parameter name="restapiUser" value="`$prop.oof.user`" />
+ <parameter name="restapiPassword" value="`$prop.oof.password`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="post"/>
+ <parameter name="responsePrefix" value="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 OOF api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ </execute>
+ <for index='vidx' start='0' end='`$otn-oof.solutions_length`' >
+ <block atomic="true">
+ <set>
+ <parameter name='otn-oof.link-name' value='`$otn-oof.solutions[$vidx].link`' />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="logical-link"
+ key="logical-link.link-name = $otn-oof.link-name"
+ pfx='tmp.aai.cross-link' local-only='false' >
+ <!--AND depth = '0'"-->
+ <outcome value='success'>
+ <block>
+ <switch test='`$tmp.aai.cross-link.link-role`'>
+ <outcome value='cross-domain'>
+ <block atomic="true">
+ <for index='lridx' start='0' end='`$tmp.aai.cross-link.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.cross-link.relationship-list.relationship[$lridx].related-to`'>
+ <outcome value='p-interface'>
+ <block>
+ <set>
+ <parameter name='tmp.cross-link.src-ltpId' value="`$tmp.aai.cross-link.relationship-list.relationship[$lridx].relationship-data[1].relationship-value`" />
+ <parameter name='tmp.cross-link.dst-ltpId' value="`$tmp.aai.cross-link.relationship-list.relationship[$lridx + 1].relationship-data[1].relationship-value`" />
+ <parameter name='tmp.src-pnf-name' value="`$tmp.aai.cross-link.relationship-list.relationship[$lridx].relationship-data[0].relationship-value`" />
+ <parameter name='tmp.dst-pnf-name' value="`$tmp.aai.cross-link.relationship-list.relationship[$lridx + 1].relationship-data[0].relationship-value`" />
+ </set>
+ <break/>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="p-interface"
+ key="pnf.pnf-name = $tmp.src-pnf-name
+ AND p-interface.interface-name = $tmp.cross-link.src-ltpId"
+ pfx='tmp.aai.src-tp' local-only='false' >
+ <!--AND depth = '0'"-->
+ <outcome value='success'>
+ <block>
+ <for silentFailure='true' index='vidx' start='0' end='`$tmp.aai.src-tp.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.src-tp.relationship-list.relationship[$vidx].related-to`'>
+ <outcome value='tunnel-termination-point'>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >
+ <parameter name="original_string" value='`$tmp.aai.src-tp`'/>
+ <!--<parameter name="regex" value="[^-]+$"/>-->
+ <parameter name="regex" value="[-]+"/>
+ <parameter name="ctx_memory_result_key" value="param-prefix-src-tp"/>
+ <outcome value='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='domain-A.ltpId' value='`$param-prefix-src-tp[$param-prefix-src-tp_length -1]`' />
+ </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>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="pnf"
+ key="pnf.pnf-name = $tmp.src-pnf-name"
+ pfx='tmp.aai.src-pnf' local-only='false' >
+ <!--AND depth = '0'"-->
+ <outcome value='success'>
+ <block>
+ <set>
+ <parameter name='domain-A.node-id' value="`$tmp.aai.src-pnf.pnf-id`" />
+ <parameter name='domain-A.tpn' value='1' />
+ </set>
+ <for silentFailure='true' index='pvidx' start='0' end='`$tmp.aai.src-pnf.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.src-pnf.relationship-list.relationship[$pvidx].related-to`'>
+ <outcome value='network-resource'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.domain-A.network-id' value="`$tmp.aai.src-pnf.relationship-list.relationship[$pvidx].relationship-data[0].relationship-value`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="network-resource"
+ key="network-resource.network-id = $tmp.domain-A.network-id
+ AND depth = '0'"
+ pfx='tmp.aai.src-network-resource' local-only='false' >
+ <outcome value='success'>
+ <set>
+ <parameter name='domain-A.network-id' value="`$tmp.aai.src-network-resource.network-id`" />
+ <parameter name='domain-A.provider-id' value="`$tmp.aai.src-network-resource.provider-id`" />
+ <parameter name='domain-A.client-id' value="`$tmp.aai.src-network-resource.client-id`" />
+ <parameter name='domain-A.te-topo-id' value="`$tmp.aai.src-network-resource.te-topo-id`" />
+ <parameter name='domain-A.network-type' value="`$tmp.aai.src-network-resource.network-type`" />
+ </set>
+ </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.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>
+ <set>
+ <parameter name='tmp.domain-A.ttp-id' value="`$tmp.aai.src-tp.relationship-list.relationship[$vidx].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.domain-A.ttp-id
+ AND depth = '0'"
+ pfx='tmp.aai.src-ttp' local-only='false' >
+ <outcome value='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='domain-A.tunnel-tp-id' value="`$tmp.aai.src-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.connection-attachement.access-node-id`" />
+ </return>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
+ </return>
+ </outcome>
+ </get-resource>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="p-interface"
+ key="pnf.pnf-name = $tmp.dst-pnf-name
+ AND p-interface.interface-name = $tmp.cross-link.dst-ltpId"
+ pfx='tmp.aai.dst-tp' local-only='false' >
+ <!--AND depth = '0'"-->
+ <outcome value='success'>
+ <block>
+ <for silentFailure='true' index='vidx' start='0' end='`$tmp.aai.dst-tp.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.dst-tp.relationship-list.relationship[$vidx].related-to`'>
+ <outcome value='tunnel-termination-point'>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >
+ <parameter name="original_string" value='`$tmp.aai.dst-tp`'/>
+ <!--<parameter name="regex" value="[^-]+$"/>-->
+ <parameter name="regex" value="[-]+"/>
+ <parameter name="ctx_memory_result_key" value="param-prefix-dst-tp"/>
+ <outcome value='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='domain-B.ltpId' value='`$param-prefix-dst-tp[$param-prefix-dst-tp_length -1]`' />
+ </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>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="pnf"
+ key="pnf.pnf-name = $tmp.dst-pnf-name"
+ pfx='tmp.aai.dst-pnf' local-only='false' >
+ <!--AND depth = '0'"-->
+ <outcome value='success'>
+ <block>
+ <set>
+ <parameter name='domain-B.node-id' value="`$tmp.aai.dst-pnf.pnf-id`" />
+ <parameter name='domain-B.tpn' value='1' />
+ </set>
+ <for silentFailure='true' index='mvidx' start='0' end='`$tmp.aai.dst-pnf.relationship-list.relationship_length`' >
+ <switch test='`$tmp.aai.dst-pnf.relationship-list.relationship[$mvidx].related-to`'>
+ <outcome value='network-resource'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.domain-B.network-id' value="`$tmp.aai.dst-pnf.relationship-list.relationship[$mvidx].relationship-data[0].relationship-value`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="network-resource"
+ key="network-resource.network-id = $tmp.domain-B.network-id
+ AND depth = '0'"
+ pfx='tmp.aai.dst-network-resource' local-only='false' >
+ <outcome value='success'>
+ <set>
+ <parameter name='domain-B.network-id' value="`$tmp.aai.dst-network-resource.network-id`" />
+ <parameter name='domain-B.provider-id' value="`$tmp.aai.dst-network-resource.provider-id`" />
+ <parameter name='domain-B.client-id' value="`$tmp.aai.dst-network-resource.client-id`" />
+ <parameter name='domain-B.te-topo-id' value="`$tmp.aai.dst-network-resource.te-topo-id`" />
+ <parameter name='domain-B.network-type' value="`$tmp.aai.dst-network-resource.network-type`" />
+ </set>
+ </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.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>
+ <set>
+ <parameter name='tmp.domain-B.ttp-id' value="`$tmp.aai.dst-tp.relationship-list.relationship[$vidx].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.domain-B.ttp-id
+ AND depth = '0'"
+ pfx='tmp.aai.dst-ttp' local-only='false' >
+ <outcome value='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='domain-B.tunnel-tp-id' value="`$tmp.aai.dst-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.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>
+ <break/>
+ </block>
+ </outcome>
+ </switch>
+ </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>
+ </for>
+ </block>
+ </method>
+</service-logic>
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/xml/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-activate.xml b/platform-logic/generic-resource-api/src/main/xml/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-activate.xml new file mode 100644 index 00000000..c3b48106 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-activate.xml @@ -0,0 +1,464 @@ +<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='tsli-vnf-topology-operation-trans-slice-activate' mode='sync'>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
+ <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />
+ <parameter name='contextPrefix' value='prop' />
+ </execute>
+ <!--<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'>
+ <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">
+ <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='success'>
+ <block atomic="true">
+ <switch test='`$tmp.aai.vpn-binding.dst-access-ltp-id`'>
+ <outcome value='Other'>
+ <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-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.ts-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="post"/>
+ <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 vpn rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ </execute>
+ <set>
+ <parameter name='eth-service-name' value='`$tmp.aai.connectivityA.connectivity-id`' />
+ <parameter name='provider-id' value='`$tmp.aai.connectivityA.access-provider-id`' />
+ <parameter name='client-id' value='`$tmp.aai.connectivityA.access-client-id`' />
+ <parameter name='topology-id' value='`$tmp.aai.connectivityA.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`' />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.ts-ethernet-service.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="post"/>
+ <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'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error executing Create vpn rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true">
+ <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-id`' />
+ <parameter name='operational-status' value='Activated' />
+ </update>
+ <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity'
+ key='connectivity.connectivity-id = $tmp.aai.connectivityA.connectivity-id'>
+ <parameter name='connectivity-id' value='`$tmp.aai.connectivityA.connectivity-id`' />
+ <parameter name='operational-status' value='Activated' />
+ </update>
+ </block>
+ </outcome>
+ </execute>
+ </block>
+ </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-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-src-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.ts-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="post"/>
+ <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 vpn rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ </execute>
+ <set>
+ <parameter name='eth-service-name' value='`$tmp.aai.connectivityB.connectivity-id`' />
+ <parameter name='provider-id' value='`$tmp.aai.connectivityB.access-provider-id`' />
+ <parameter name='client-id' value='`$tmp.aai.connectivityB.access-client-id`' />
+ <parameter name='topology-id' value='`$tmp.aai.connectivityB.access-topology-id`' />
+ <parameter name='otn-tunnel-name' value='`$tmp.aai.vpn-bindingB.vpn-name`' />
+ <parameter name='ethernet-end-point-name' value='`$tmp.aai.connectivityB.connectivity-id`' />
+ <parameter name='index-number' value='0' />
+ <parameter name='eth-node-id' value='`$tmp.aai.connectivityB.access-node-id`' />
+ <parameter name='eth-node-tp-id' value='`$tmp.aai.connectivityB.access-ltp-id`' />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.ts-ethernet-service.templatefile`" />
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domainB.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.domainB.user`" />
+ <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domainB.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'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error executing Create vpn rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true">
+ <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-id`' />
+ <parameter name='operational-status' value='Activated' />
+ </update>
+ <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity'
+ key='connectivity.connectivity-id = $tmp.aai.connectivityB.connectivity-id'>
+ <parameter name='connectivity-id' value='`$tmp.aai.connectivityB.connectivity-id`' />
+ <parameter name='operational-status' value='Activated' />
+ </update>
+ </block>
+ </outcome>
+ </execute>
+ </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='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>
+ </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>
+ <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/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-allocate.xml b/platform-logic/generic-resource-api/src/main/xml/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-allocate.xml new file mode 100644 index 00000000..33e7facb --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-allocate.xml @@ -0,0 +1,923 @@ +<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='tsli-vnf-topology-operation-trans-slice-allocate' 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_length != 0`'>
+ <outcome value='false'></outcome>
+ <outcome value='true'>
+ <block>
+ <set>
+ <parameter name='allotted-resource-id' value="`$tmp.aai.service-instance.allotted-resources.allotted-resource[0].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`" />
+ </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>
+ <set>
+ <parameter name='network-route-A' value="`$tmp.aai.logical-link.link-name`" />
+ </set>
+ <set>
+ <parameter name='network-route-B' 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-A'
+ local-only="false"
+ force="true" pfx="tmp.aai.network-route-A">
+ <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">
+ <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>
+ <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='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='' />
+ <parameter name='bandwidth-profile-name' value='`$prop.sotn.etht-svc-name`' />
+ <parameter name='vpn-type' value='`$prop.sotn.vpnType`' />
+ <parameter name='CIR' value='`$prop.sotn.cir`' />
+ <parameter name='EIR' value='`$prop.sotn.eir`' />
+ <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>
+ <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>
+ </block>
+ </outcome>
+ </get-resource>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="network-route"
+ key='network-route.route-id = $network-route-B'
+ local-only="false"
+ force="true" pfx="tmp.aai.network-route-B">
+ <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">
+ <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>
+ <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`' />
+ <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='' />
+ <parameter name='bandwidth-profile-name' value='`$prop.sotn.etht-svc-name`' />
+ <parameter name='vpn-type' value='`$prop.sotn.vpnType`' />
+ <parameter name='CIR' value='`$prop.sotn.cir`' />
+ <parameter name='EIR' value='`$prop.sotn.eir`' />
+ <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>
+ <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>
+ </block>
+ </outcome>
+ </get-resource>
+ <set>
+ <parameter name='prop.connection-attachment.access-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />
+ <parameter name='prop.connection-attachment.access-client-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -7]`' />
+ <parameter name='prop.connection-attachment.access-topology-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -5]`' />
+ <parameter name='prop.connection-attachment.access-node-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />
+ <parameter name='prop.connection-attachment.access-ltp-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -1]`' />
+ <parameter name='prop.remote.connection-attachment.access-provider-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -9]`' />
+ <parameter name='prop.remote.connection-attachment.access-client-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -7]`' />
+ <parameter name='prop.remote.connection-attachment.access-topology-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -5]`' />
+ <parameter name='prop.remote.connection-attachment.access-node-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -3]`' />
+ <parameter name='prop.remote.connection-attachment.access-ltp-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -1]`' />
+ <!--<parameter name='prop.remote.connection-attachment.access-provider-id' value='`$oof.vpn.access-provider-id`' />-->
+ <!--<parameter name='prop.remote.connection-attachment.access-client-id' value='`$oof.vpn.access-client-id`' />-->
+ <!--<parameter name='prop.remote.connection-attachment.access-topology-id' value='`$oof.vpn.access-topology-id`' />-->
+ <!--<parameter name='prop.remote.connection-attachment.access-node-id' value='`$oof.vpn.access-node-id`' />-->
+ <!--<parameter name='prop.remote.connection-attachment.access-ltp-id' value='`$oof.vpn.src-access-ltp-id`' />-->
+ </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='generateUUID' >
+ <parameter name="ctx-destination" value="prop.vpn-binding-domainA-uuid"/>
+ </execute>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
+ key='vpn-binding.vpn-id = $prop.vpn-binding-domainA-uuid' >
+ <parameter name='vpn-id' value='`$prop.vpn-binding-domainA-uuid`' />
+ <parameter name='vpn-name' value='`$prop.vpn-binding-domainA-uuid`' />
+ <parameter name='access-provider-id' value='`$domain-A.provider-id`' />
+ <!--<parameter name='access-provider-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -9]`' />-->
+ <parameter name='access-client-id' value='`$domain-A.client-id`' />
+ <!--<parameter name='access-client-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -7]`' />-->
+ <parameter name='access-topology-id' value='`$domain-A.te-topo-id`' />
+ <!--<parameter name='access-topology-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -5]`' />-->
+ <parameter name='src-access-node-id' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />
+ <!--<parameter name='src-access-ltp-id' value='`$source.tunnel-tp-id`' />-->
+ <parameter name='src-access-ltp-id' value='' />
+ <parameter name='dst-access-node-id' value='`$domain-A.node-id`' />
+ <parameter name='dst-access-ltp-id' value='`$domain-A.tunnel-tp-id`' />
+ <parameter name='vpn-type' value='`$prop.global.sotn.vpnType`' />
+ <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`' />
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding:relationship-list'
+ key='vpn-binding.vpn-id = $prop.vpn-binding-domainA-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-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>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
+ <parameter name="ctx-destination" value="prop.vpn-binding-domainB-uuid"/>
+ </execute>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
+ key='vpn-binding.vpn-id = $prop.vpn-binding-domainB-uuid' >
+ <parameter name='vpn-id' value='`$prop.vpn-binding-domainB-uuid`' />
+ <parameter name='vpn-name' value='`$prop.vpn-binding-domainB-uuid`' />
+ <parameter name='access-provider-id' value='`$domain-B.provider-id`' />
+ <!--<parameter name='access-provider-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -9]`' />-->
+ <parameter name='access-client-id' value='`$domain-B.client-id`' />
+ <!--<parameter name='access-client-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -7]`' />-->
+ <parameter name='access-topology-id' value='`$domain-B.te-topo-id`' />
+ <!--<parameter name='access-topology-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -5]`' />-->
+ <parameter name='src-access-node-id' value='`$domain-B.node-id`' />
+ <parameter name='src-access-ltp-id' value='`$domain-B.tunnel-tp-id`' />
+ <parameter name='dst-access-node-id' value='`$param-prefix-domainB[$param-prefix-domainB_length -3]`' />
+ <!--<parameter name='dst-access-ltp-id' value='`$destination.tunnel-tp-id`' />-->
+ <parameter name='dst-access-ltp-id' value='' />
+ <parameter name='vpn-type' value='`$prop.global.sotn.vpnType`' />
+ <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`' />
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding:relationship-list'
+ key='vpn-binding.vpn-id = $prop.vpn-binding-domainB-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/' + $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>
+ <set>
+ <parameter name='request-id' value='`$prop.vpn-binding-domainA-uuid`' />
+ <parameter name='otn-source-node' value='`$param-prefix-domainA[$param-prefix-domainA_length -3]`' />
+ <parameter name='otn-dest-node' value='`$domain-A.node-id`' />
+ <parameter name='bw-odu' value="`'0,' + $maximum-bandwidth /1000 *2 /3 `" />
+ <!--<parameter name='src-ttp-id' value='`$source.tunnel-tp-id`' />-->
+ <parameter name='dst-ttp-id' value='`$domain-A.tunnel-tp-id`' />
+ <parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.transport-slice-creation.templatefile`" />
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domainA.url + '/restconf/operations/ietf-optical-slice:create-optical-slice'`" />
+ <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="post"/>
+ <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 OOF api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ </execute>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.ts-coloring-uni-port.templatefile`" />
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domainA.url + '/restconf/data/ietf-network:networks/network=' + $tmp.domainA.eth-network-id + '/node=' + $tmp.src.pnf-name + '/ietf-network-topology:termination-point=' + $tmp.src.ltpId + '/ietf-te-topology:te/ietf-optical-slice:tp-slice-id' `" />
+ <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="post"/>
+ <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 OOF api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ </execute>
+ <set>
+ <parameter name='request-id' value='`$prop.vpn-binding-domainB-uuid`' />
+ <parameter name='otn-source-node' value='`$domain-B.node-id`' />
+ <parameter name='otn-dest-node' value='`$param-prefix-domainB[$param-prefix-domainB_length -3]`' />
+ <!--<parameter name='bw-odu' value='`$maximum-bandwidth /10`' />-->
+ <parameter name='bw-odu' value="`'0,' + $maximum-bandwidth /1000 *2 /3 `" />
+ <parameter name='src-ttp-id' value='`$domain-B.tunnel-tp-id`' />
+ <!--<parameter name='dst-ttp-id' value='`$destination.tunnel-tp-id`' />-->
+ <parameter name='dst-ttp-id' value='' />
+ <parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.transport-slice-creation.templatefile`" />
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domainB.url + '/restconf/operations/ietf-optical-slice:create-optical-slice'`" />
+ <!--<parameter name="restapiUrl" value="`$prop.restapi.connection-oof-url`" />-->
+ <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="post"/>
+ <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 OOF api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ </execute>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.ts-coloring-uni-port.templatefile`" />
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domainB.url + '/restconf/data/ietf-network:networks/network=' + $tmp.domainB.eth-network-id + '/node=' + $tmp.dst.pnf-name + '/ietf-network-topology:termination-point=' + $tmp.dst.ltpId + '/ietf-te-topology:te/ietf-optical-slice:tp-slice-id' `" />
+ <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="post"/>
+ <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 OOF api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ </execute>
+ </block>
+ </outcome>
+ </get-resource>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </get-resource>
+ </block>
+ </outcome>
+ </get-resource>
+ </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/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-deactivate.xml b/platform-logic/generic-resource-api/src/main/xml/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-deactivate.xml new file mode 100644 index 00000000..2517645d --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-deactivate.xml @@ -0,0 +1,250 @@ +<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='tsli-vnf-topology-operation-trans-slice-deactivate' mode='sync'>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
+ <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />
+ <parameter name='contextPrefix' value='prop' />
+ </execute>
+ <!--<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'>
+ <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">
+ <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='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.domain.pnf-name' value="`'networkId-providerId-' +
+ $tmp.aai.vpn-binding.access-provider-id + '-clientId-' +
+ $tmp.aai.vpn-binding.access-client-id + '-topologyId-' +
+ $tmp.aai.vpn-binding.access-topology-id + '-nodeId-' +
+ $tmp.aai.vpn-binding.src-access-node-id`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="pnf"
+ key="pnf.pnf-name = $tmp.domain.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.domain.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.domain.esr-thirdparty-id AND
+ depth = '1'"
+ pfx='tmp.aai.domain.esr-thirdparty-sdnc' local-only='false' >
+ <outcome value='success'>
+ <block>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domain.url' value="`$tmp.aai.domain.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domain.user' value="`$tmp.aai.domain.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domain.password' value="`$tmp.aai.domain.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>
+ <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.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.ts-otn-src-domain-creation.templatefile`" />-->
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domainA.url + '/restconf/data/ietf-te:te/tunnels/tunnel=' + $tmp.aai.vpn-binding.vpn-id`" />
+ <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="delete"/>
+ <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 vpn rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ </execute>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domain.url + '/restconf/data/ietf-eth-tran-service:etht-svc/eth-svc-instances=' + $tmp.aai.connectivity.connectivity-id`" />
+ <!--<parameter name="restapiUrl" value="`$prop.restapi.connection-oof-url`" />-->
+ <!--<parameter name="templateFileName" value="`$prop.restapi.templateDir + '/sotn-ethernet-service.json'`" />-->
+ <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domain.user`" />
+ <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domain.password`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="delete"/>
+ <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'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error executing Create vpn rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true">
+ <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
+ key='vpn-binding.vpn-id = $tmp.aai.vpn-binding.vpn-id' >
+ <parameter name='vpn-id' value='`$tmp.aai.vpn-binding.vpn-id`' />
+ <parameter name='vpn-name' value='`$tmp.aai.vpn-binding.vpn-id`' />
+ <parameter name='operational-status' value='Deactivated' />
+ </update>
+ <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='Deactivated' />
+ </update>
+ </block>
+ </outcome>
+ </execute>
+ </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>
+ </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>
+ </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>
+ <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/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-delete.xml b/platform-logic/generic-resource-api/src/main/xml/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-delete.xml new file mode 100644 index 00000000..648929a6 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/trans_slicing/GENERIC-RESOURCE-API_tsli-vnf-topology-operation-trans-slice-delete.xml @@ -0,0 +1,244 @@ +<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='tsli-vnf-topology-operation-trans-slice-delete' 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[$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'>
+ <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">
+ <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='success'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.domain.pnf-name' value="`'networkId-providerId-' +
+ $tmp.aai.vpn-binding.access-provider-id + '-clientId-' +
+ $tmp.aai.vpn-binding.access-client-id + '-topologyId-' +
+ $tmp.aai.vpn-binding.access-topology-id + '-nodeId-' +
+ $tmp.aai.vpn-binding.src-access-node-id`" />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="pnf"
+ key="pnf.pnf-name = $tmp.domain.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.domain.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.domain.esr-thirdparty-id AND
+ depth = '1'"
+ pfx='tmp.aai.domain.esr-thirdparty-sdnc' local-only='false' >
+ <outcome value='success'>
+ <block>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domain.url' value="`$tmp.aai.domain.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domain.user' value="`$tmp.aai.domain.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.domain.password' value="`$tmp.aai.domain.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>
+ <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.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>
+ <set>
+ <parameter name='slice-instance-id' value='`$tmp.aai.service-instance.service-instance-id`' />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.transport-slice-creation.templatefile`" />
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domain.url + '/restconf/operations/ietf-optical-slice:deallocate-optical-slice'`" />
+ <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domain.user`" />
+ <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domain.password`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="delete"/>
+ <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 vpn rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ </execute>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <!--<parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.ts-coloring-uni-port.templatefile`" />-->
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.domain.url + '/restconf/data/ietf-network:networks/network=networkId-providerId-' + $tmp.aai.connectivity.access-provider-id + '-clientId-' + $tmp.aai.connectivity.access-client-id + '-topologyId-' + $tmp.aai.connectivity.access-topology-id + '/node=' + $tmp.aai.connectivity.access-node-id + '/ietf-network-topology:termination-point=' + $tmp.aai.connectivity.access-ltp-id + '/ietf-te-topology:te/ietf-optical-slice:tp-slice-id' `" />
+ <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.domain.user`" />
+ <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.domain.password`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="delete"/>
+ <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 OOF api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ </execute>
+ <delete plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='connectivity'
+ key='connectivity.connectivity-id = $tmp.aai.connectivity.connectivity-id'></delete>
+ <delete plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='vpn-binding'
+ key='vpn-binding.vpn-id = $tmp.aai.vpn-binding.vpn-id' ></delete>
+ </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>
+ </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>
+ </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>
+ <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 |