diff options
Diffstat (limited to 'platform-logic')
41 files changed, 17574 insertions, 820 deletions
diff --git a/platform-logic/datachange/src/main/json/DataChange_data-change-notification.json b/platform-logic/datachange/src/main/json/DataChange_data-change-notification.json new file mode 100644 index 00000000..a68422ec --- /dev/null +++ b/platform-logic/datachange/src/main/json/DataChange_data-change-notification.json @@ -0,0 +1,170 @@ +[
+ {
+ "id": "14de9b29.eb77a5",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 116.00390625,
+ "y": 67.9999988079071,
+ "z": "bf7c0729.dcd628",
+ "wires": [
+ [
+ "1630f686.0be599"
+ ]
+ ]
+ },
+ {
+ "id": "1630f686.0be599",
+ "type": "service-logic",
+ "name": "DataChange ${project.version}",
+ "module": "DataChange",
+ "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='DataChange' version='${project.version}'>",
+ "outputs": 1,
+ "x": 302.1150550842285,
+ "y": 172.44447016716003,
+ "z": "bf7c0729.dcd628",
+ "wires": [
+ [
+ "8b5ae719.a8f008"
+ ]
+ ]
+ },
+ {
+ "id": "8b5ae719.a8f008",
+ "type": "method",
+ "name": "method data-change-notification",
+ "xml": "<method rpc='data-change-notification' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 299.5596046447754,
+ "y": 336.22225546836853,
+ "z": "bf7c0729.dcd628",
+ "wires": [
+ [
+ "d99c1956.418f78"
+ ]
+ ]
+ },
+ {
+ "id": "d99c1956.418f78",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 344.7818908691406,
+ "y": 451.1113257408142,
+ "z": "bf7c0729.dcd628",
+ "wires": [
+ [
+ "fa034db9.8bac4",
+ "1981ae.01d4be53"
+ ]
+ ]
+ },
+ {
+ "id": "fa034db9.8bac4",
+ "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": 552.3377494812012,
+ "y": 538.5561301708221,
+ "z": "bf7c0729.dcd628",
+ "wires": []
+ },
+ {
+ "id": "560d6ca1.0b4dd4",
+ "type": "call",
+ "name": "call esr-thirdparty-sdnc",
+ "xml": "<call module='DataChange' rpc='esr-thirdparty-sdnc' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1316.3379707336426,
+ "y": 346.66678977012634,
+ "z": "bf7c0729.dcd628",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "1981ae.01d4be53",
+ "type": "switchNode",
+ "name": "switch aai-node-type",
+ "xml": "<switch test='`$data-change-notification-input.aai-node-type`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 555.8866271972656,
+ "y": 414.88262701034546,
+ "z": "bf7c0729.dcd628",
+ "wires": [
+ [
+ "3eac43c0.8ab16c",
+ "935a0267.cd419"
+ ]
+ ]
+ },
+ {
+ "id": "3eac43c0.8ab16c",
+ "type": "other",
+ "name": "esr-thirdparty-sdnc",
+ "xml": "<outcome value='esr-thirdparty-sdnc'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 837.9185485839844,
+ "y": 346.05725717544556,
+ "z": "bf7c0729.dcd628",
+ "wires": [
+ [
+ "43f3171.d9a25e8"
+ ]
+ ]
+ },
+ {
+ "id": "935a0267.cd419",
+ "type": "other",
+ "name": "other",
+ "xml": "<outcome value='Other'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 795.8866920471191,
+ "y": 413.8826596736908,
+ "z": "bf7c0729.dcd628",
+ "wires": [
+ [
+ "b093dd51.fe287"
+ ]
+ ]
+ },
+ {
+ "id": "b093dd51.fe287",
+ "type": "returnFailure",
+ "name": "return failure",
+ "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"AAI node type not supported\" />",
+ "comments": "",
+ "x": 951.3312110900879,
+ "y": 413.99375891685486,
+ "z": "bf7c0729.dcd628",
+ "wires": []
+ },
+ {
+ "id": "43f3171.d9a25e8",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1040.0042114257812,
+ "y": 346.8262984752655,
+ "z": "bf7c0729.dcd628",
+ "wires": [
+ [
+ "560d6ca1.0b4dd4"
+ ]
+ ]
+ }
+]
\ No newline at end of file diff --git a/platform-logic/datachange/src/main/json/DataChange_esr-thirdparty-sdnc-discovery.json b/platform-logic/datachange/src/main/json/DataChange_esr-thirdparty-sdnc-discovery.json new file mode 100644 index 00000000..da0567b7 --- /dev/null +++ b/platform-logic/datachange/src/main/json/DataChange_esr-thirdparty-sdnc-discovery.json @@ -0,0 +1,379 @@ +[
+ {
+ "id": "865891e7.3a6c6",
+ "type": "other",
+ "name": "update",
+ "xml": "<outcome value='Update'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 673.4443511962891,
+ "y": 212.66669368743896,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "3eefa587.6bd50a"
+ ]
+ ]
+ },
+ {
+ "id": "4e8bb18c.6ca95",
+ "type": "other",
+ "name": "delete",
+ "xml": "<outcome value='delete'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 701.6665267944336,
+ "y": 484.33349609375,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "523ab02e.031c1"
+ ]
+ ]
+ },
+ {
+ "id": "523ab02e.031c1",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 857.1112060546875,
+ "y": 484.33351707458496,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "977d339.f9669d",
+ "type": "comment",
+ "name": "TODO: Delete topology from AAI",
+ "info": "",
+ "comments": "",
+ "x": 781.7777862548828,
+ "y": 447.0001811981201,
+ "z": "fce0b4d3.a9be08",
+ "wires": []
+ },
+ {
+ "id": "9b67a1c0.1e23e",
+ "type": "switchNode",
+ "name": "switch aai-event-trigger",
+ "xml": "<switch test=\"`$data-change-notification-input.aai-event-trigger`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 457.9999771118164,
+ "y": 351.2222261428833,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "865891e7.3a6c6",
+ "4e8bb18c.6ca95"
+ ]
+ ]
+ },
+ {
+ "id": "3eefa587.6bd50a",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "outputs": 1,
+ "x": 841.7781524658203,
+ "y": 211.11124515533447,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "8498ca44.850928",
+ "31425256.e48c3e",
+ "fd4c6f6.9751e9"
+ ]
+ ]
+ },
+ {
+ "id": "8498ca44.850928",
+ "type": "execute",
+ "name": "execute RestApiCallNode Get token",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1119.4376068115234,
+ "y": 167.03049993515015,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "c3c1ad15.85994",
+ "cd6736f3.94ff18"
+ ]
+ ]
+ },
+ {
+ "id": "c3c1ad15.85994",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1354.4376068115234,
+ "y": 145.03049993515015,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "e15c61b4.92509"
+ ]
+ ]
+ },
+ {
+ "id": "cd6736f3.94ff18",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1346.6876068115234,
+ "y": 198.6733832359314,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "40518e2c.2c734"
+ ]
+ ]
+ },
+ {
+ "id": "e15c61b4.92509",
+ "type": "set",
+ "name": "set token-id",
+ "xml": "<set>\n<parameter name='prop.sdncRestApi.token_id' value='`$token-result.data.token_id`' />\n",
+ "comments": "",
+ "x": 1508.4376068115234,
+ "y": 146.03049993515015,
+ "z": "fce0b4d3.a9be08",
+ "wires": []
+ },
+ {
+ "id": "31425256.e48c3e",
+ "type": "execute",
+ "name": "execute RestApiCallNode Get Topology",
+ "xml": "<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.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 1122.7710418701172,
+ "y": 260.73423767089844,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "ac09d1db.665eb",
+ "4c50157f.5bc03c"
+ ]
+ ]
+ },
+ {
+ "id": "ac09d1db.665eb",
+ "type": "success",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1381.3263664245605,
+ "y": 238.73421955108643,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "7a8d5805.fa1088"
+ ]
+ ]
+ },
+ {
+ "id": "7a8d5805.fa1088",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">",
+ "atomic": "true",
+ "comments": "",
+ "outputs": 1,
+ "x": 1556.8818969726562,
+ "y": 236.40094184875488,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "7717d78.ee45028",
+ "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": 1565.1041717529297,
+ "y": 310.62305545806885,
+ "z": "fce0b4d3.a9be08",
+ "wires": []
+ },
+ {
+ "id": "4c50157f.5bc03c",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1386.770851135254,
+ "y": 309.84528493881226,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "7717d78.ee45028"
+ ]
+ ]
+ },
+ {
+ "id": "fe88648c.ffce68",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 78.4443130493164,
+ "y": 91,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "7387008c.4a9fe"
+ ]
+ ]
+ },
+ {
+ "id": "7387008c.4a9fe",
+ "type": "service-logic",
+ "name": "DataChange ${project.version}",
+ "module": "DataChange",
+ "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='DataChange' version='${project.version}'>",
+ "outputs": 1,
+ "x": 236.55543899536133,
+ "y": 132.4444613456726,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "f56e7701.2fd2c8"
+ ]
+ ]
+ },
+ {
+ "id": "f56e7701.2fd2c8",
+ "type": "method",
+ "name": "method esr-thirdparty-sdnc-discovery",
+ "xml": "<method rpc='esr-thirdparty-sdnc-discovery' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 333,
+ "y": 243.22224235534668,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "4c6047b0.71e118"
+ ]
+ ]
+ },
+ {
+ "id": "4c6047b0.71e118",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 241.22222900390625,
+ "y": 352.11122035980225,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "9b67a1c0.1e23e"
+ ]
+ ]
+ },
+ {
+ "id": "fd4c6f6.9751e9",
+ "type": "for",
+ "name": "for each Network",
+ "xml": "<for index='nidx' start='0' end='`$topology.networks.network_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1054.9258041381836,
+ "y": 388.22217655181885,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "22efb538.f3605a"
+ ]
+ ]
+ },
+ {
+ "id": "22efb538.f3605a",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1244.925765991211,
+ "y": 395.9999694824219,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ [
+ "995bcad0.798cf8",
+ "31478e5.e5c4072"
+ ]
+ ]
+ },
+ {
+ "id": "995bcad0.798cf8",
+ "type": "call",
+ "name": "call update-network-to-aai",
+ "xml": "<call module='DataChange' rpc='update-network-to-aai' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1498.2591876983643,
+ "y": 459.3333396911621,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "31478e5.e5c4072",
+ "type": "set",
+ "name": "set network",
+ "xml": "<set>\n<parameter name='network.' value='`$topology.networks.network[$nidx].`' />\n",
+ "comments": "",
+ "x": 1450.4813079833984,
+ "y": 377.111083984375,
+ "z": "fce0b4d3.a9be08",
+ "wires": []
+ },
+ {
+ "id": "40518e2c.2c734",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1508.2590026855469,
+ "y": 193.7777624130249,
+ "z": "fce0b4d3.a9be08",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "793cc07c.4e65e",
+ "type": "comment",
+ "name": "Do Nothing",
+ "info": "",
+ "comments": "",
+ "x": 1643.814576466878,
+ "y": 192.666638162401,
+ "z": "fce0b4d3.a9be08",
+ "wires": []
+ }
+]
\ No newline at end of file diff --git a/platform-logic/datachange/src/main/json/DataChange_esr-thirdparty-sdnc.json b/platform-logic/datachange/src/main/json/DataChange_esr-thirdparty-sdnc.json new file mode 100644 index 00000000..5c40ac4c --- /dev/null +++ b/platform-logic/datachange/src/main/json/DataChange_esr-thirdparty-sdnc.json @@ -0,0 +1,320 @@ +[
+ {
+ "id": "d0fde8b6.3aa408",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 114.00390625,
+ "y": 42.00390625,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ [
+ "4796011e.231d3"
+ ]
+ ]
+ },
+ {
+ "id": "4796011e.231d3",
+ "type": "service-logic",
+ "name": "DataChange ${project.version}",
+ "module": "DataChange",
+ "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='DataChange' version='${project.version}'>",
+ "outputs": 1,
+ "x": 300.1150550842285,
+ "y": 146.44837760925293,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ [
+ "83e631da.db4b1"
+ ]
+ ]
+ },
+ {
+ "id": "83e631da.db4b1",
+ "type": "method",
+ "name": "method esr-thirdparty-sdnc",
+ "xml": "<method rpc='esr-thirdparty-sdnc' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 297.5596046447754,
+ "y": 310.2261629104614,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ [
+ "2d86f41b.00eefc"
+ ]
+ ]
+ },
+ {
+ "id": "2d86f41b.00eefc",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 252.7818717956543,
+ "y": 445.1152181625366,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ [
+ "1ccf3882.d71c77",
+ "41fd63bc.2e97bc",
+ "ba86cde8.fb9f3",
+ "b799af7a.5b9c9"
+ ]
+ ]
+ },
+ {
+ "id": "ba86cde8.fb9f3",
+ "type": "record",
+ "name": "record",
+ "xml": "<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.FileRecorder\">\n<parameter name=\"file\" value=\"/opt/opendaylight/current/data/log/svclogic.log\"/>\n<parameter name=\"field1\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"field2\" value=\"data-change-notification\"/>\n<parameter name=\"field3\" value=\"Config\"/>\n<parameter name=\"field4\" value=\"`service-url`\"/>\n<parameter name=\"field5\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url`\"/>",
+ "comments": "",
+ "outputs": 1,
+ "x": 542.00390625,
+ "y": 516.00390625,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "1ccf3882.d71c77",
+ "type": "call",
+ "name": "call validate-esr-thirdparty-sdnc-input",
+ "xml": "<call module='DataChange' rpc='validate-esr-thirdparty-sdnc-input' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 655.7815399169922,
+ "y": 379.0037097930908,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "41fd63bc.2e97bc",
+ "type": "for",
+ "name": "for 0..key-data_length",
+ "xml": "<for index='idx' start='0' end='`$data-change-notification-input.key-data_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 590.4480133056641,
+ "y": 461.19469451904297,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ [
+ "b1d2d6de.13b948"
+ ]
+ ]
+ },
+ {
+ "id": "b1d2d6de.13b948",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 762.3374786376953,
+ "y": 460.4169397354126,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ [
+ "1ad86336.4ad5cd",
+ "fa2d7e75.6219e",
+ "5d462805.1bcf28",
+ "44977471.592c0c"
+ ]
+ ]
+ },
+ {
+ "id": "1ad86336.4ad5cd",
+ "type": "switchNode",
+ "name": "switch service-url",
+ "xml": "<switch test=\"`$data-change-notification-input.key-data[$idx].key-name == 'service-url'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 974.5591812133789,
+ "y": 370.5280923843384,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ [
+ "49195641.421748"
+ ]
+ ]
+ },
+ {
+ "id": "49195641.421748",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1138.5593032836914,
+ "y": 369.5593252182007,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ [
+ "68e2f0ac.a4549"
+ ]
+ ]
+ },
+ {
+ "id": "68e2f0ac.a4549",
+ "type": "set",
+ "name": "set service-url",
+ "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.url' value='`$data-change-notification-input.key-data[$idx].key-value`' />\n",
+ "comments": "",
+ "x": 1292.5593948364258,
+ "y": 369.1593189239502,
+ "z": "57a3a26d.f7d23c",
+ "wires": []
+ },
+ {
+ "id": "fa2d7e75.6219e",
+ "type": "switchNode",
+ "name": "switch user-name",
+ "xml": "<switch test=\"`$data-change-notification-input.key-data[$idx].key-name == 'user-name'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 971.8489265441895,
+ "y": 439.7751522064209,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ [
+ "4a967272.ac408c"
+ ]
+ ]
+ },
+ {
+ "id": "4a967272.ac408c",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1140.8489151000977,
+ "y": 437.8063955307007,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ [
+ "a97aae71.052dc"
+ ]
+ ]
+ },
+ {
+ "id": "a97aae71.052dc",
+ "type": "set",
+ "name": "set user",
+ "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.user' value='`$data-change-notification-input.key-data[$idx].key-value`' />\n",
+ "comments": "",
+ "x": 1276.8490676879883,
+ "y": 437.40638637542725,
+ "z": "57a3a26d.f7d23c",
+ "wires": []
+ },
+ {
+ "id": "5d462805.1bcf28",
+ "type": "switchNode",
+ "name": "switch password",
+ "xml": "<switch test=\"`$data-change-notification-input.key-data[$idx].key-name == 'password'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 969.6267585754395,
+ "y": 505.33070182800293,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ [
+ "aa2c8a18.06def8"
+ ]
+ ]
+ },
+ {
+ "id": "aa2c8a18.06def8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1141.6267166137695,
+ "y": 505.36194705963135,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ [
+ "ae62fe3a.d8789"
+ ]
+ ]
+ },
+ {
+ "id": "ae62fe3a.d8789",
+ "type": "set",
+ "name": "set password",
+ "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.password' value='`$data-change-notification-input.key-data[$idx].key-value`' />\n",
+ "comments": "",
+ "x": 1296.6269607543945,
+ "y": 503.9619264602661,
+ "z": "57a3a26d.f7d23c",
+ "wires": []
+ },
+ {
+ "id": "b799af7a.5b9c9",
+ "type": "call",
+ "name": "call esr-thirdparty-sdnc-discovery",
+ "xml": "<call module='DataChange' rpc='esr-thirdparty-sdnc-discovery' mode='sync' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 613.4416656494141,
+ "y": 587.5529069900513,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "44977471.592c0c",
+ "type": "switchNode",
+ "name": "switch esr-system-info-id",
+ "xml": "<switch test=\"`$data-change-notification-input.key-data[$idx].key-name == 'esr-system-info-id'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 991.4480667114258,
+ "y": 559.3370685577393,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ [
+ "e1fdba16.c57aa8"
+ ]
+ ]
+ },
+ {
+ "id": "e1fdba16.c57aa8",
+ "type": "outcomeTrue",
+ "name": "true",
+ "xml": "<outcome value='true'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1166.4480438232422,
+ "y": 557.3682584762573,
+ "z": "57a3a26d.f7d23c",
+ "wires": [
+ [
+ "3f219327.b83efc"
+ ]
+ ]
+ },
+ {
+ "id": "3f219327.b83efc",
+ "type": "set",
+ "name": "set esr-system-info-id",
+ "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.id' value='`$data-change-notification-input.key-data[$idx].key-value`' />\n",
+ "comments": "",
+ "x": 1332.448013305664,
+ "y": 558.968282699585,
+ "z": "57a3a26d.f7d23c",
+ "wires": []
+ }
+]
\ No newline at end of file diff --git a/platform-logic/datachange/src/main/json/DataChange_update-network-to-aai.json b/platform-logic/datachange/src/main/json/DataChange_update-network-to-aai.json new file mode 100644 index 00000000..9e0f17a7 --- /dev/null +++ b/platform-logic/datachange/src/main/json/DataChange_update-network-to-aai.json @@ -0,0 +1,239 @@ +[
+ {
+ "id": "8623b35d.0cf2f",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 125.00390625,
+ "y": 106.00650644302368,
+ "z": "1ef7a393.52dc1c",
+ "wires": [
+ [
+ "e714b902.20b798"
+ ]
+ ]
+ },
+ {
+ "id": "e714b902.20b798",
+ "type": "service-logic",
+ "name": "DataChange ${project.version}",
+ "module": "DataChange",
+ "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='DataChange' version='${project.version}'>",
+ "outputs": 1,
+ "x": 327.0039291381836,
+ "y": 106.89541959762573,
+ "z": "1ef7a393.52dc1c",
+ "wires": [
+ [
+ "fb9820f4.4f92d"
+ ]
+ ]
+ },
+ {
+ "id": "fb9820f4.4f92d",
+ "type": "method",
+ "name": "method update-network-to-aai",
+ "xml": "<method rpc='update-network-to-aai' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 336.1151580810547,
+ "y": 178.22874116897583,
+ "z": "1ef7a393.52dc1c",
+ "wires": [
+ [
+ "b1c5fee.fa526"
+ ]
+ ]
+ },
+ {
+ "id": "b1c5fee.fa526",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 583.3373489379883,
+ "y": 176.78443002700806,
+ "z": "1ef7a393.52dc1c",
+ "wires": [
+ [
+ "d5568e89.0fd49",
+ "65e1e67.b95e318",
+ "fcfec7b9.699088"
+ ]
+ ]
+ },
+ {
+ "id": "d5568e89.0fd49",
+ "type": "update",
+ "name": "save Zone",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='zone' \n key='zone.zone-id = $tmp.network-id' >\n<parameter name='zone-id' value='`$tmp.network-id`' />\n<parameter name='zone-name' value='`$network.client-id`' />\n<parameter name='design-type' value='`$network.te-topology-id`' />\n<parameter name='zone-context' value='`$network.provider-id`' />\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 808.3371810913086,
+ "y": 176.00651788711548,
+ "z": "1ef7a393.52dc1c",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "af980bc1.1f72b8",
+ "type": "update",
+ "name": "save pnf",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='pnf' \n key='pnf.pnf-name = $node.node-id' >\n<parameter name='pnf-name' value='`$node.node-id`' />\n<parameter name='pnf-id' value='`$node.node-id`' />\n<parameter name='in-maint' value='true' />\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1052.1150245666504,
+ "y": 271.11759901046753,
+ "z": "1ef7a393.52dc1c",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "65e1e67.b95e318",
+ "type": "for",
+ "name": "for each node",
+ "xml": "<for index='pidx' start='0' end='`$network.node_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 823.8927383422852,
+ "y": 339.33982038497925,
+ "z": "1ef7a393.52dc1c",
+ "wires": [
+ [
+ "af980bc1.1f72b8",
+ "476a4fdb.dc5f5",
+ "96688ca0.6a9f6",
+ "9b63a4a9.acd508",
+ "8140ea7f.0a90f8"
+ ]
+ ]
+ },
+ {
+ "id": "476a4fdb.dc5f5",
+ "type": "set",
+ "name": "set network",
+ "xml": "<set>\n<parameter name='node.' value='`$network.node[$pidx].`' />\n",
+ "comments": "",
+ "x": 1062.114990234375,
+ "y": 202.22872114181519,
+ "z": "1ef7a393.52dc1c",
+ "wires": []
+ },
+ {
+ "id": "96688ca0.6a9f6",
+ "type": "save",
+ "name": "save pnf relationship to zone in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='pnf:relationship-list' \n key='pnf.pnf-name = $node.node-id' force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"zone\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/zones/zone/' + $tmp.network-id`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"zone.zone-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$tmp.network-id`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 1138.7819213867188,
+ "y": 344.4509873390198,
+ "z": "1ef7a393.52dc1c",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "9b63a4a9.acd508",
+ "type": "for",
+ "name": "for each termination point",
+ "xml": "<for index='tidx' start='0' end='`$node.termination-point_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1099.448387145996,
+ "y": 497.11759424209595,
+ "z": "1ef7a393.52dc1c",
+ "wires": [
+ [
+ "b34b1b54.abd288",
+ "66fee673.3f4e78",
+ "6031db9d.646964",
+ "3a479676.ca94ea"
+ ]
+ ]
+ },
+ {
+ "id": "b34b1b54.abd288",
+ "type": "set",
+ "name": "set termination point",
+ "xml": "<set>\n<parameter name='tp.' value='`$node.termination-point[$tidx].`' />\n",
+ "comments": "",
+ "x": 1480.1151962280273,
+ "y": 384.00655603408813,
+ "z": "1ef7a393.52dc1c",
+ "wires": []
+ },
+ {
+ "id": "66fee673.3f4e78",
+ "type": "update",
+ "name": "save logical-link",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='logical-link' \n key='logical-link.link-name = $unique-ltpId' >\n<parameter name='link-name' value='`$unique-ltpId`' />\n<parameter name='link-type' value='VL' />\n<parameter name='speed-value' value='`$tp.te.interface-switching-capability[0].max-lsp-bandwidth[0].te-bandwidth.eth-bandwidth`' />\n<parameter name='in-maint' value='`$tp.svc.supported-classification.transparent`' />\n\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1463.8188934326172,
+ "y": 509.5621018409729,
+ "z": "1ef7a393.52dc1c",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "6031db9d.646964",
+ "type": "save",
+ "name": "save pnf relationship to logical-link in AAI",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='pnf:relationship-list' \n key='pnf.pnf-name = $node.node-id' force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"logical-link\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/logical-links/logical-link/' + $unique-ltpId`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"logical-link.link-name\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$unique-ltpId`\" />",
+ "comments": "",
+ "outputs": 1,
+ "x": 1542.7077331542969,
+ "y": 577.3398509025574,
+ "z": "1ef7a393.52dc1c",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "3a479676.ca94ea",
+ "type": "set",
+ "name": "set unique-ltpId",
+ "xml": "<set>\n<parameter name='unique-ltpId' value=\"`'nodeId-' + $node.node-id + '-ltpId-' + $tp.te-tp-id`\" />\n",
+ "comments": "",
+ "x": 1459.0040893554688,
+ "y": 445.1176323890686,
+ "z": "1ef7a393.52dc1c",
+ "wires": []
+ },
+ {
+ "id": "fcfec7b9.699088",
+ "type": "execute",
+ "name": "execute",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$network.network-id`\"/>\n <parameter name=\"outputPath\" value=\"tmp.network-id\"/>\n <parameter name=\"target\" value=\"/\"/>\n <parameter name=\"replacement\" value=\"-\"/>\n ",
+ "comments": "",
+ "outputs": 1,
+ "x": 796.9974060058594,
+ "y": 79.99999856948853,
+ "z": "1ef7a393.52dc1c",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "8140ea7f.0a90f8",
+ "type": "save",
+ "name": "save pnf relation with esr-thirdparty-sdnc",
+ "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='esr-thirdparty-sdnc:relationship-list' \n key='esr-thirdparty-sdnc.thirdparty-sdnc-id = $prop.sdncRestApi.thirdpartySdnc.id' \n force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"pnf\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/pnfs/pnf/' + $node.node-id`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"pnf.pnf-name\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$node.node-id`\" />\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 1119.00390625,
+ "y": 414.9999985694885,
+ "z": "1ef7a393.52dc1c",
+ "wires": [
+ []
+ ]
+ }
+]
\ No newline at end of file diff --git a/platform-logic/datachange/src/main/json/DataChange_validate-esr-thirdparty-sdnc-input.json b/platform-logic/datachange/src/main/json/DataChange_validate-esr-thirdparty-sdnc-input.json new file mode 100644 index 00000000..b17138e0 --- /dev/null +++ b/platform-logic/datachange/src/main/json/DataChange_validate-esr-thirdparty-sdnc-input.json @@ -0,0 +1,457 @@ +[
+ {
+ "id": "757023b0.c2468c",
+ "type": "dgstart",
+ "name": "DGSTART",
+ "outputs": 1,
+ "x": 117.00390625,
+ "y": 95.99999871850014,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "7a528753.0793a8"
+ ]
+ ]
+ },
+ {
+ "id": "7a528753.0793a8",
+ "type": "service-logic",
+ "name": "DataChange ${project.version}",
+ "module": "DataChange",
+ "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='DataChange' version='${project.version}'>",
+ "outputs": 1,
+ "x": 320.11501693725586,
+ "y": 98.00002494454384,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "ae93aaac.418418"
+ ]
+ ]
+ },
+ {
+ "id": "ae93aaac.418418",
+ "type": "method",
+ "name": "method validate-esr-thirdparty-sdnc-input",
+ "xml": "<method rpc='validate-esr-thirdparty-sdnc-input' mode='sync'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 398.5596008300781,
+ "y": 220.00002479553223,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "37ee7462.da3a1c"
+ ]
+ ]
+ },
+ {
+ "id": "2152ae75.5db0e2",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2487.0038986206055,
+ "y": 1273.5555483400822,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "e2ca5b21.1154c8"
+ ]
+ ]
+ },
+ {
+ "id": "e2ca5b21.1154c8",
+ "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": 2668.0038986206055,
+ "y": 1271.5555483400822,
+ "z": "43ea58cb.5b56b8",
+ "wires": []
+ },
+ {
+ "id": "6fe2c29e.8f19cc",
+ "type": "failure",
+ "name": "failure",
+ "xml": "<outcome value='failure'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2485.0038986206055,
+ "y": 1375.5555483400822,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "e3dd559f.6ba7b8"
+ ]
+ ]
+ },
+ {
+ "id": "e3dd559f.6ba7b8",
+ "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": 2666.0038986206055,
+ "y": 1373.5555483400822,
+ "z": "43ea58cb.5b56b8",
+ "wires": []
+ },
+ {
+ "id": "47680dcc.0511d4",
+ "type": "failure",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2486.0038986206055,
+ "y": 1207.5555483400822,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "18757b49.6ae535"
+ ]
+ ]
+ },
+ {
+ "id": "f3d08cd7.3ee9b",
+ "type": "failure",
+ "name": "success",
+ "xml": "<outcome value='success'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 2482.0038986206055,
+ "y": 1327.5555483400822,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "20888a03.0d8406"
+ ]
+ ]
+ },
+ {
+ "id": "18757b49.6ae535",
+ "type": "set",
+ "name": "set route1 ip-prefix next-hop",
+ "xml": "<set>\n<parameter name='prop.l3vpn.sna1-route.ip-prefix' value='`$route1[0]`' />\n<parameter name='prop.l3vpn.sna1-route.next-hop' value='`$route1[1]`' />\n",
+ "comments": "",
+ "x": 2693.0038986206055,
+ "y": 1201.5555483400822,
+ "z": "43ea58cb.5b56b8",
+ "wires": []
+ },
+ {
+ "id": "20888a03.0d8406",
+ "type": "set",
+ "name": "set route2 ip-prefix next-hop",
+ "xml": "<set>\n<parameter name='prop.l3vpn.sna2-route.ip-prefix' value='`$route2[0]`' />\n<parameter name='prop.l3vpn.sna2-route.next-hop' value='`$route2[1]`' />",
+ "comments": "",
+ "x": 2693.0038986206055,
+ "y": 1320.5555483400822,
+ "z": "43ea58cb.5b56b8",
+ "wires": []
+ },
+ {
+ "id": "e1257f0.a7f488",
+ "type": "switchNode",
+ "name": "switch aai-node-type",
+ "xml": "<switch test='`$data-change-notification-input.aai-node-type`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 786.8929500579834,
+ "y": 374.5555830001831,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "ec1259f5.ebbc68"
+ ]
+ ]
+ },
+ {
+ "id": "ec1259f5.ebbc68",
+ "type": "other",
+ "name": "NULL",
+ "xml": "<outcome value=''>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1012.6072008950368,
+ "y": 357.5555825914653,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "df711004.31bd3"
+ ]
+ ]
+ },
+ {
+ "id": "df711004.31bd3",
+ "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=\"data-change-notification-input.aai-node-type is a required input\" />\n",
+ "comments": "",
+ "x": 1164.0357668740407,
+ "y": 357.55558068411665,
+ "z": "43ea58cb.5b56b8",
+ "wires": []
+ },
+ {
+ "id": "ecc0f598.db90c8",
+ "type": "switchNode",
+ "name": "switch aai-event-trigger",
+ "xml": "<switch test='`$data-change-notification-input.aai-event-trigger`'>\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 796.464277267456,
+ "y": 316.12700843811035,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "a9518242.ec786"
+ ]
+ ]
+ },
+ {
+ "id": "a9518242.ec786",
+ "type": "other",
+ "name": "NULL",
+ "xml": "<outcome value=''>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1011.1786212921143,
+ "y": 314.69840812683105,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "239438cd.9f0138"
+ ]
+ ]
+ },
+ {
+ "id": "239438cd.9f0138",
+ "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=\"data-change-notification-input.aai-event-trigger is a required input\" />\n",
+ "comments": "",
+ "x": 1161.1785945892334,
+ "y": 314.6984176635742,
+ "z": "43ea58cb.5b56b8",
+ "wires": []
+ },
+ {
+ "id": "4bbc510.85d9db",
+ "type": "for",
+ "name": "for 0..key-data_length",
+ "xml": "<for index='idx' start='0' end='`$data-change-notification-input.key-data_length`' >\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 785.3373355865479,
+ "y": 445.0000476837158,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "de7f2e06.cc171"
+ ]
+ ]
+ },
+ {
+ "id": "de7f2e06.cc171",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 737.2263736724854,
+ "y": 535.4444351196289,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "2f8a5311.978d7c",
+ "267435da.461d5a",
+ "596d52bd.fd695c"
+ ]
+ ]
+ },
+ {
+ "id": "a0ba4f6d.060be",
+ "type": "other",
+ "name": "NULL",
+ "xml": "<outcome value=''>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1183.671136856079,
+ "y": 557.7778100967407,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "49a377b1.d9e3a8"
+ ]
+ ]
+ },
+ {
+ "id": "577c0f47.e83ae",
+ "type": "other",
+ "name": "NULL",
+ "xml": "<outcome value=''>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1178.2425479888916,
+ "y": 496.92064571380615,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "713caa1.0fcb154"
+ ]
+ ]
+ },
+ {
+ "id": "713caa1.0fcb154",
+ "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=\"data-change-notification-input.key-data.key-data.service-url is a required input\" />\n",
+ "comments": "",
+ "x": 1367.2424297332764,
+ "y": 495.92064571380615,
+ "z": "43ea58cb.5b56b8",
+ "wires": []
+ },
+ {
+ "id": "8eb34243.18f14",
+ "type": "other",
+ "name": "NULL",
+ "xml": "<outcome value=''>",
+ "comments": "",
+ "outputs": 1,
+ "x": 1186.671136856079,
+ "y": 620.634973526001,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "347ffe80.91f072"
+ ]
+ ]
+ },
+ {
+ "id": "37ee7462.da3a1c",
+ "type": "block",
+ "name": "block : atomic",
+ "xml": "<block atomic=\"true\">\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 488.892822265625,
+ "y": 378.77777767181396,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "ecc0f598.db90c8",
+ "e1257f0.a7f488",
+ "4bbc510.85d9db"
+ ]
+ ]
+ },
+ {
+ "id": "2f8a5311.978d7c",
+ "type": "switchNode",
+ "name": "switch service-url",
+ "xml": "<switch test=\"`$data-change-notification-input.key-data[$idx].key-name == 'service-url'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 987.7076587677002,
+ "y": 495,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "577c0f47.e83ae"
+ ]
+ ]
+ },
+ {
+ "id": "267435da.461d5a",
+ "type": "switchNode",
+ "name": "switch user-name",
+ "xml": "<switch test=\"`$data-change-notification-input.key-data[$idx].key-name == 'user-name'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 987.9973659515381,
+ "y": 564.2470645904541,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "a0ba4f6d.060be"
+ ]
+ ]
+ },
+ {
+ "id": "596d52bd.fd695c",
+ "type": "switchNode",
+ "name": "switch password",
+ "xml": "<switch test=\"`$data-change-notification-input.key-data[$idx].key-name == 'password'`\">\n",
+ "comments": "",
+ "outputs": 1,
+ "x": 985.7751979827881,
+ "y": 629.8026142120361,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ [
+ "8eb34243.18f14"
+ ]
+ ]
+ },
+ {
+ "id": "49a377b1.d9e3a8",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1347.337236404419,
+ "y": 557.2222194671631,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "347ffe80.91f072",
+ "type": "block",
+ "name": "block",
+ "xml": "<block>\n",
+ "atomic": "false",
+ "comments": "",
+ "outputs": 1,
+ "x": 1350.670488357544,
+ "y": 626.11110496521,
+ "z": "43ea58cb.5b56b8",
+ "wires": [
+ []
+ ]
+ },
+ {
+ "id": "110d1cac.458883",
+ "type": "comment",
+ "name": "do nothing to support http",
+ "info": "",
+ "comments": "",
+ "x": 1542.8929843902588,
+ "y": 555.0000343322754,
+ "z": "43ea58cb.5b56b8",
+ "wires": []
+ },
+ {
+ "id": "83190729.11d658",
+ "type": "comment",
+ "name": "do nothing to support http",
+ "info": "",
+ "comments": "",
+ "x": 1542.8927783966064,
+ "y": 624.9999752044678,
+ "z": "43ea58cb.5b56b8",
+ "wires": []
+ }
+]
\ No newline at end of file diff --git a/platform-logic/datachange/src/main/resources/graph.versions b/platform-logic/datachange/src/main/resources/graph.versions new file mode 100644 index 00000000..5c1b0889 --- /dev/null +++ b/platform-logic/datachange/src/main/resources/graph.versions @@ -0,0 +1,5 @@ +DataChange data-change-notification ${project.version} sync +DataChange esr-thirdparty-sdnc ${project.version} sync +DataChange validate-esr-thirdparty-sdnc-input ${project.version} sync +DataChange esr-thirdparty-sdnc-discovery ${project.version} sync +DataChange update-network-to-aai ${project.version} sync diff --git a/platform-logic/datachange/src/main/xml/DataChange_data-change-notification.xml b/platform-logic/datachange/src/main/xml/DataChange_data-change-notification.xml new file mode 100644 index 00000000..76f2fe89 --- /dev/null +++ b/platform-logic/datachange/src/main/xml/DataChange_data-change-notification.xml @@ -0,0 +1,27 @@ +<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='DataChange' version='${project.version}'>
+ <method rpc='data-change-notification' mode='sync'>
+ <block atomic="true">
+ <switch test='`$data-change-notification-input.aai-node-type`'>
+ <outcome value='esr-thirdparty-sdnc'>
+ <block atomic="true">
+ <call module='DataChange' rpc='esr-thirdparty-sdnc' mode='sync' ></call>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="AAI node type not supported" />
+ </return>
+ </outcome>
+ </switch>
+ <return status='success'>
+ <parameter name="ack-final-indicator" value="Y" />
+ <parameter name="error-code" value="200" />
+ <parameter name="error-message" value="`$error-message`" />
+ </return>
+ </block>
+ </method>
+</service-logic>
\ No newline at end of file diff --git a/platform-logic/datachange/src/main/xml/DataChange_esr-thirdparty-sdnc-discovery.xml b/platform-logic/datachange/src/main/xml/DataChange_esr-thirdparty-sdnc-discovery.xml new file mode 100644 index 00000000..ba2ea398 --- /dev/null +++ b/platform-logic/datachange/src/main/xml/DataChange_esr-thirdparty-sdnc-discovery.xml @@ -0,0 +1,67 @@ +<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='DataChange' version='${project.version}'>
+ <method rpc='esr-thirdparty-sdnc-discovery' mode='sync'>
+ <block atomic="true">
+ <switch test="`$data-change-notification-input.aai-event-trigger`">
+ <outcome value='Update'>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/actokentemplate.json'`" />
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="post"/>
+ <parameter name="responsePrefix" value="token-result"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStorePassword" value="adminadmin"/>
+ <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
+ <parameter name="keyStorePassword" value="adminadmin"/>
+ <outcome value='success'>
+ <set>
+ <parameter name='prop.sdncRestApi.token_id' value='`$token-result.data.token_id`' />
+ </set>
+ </outcome>
+ <outcome value='failure'>
+ <block></block>
+ </outcome>
+ </execute>
+ <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.openecomp.client.jks"/>
+ <parameter name="trustStorePassword" value="adminadmin"/>
+ <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
+ <parameter name="keyStorePassword" value="adminadmin"/>
+ <parameter name='customHttpHeaders' value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error executing Create vpn rest api" />
+ </return>
+ </outcome>
+ </execute>
+ <for index='nidx' start='0' end='`$topology.networks.network_length`' >
+ <block>
+ <set>
+ <parameter name='network.' value='`$topology.networks.network[$nidx].`' />
+ </set>
+ <call module='DataChange' rpc='update-network-to-aai' mode='sync' ></call>
+ </block>
+ </for>
+ </block>
+ </outcome>
+ <outcome value='delete'>
+ <block atomic="true"></block>
+ </outcome>
+ </switch>
+ </block>
+ </method>
+</service-logic>
\ No newline at end of file diff --git a/platform-logic/datachange/src/main/xml/DataChange_esr-thirdparty-sdnc.xml b/platform-logic/datachange/src/main/xml/DataChange_esr-thirdparty-sdnc.xml new file mode 100644 index 00000000..33d91a7c --- /dev/null +++ b/platform-logic/datachange/src/main/xml/DataChange_esr-thirdparty-sdnc.xml @@ -0,0 +1,50 @@ +<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='DataChange' version='${project.version}'>
+ <method rpc='esr-thirdparty-sdnc' mode='sync'>
+ <block atomic="true">
+ <call module='DataChange' rpc='validate-esr-thirdparty-sdnc-input' mode='sync' ></call>
+ <for index='idx' start='0' end='`$data-change-notification-input.key-data_length`' >
+ <block>
+ <switch test="`$data-change-notification-input.key-data[$idx].key-name == 'service-url'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.url' value='`$data-change-notification-input.key-data[$idx].key-value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$data-change-notification-input.key-data[$idx].key-name == 'user-name'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.user' value='`$data-change-notification-input.key-data[$idx].key-value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$data-change-notification-input.key-data[$idx].key-name == 'password'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.password' value='`$data-change-notification-input.key-data[$idx].key-value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$data-change-notification-input.key-data[$idx].key-name == 'esr-system-info-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.id' value='`$data-change-notification-input.key-data[$idx].key-value`' />
+ </set>
+ </outcome>
+ </switch>
+ </block>
+ </for>
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+ <parameter name="file" value="/opt/opendaylight/current/data/log/svclogic.log"/>
+ <parameter name="field1" value="__TIMESTAMP__"/>
+ <parameter name="field2" value="data-change-notification"/>
+ <parameter name="field3" value="Config"/>
+ <parameter name="field4" value="`service-url`"/>
+ <parameter name="field5" value="`$prop.sdncRestApi.thirdpartySdnc.url`"/>
+ </record>
+ <call module='DataChange' rpc='esr-thirdparty-sdnc-discovery' mode='sync' ></call>
+ </block>
+ </method>
+</service-logic>
\ No newline at end of file diff --git a/platform-logic/datachange/src/main/xml/DataChange_update-network-to-aai.xml b/platform-logic/datachange/src/main/xml/DataChange_update-network-to-aai.xml new file mode 100644 index 00000000..cdd0edb9 --- /dev/null +++ b/platform-logic/datachange/src/main/xml/DataChange_update-network-to-aai.xml @@ -0,0 +1,69 @@ +<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='DataChange' version='${project.version}'>
+ <method rpc='update-network-to-aai' mode='sync'>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+ <parameter name="source" value="`$network.network-id`"/>
+ <parameter name="outputPath" value="tmp.network-id"/>
+ <parameter name="target" value="/"/>
+ <parameter name="replacement" value="-"/>
+ </execute>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='zone'
+ key='zone.zone-id = $tmp.network-id' >
+ <parameter name='zone-id' value='`$tmp.network-id`' />
+ <parameter name='zone-name' value='`$network.client-id`' />
+ <parameter name='design-type' value='`$network.te-topology-id`' />
+ <parameter name='zone-context' value='`$network.provider-id`' />
+ </save>
+ <for index='pidx' start='0' end='`$network.node_length`' >
+ <set>
+ <parameter name='node.' value='`$network.node[$pidx].`' />
+ </set>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='pnf'
+ key='pnf.pnf-name = $node.node-id' >
+ <parameter name='pnf-name' value='`$node.node-id`' />
+ <parameter name='pnf-id' value='`$node.node-id`' />
+ <parameter name='in-maint' value='true' />
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='pnf:relationship-list'
+ key='pnf.pnf-name = $node.node-id' force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="zone" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/zones/zone/' + $tmp.network-id`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="zone.zone-id" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$tmp.network-id`" />
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='esr-thirdparty-sdnc:relationship-list'
+ key='esr-thirdparty-sdnc.thirdparty-sdnc-id = $prop.sdncRestApi.thirdpartySdnc.id'
+ force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="pnf" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/pnfs/pnf/' + $node.node-id`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="pnf.pnf-name" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$node.node-id`" />
+ </save>
+ <for index='tidx' start='0' end='`$node.termination-point_length`' >
+ <set>
+ <parameter name='tp.' value='`$node.termination-point[$tidx].`' />
+ </set>
+ <set>
+ <parameter name='unique-ltpId' value="`'nodeId-' + $node.node-id + '-ltpId-' + $tp.te-tp-id`" />
+ </set>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='logical-link'
+ key='logical-link.link-name = $unique-ltpId' >
+ <parameter name='link-name' value='`$unique-ltpId`' />
+ <parameter name='link-type' value='VL' />
+ <parameter name='speed-value' value='`$tp.te.interface-switching-capability[0].max-lsp-bandwidth[0].te-bandwidth.eth-bandwidth`' />
+ <parameter name='in-maint' value='`$tp.svc.supported-classification.transparent`' />
+ </save>
+ <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='pnf:relationship-list'
+ key='pnf.pnf-name = $node.node-id' force="true" pfx="tmp.AnAI-data">
+ <parameter name="relationship-list.relationship[0].related-to" value="logical-link" />
+ <parameter name="relationship-list.relationship[0].related-link" value="`'/network/logical-links/logical-link/' + $unique-ltpId`" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="logical-link.link-name" />
+ <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$unique-ltpId`" />
+ </save>
+ </for>
+ </for>
+ </block>
+ </method>
+</service-logic>
\ No newline at end of file diff --git a/platform-logic/datachange/src/main/xml/DataChange_validate-esr-thirdparty-sdnc-input.xml b/platform-logic/datachange/src/main/xml/DataChange_validate-esr-thirdparty-sdnc-input.xml new file mode 100644 index 00000000..9c4443c3 --- /dev/null +++ b/platform-logic/datachange/src/main/xml/DataChange_validate-esr-thirdparty-sdnc-input.xml @@ -0,0 +1,49 @@ +<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='DataChange' version='${project.version}'>
+ <method rpc='validate-esr-thirdparty-sdnc-input' mode='sync'>
+ <block atomic="true">
+ <switch test='`$data-change-notification-input.aai-event-trigger`'>
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="data-change-notification-input.aai-event-trigger is a required input" />
+ </return>
+ </outcome>
+ </switch>
+ <switch test='`$data-change-notification-input.aai-node-type`'>
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="data-change-notification-input.aai-node-type is a required input" />
+ </return>
+ </outcome>
+ </switch>
+ <for index='idx' start='0' end='`$data-change-notification-input.key-data_length`' >
+ <block>
+ <switch test="`$data-change-notification-input.key-data[$idx].key-name == 'service-url'`">
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="data-change-notification-input.key-data.key-data.service-url is a required input" />
+ </return>
+ </outcome>
+ </switch>
+ <switch test="`$data-change-notification-input.key-data[$idx].key-name == 'user-name'`">
+ <outcome value=''>
+ <block></block>
+ </outcome>
+ </switch>
+ <switch test="`$data-change-notification-input.key-data[$idx].key-name == 'password'`">
+ <outcome value=''>
+ <block></block>
+ </outcome>
+ </switch>
+ </block>
+ </for>
+ </block>
+ </method>
+</service-logic>
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_connection-attachment-topology-operation.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_connection-attachment-topology-operation.json new file mode 100644 index 00000000..77d885af --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_connection-attachment-topology-operation.json @@ -0,0 +1,536 @@ +[ + { + "id": "b2143086.a417", + "type": "dgstart", + "name": "DGSTART", + "outputs": 1, + "x": 109.03125, + "y": 37.03125, + "z": "efb71132.eba6e", + "wires": [ + [ + "7e88a37a.69419c" + ] + ] + }, + { + "id": "7e88a37a.69419c", + "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": 247.03126525878906, + "y": 98.03124809265137, + "z": "efb71132.eba6e", + "wires": [ + [ + "90bc847a.1e90f8" + ] + ] + }, + { + "id": "90bc847a.1e90f8", + "type": "method", + "name": "connection-attachment-topology-operation", + "xml": "<method rpc='connection-attachment-topology-operation' mode='sync'>\n", + "comments": "", + "outputs": 1, + "x": 282.0312805175781, + "y": 146.03127670288086, + "z": "efb71132.eba6e", + "wires": [ + [ + "bf0dea50.c6f6f8" + ] + ] + }, + { + "id": "bf0dea50.c6f6f8", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 207.03125, + "y": 224.03124237060547, + "z": "efb71132.eba6e", + "wires": [ + [ + "4b652dbe.7deec4", + "976e09a7.a23c78", + "d692689.8b14098", + "f2e8c4be.f6edf8" + ] + ] + }, + { + "id": "4b652dbe.7deec4", + "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": 421.40042877197266, + "y": 836.8741173744202, + "z": "efb71132.eba6e", + "wires": [ + + ] + }, + { + "id": "976e09a7.a23c78", + "type": "switchNode", + "name": "switch svc-action", + "xml": "<switch test='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`'>\n", + "comments": "", + "outputs": 1, + "x": 428.0311737060547, + "y": 383.44496059417725, + "z": "efb71132.eba6e", + "wires": [ + [ + "7df40438.8d552c", + "854b6002.a361e", + "d0a5f285.16e91", + "a7c210e.8aeb8f", + "d7a3669.7308f98" + ] + ] + }, + { + "id": "d692689.8b14098", + "type": "call", + "name": "call GENERIC-RESOURCE-API:validate-connection-attachment-input", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='validate-connection-attachment-input' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 619.6026916503906, + "y": 204.01640129089355, + "z": "efb71132.eba6e", + "wires": [ + [ + + ] + ] + }, + { + "id": "7df40438.8d552c", + "type": "other", + "name": "activate", + "xml": "<outcome value='activate'>\n", + "comments": "", + "outputs": 1, + "x": 643.3169174194336, + "y": 392.58784008026123, + "z": "efb71132.eba6e", + "wires": [ + [ + "c747bb59.396bf8" + ] + ] + }, + { + "id": "854b6002.a361e", + "type": "other", + "name": "deactivate", + "xml": "<outcome value='deactivate'>\n", + "comments": "", + "outputs": 1, + "x": 653.3169784545898, + "y": 673.5880031585693, + "z": "efb71132.eba6e", + "wires": [ + [ + "5f2c7e54.e5319" + ] + ] + }, + { + "id": "d0a5f285.16e91", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 642.6502876281738, + "y": 758.9214267730713, + "z": "efb71132.eba6e", + "wires": [ + [ + "63b93e5c.700f6" + ] + ] + }, + { + "id": "63b93e5c.700f6", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"sdnc-request-header.svc-action is invalid\" />\n", + "comments": "", + "x": 824.6502838134766, + "y": 757.9214363098145, + "z": "efb71132.eba6e", + "wires": [ + + ] + }, + { + "id": "f2e8c4be.f6edf8", + "type": "set", + "name": "Set final indicator to Y", + "xml": "<set>\n<parameter name=\"ack-final\" value=\"Y\"/>", + "comments": "", + "x": 440.4281234741211, + "y": 796.0324559211731, + "z": "efb71132.eba6e", + "wires": [ + + ] + }, + { + "id": "a7c210e.8aeb8f", + "type": "other", + "name": "create", + "xml": "<outcome value='create'>\n", + "comments": "", + "outputs": 1, + "x": 642.5576133728027, + "y": 257.19257259368896, + "z": "efb71132.eba6e", + "wires": [ + [ + "8d1575e7.3d39d8" + ] + ] + }, + { + "id": "d7a3669.7308f98", + "type": "other", + "name": "delete", + "xml": "<outcome value='delete'>\n", + "comments": "", + "outputs": 1, + "x": 647.8909645080566, + "y": 533.8593759536743, + "z": "efb71132.eba6e", + "wires": [ + [ + "347f7912.887506" + ] + ] + }, + { + "id": "380d46d2.a08ada", + "type": "call", + "name": "call GENERIC-RESOURCE-API:sotn-attachment-topology-operation-create", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-attachment-topology-operation-create' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 1537.1175537109375, + "y": 208.57203483581543, + "z": "efb71132.eba6e", + "wires": [ + [ + + ] + ] + }, + { + "id": "8d1575e7.3d39d8", + "type": "switchNode", + "name": "switch request-action", + "xml": "<switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>\n", + "comments": "", + "outputs": 1, + "x": 833.5313034057617, + "y": 256.0312566757202, + "z": "efb71132.eba6e", + "wires": [ + [ + "b4498aac.7cb2b8", + "ed77a730.056558" + ] + ] + }, + { + "id": "b4498aac.7cb2b8", + "type": "outcome", + "name": "CreateSOTNAttachmentInstance", + "xml": "<outcome value='CreateSOTNAttachmentInstance'>", + "comments": "", + "outputs": 1, + "x": 1088.864517211914, + "y": 208.03106307983398, + "z": "efb71132.eba6e", + "wires": [ + [ + "380d46d2.a08ada" + ] + ] + }, + { + "id": "ed77a730.056558", + "type": "outcome", + "name": "other", + "xml": "<outcome value='other'>", + "comments": "", + "outputs": 1, + "x": 1018.8646240234375, + "y": 299.69779205322266, + "z": "efb71132.eba6e", + "wires": [ + [ + "1b79383c.71b538" + ] + ] + }, + { + "id": "1b79383c.71b538", + "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=\"`'Provided request-action=' + $connection-attachment-topology-operation-input.request-information.request-action + ' is not supported.'`\" />\n", + "comments": "", + "x": 1184.5312881469727, + "y": 300.03125762939453, + "z": "efb71132.eba6e", + "wires": [ + + ] + }, + { + "id": "b97ace55.086d3", + "type": "call", + "name": "call GENERIC-RESOURCE-API:sotn-attachment-topology-operation-activate", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-attachment-topology-operation-activate' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 1546.5312957763672, + "y": 343.03125953674316, + "z": "efb71132.eba6e", + "wires": [ + [ + + ] + ] + }, + { + "id": "a6785aab.86f948", + "type": "outcome", + "name": "ActivateSOTNAttachmentInstance", + "xml": "<outcome value='ActivateSOTNAttachmentInstance'>", + "comments": "", + "outputs": 1, + "x": 1096.278335571289, + "y": 345.4902935028076, + "z": "efb71132.eba6e", + "wires": [ + [ + "b97ace55.086d3" + ] + ] + }, + { + "id": "d100865f.7e59f8", + "type": "outcome", + "name": "other", + "xml": "<outcome value='other'>", + "comments": "", + "outputs": 1, + "x": 1026.2784423828125, + "y": 437.1570224761963, + "z": "efb71132.eba6e", + "wires": [ + [ + "19062ead.ade691" + ] + ] + }, + { + "id": "bbd40a3d.52a218", + "type": "outcome", + "name": "DeactivateSOTNAttachmentInstance", + "xml": "<outcome value='DeactivateSOTNAttachmentInstance'>", + "comments": "", + "outputs": 1, + "x": 1115.8645477294922, + "y": 484.0310802459717, + "z": "efb71132.eba6e", + "wires": [ + [ + "cdb50b2f.8ff328" + ] + ] + }, + { + "id": "6647d681.d75a78", + "type": "outcome", + "name": "other", + "xml": "<outcome value='other'>", + "comments": "", + "outputs": 1, + "x": 1030.8645706176758, + "y": 575.6977853775024, + "z": "efb71132.eba6e", + "wires": [ + [ + "dab4a1b3.5c9b3" + ] + ] + }, + { + "id": "cdb50b2f.8ff328", + "type": "call", + "name": "call GENERIC-RESOURCE-API:sotn-attachment-topology-operation-deactivate", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-attachment-topology-operation-deactivate' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 1574.5313720703125, + "y": 484.03126335144043, + "z": "efb71132.eba6e", + "wires": [ + [ + + ] + ] + }, + { + "id": "8c01d720.070a78", + "type": "outcome", + "name": "DeleteSOTNAttachmentInstance", + "xml": "<outcome value='DeleteSOTNAttachmentInstance'>", + "comments": "", + "outputs": 1, + "x": 1104.8644638061523, + "y": 625.0310564041138, + "z": "efb71132.eba6e", + "wires": [ + [ + "58c79286.6e607c" + ] + ] + }, + { + "id": "aa83e7c.d9f1218", + "type": "outcome", + "name": "other", + "xml": "<outcome value='other'>", + "comments": "", + "outputs": 1, + "x": 1034.8645706176758, + "y": 716.6977853775024, + "z": "efb71132.eba6e", + "wires": [ + [ + "4e0c491c.1e9da8" + ] + ] + }, + { + "id": "58c79286.6e607c", + "type": "call", + "name": "call GENERIC-RESOURCE-API:sotn-attachment-topology-operation-delete", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-attachment-topology-operation-delete' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 1560.5313415527344, + "y": 626.0312671661377, + "z": "efb71132.eba6e", + "wires": [ + [ + + ] + ] + }, + { + "id": "c747bb59.396bf8", + "type": "switchNode", + "name": "switch request-action", + "xml": "<switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>\n", + "comments": "", + "outputs": 1, + "x": 831.0313110351562, + "y": 397.03126335144043, + "z": "efb71132.eba6e", + "wires": [ + [ + "a6785aab.86f948", + "d100865f.7e59f8" + ] + ] + }, + { + "id": "347f7912.887506", + "type": "switchNode", + "name": "switch request-action", + "xml": "<switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>\n", + "comments": "", + "outputs": 1, + "x": 845.03125, + "y": 538.03125, + "z": "efb71132.eba6e", + "wires": [ + [ + "bbd40a3d.52a218", + "6647d681.d75a78" + ] + ] + }, + { + "id": "5f2c7e54.e5319", + "type": "switchNode", + "name": "switch request-action", + "xml": "<switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>\n", + "comments": "", + "outputs": 1, + "x": 848.03125, + "y": 673.03125, + "z": "efb71132.eba6e", + "wires": [ + [ + "8c01d720.070a78", + "aa83e7c.d9f1218" + ] + ] + }, + { + "id": "19062ead.ade691", + "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=\"`'Provided request-action=' + $connection-attachment-topology-operation-input.request-information.request-action + ' is not supported.'`\" />\n", + "comments": "", + "x": 1190.03125, + "y": 437.03125, + "z": "efb71132.eba6e", + "wires": [ + + ] + }, + { + "id": "dab4a1b3.5c9b3", + "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=\"`'Provided request-action=' + $connection-attachment-topology-operation-input.request-information.request-action + ' is not supported.'`\" />\n", + "comments": "", + "x": 1198.03125, + "y": 577.03125, + "z": "efb71132.eba6e", + "wires": [ + + ] + }, + { + "id": "4e0c491c.1e9da8", + "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=\"`'Provided request-action=' + $connection-attachment-topology-operation-input.request-information.request-action + ' is not supported.'`\" />\n", + "comments": "", + "x": 1203.03125, + "y": 716.03125, + "z": "efb71132.eba6e", + "wires": [ + + ] + } +]
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.json new file mode 100644 index 00000000..c640ab5b --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.json @@ -0,0 +1,816 @@ +[ + { + "id": "8213d9f3.3e3b78", + "type": "dgstart", + "name": "DGSTART", + "outputs": 1, + "x": 134.01040649414062, + "y": 78.01041412353516, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "3fd007b3.454158" + ] + ] + }, + { + "id": "3fd007b3.454158", + "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": 209.29611206054688, + "y": 118.24852561950684, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "f3d8ce84.4fd8" + ] + ] + }, + { + "id": "f3d8ce84.4fd8", + "type": "method", + "name": "method site-vnf-topology-operation-activate", + "xml": "<method rpc='site-vnf-topology-operation-activate' mode='sync'>\n", + "comments": "", + "outputs": 1, + "x": 230.43902587890625, + "y": 208.01041412353516, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "931047c0.e29ba8" + ] + ] + }, + { + "id": "931047c0.e29ba8", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 210.67707061767578, + "y": 379.67708587646484, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "87b79277.d3a8", + "443f31de.8f2cf", + "e48e518f.1dc2a", + "4a014615.6e9cf8", + "bf95d9ae.8087f8", + "c850e5af.e42fa8", + "b4c6f1a.73d561", + "d7008318.12e1b", + "3993fb6.79aca04", + "2b37bcac.68f084" + ] + ] + }, + { + "id": "87b79277.d3a8", + "type": "for", + "name": "for loop i - VNF input parameters", + "xml": "<for index='idx' start='0' end='`$ctx.vnf-data.vnf-request-input.vnf-input-parameters.param_length`' >\n", + "comments": "", + "outputs": 1, + "x": 663.1151428222656, + "y": 267.0782470703125, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "73aa520a.b2adbc" + ] + ] + }, + { + "id": "73aa520a.b2adbc", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 909.893337726593, + "y": 267.6338765351102, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "ac680e81.777c9", + "27ece0ee.53311", + "2e9d64a5.63180c", + "ad341ac7.a856e8", + "43160102.ca0c8", + "8a88d2d2.3cbb4" + ] + ] + }, + { + "id": "ac680e81.777c9", + "type": "switchNode", + "name": "switch name", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'name'`\">\n", + "comments": "", + "outputs": 1, + "x": 1115.1152267456055, + "y": 222.63385391235352, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "f0bc6f88.f42a7" + ] + ] + }, + { + "id": "f0bc6f88.f42a7", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1302.1152267456055, + "y": 218.63385391235352, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "a80ac0f1.029e7" + ] + ] + }, + { + "id": "a80ac0f1.029e7", + "type": "set", + "name": "set name", + "xml": "<set>\n<parameter name='prop.site.name' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 1470.1152267456055, + "y": 219.23386001586914, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "27ece0ee.53311", + "type": "switchNode", + "name": "switch description", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'description'`\">\n", + "comments": "", + "outputs": 1, + "x": 1132.9549446105957, + "y": 265.63384914398193, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "3c96f97e.2329d6" + ] + ] + }, + { + "id": "3c96f97e.2329d6", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1319.9549446105957, + "y": 261.63384914398193, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "38a8969d.eda21a" + ] + ] + }, + { + "id": "38a8969d.eda21a", + "type": "set", + "name": "set description", + "xml": "<set>\n<parameter name='prop.site.description' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 1481.2884254455566, + "y": 261.09500885009766, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "2e9d64a5.63180c", + "type": "switchNode", + "name": "switch location", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'location'`\">\n", + "comments": "", + "outputs": 1, + "x": 1123.04105758667, + "y": 308.0411911010742, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "4384d4ab.76bf6c" + ] + ] + }, + { + "id": "4384d4ab.76bf6c", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1310.04105758667, + "y": 304.0411911010742, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "3079a852.4cd8f8" + ] + ] + }, + { + "id": "3079a852.4cd8f8", + "type": "set", + "name": "set location", + "xml": "<set>\n<parameter name='prop.site.location' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 1478.04105758667, + "y": 304.64119720458984, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "ad341ac7.a856e8", + "type": "switchNode", + "name": "switch id", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'id'`\">\n", + "comments": "", + "outputs": 1, + "x": 1113.0103759765625, + "y": 176.607177734375, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "653e71ed.565a9" + ] + ] + }, + { + "id": "653e71ed.565a9", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1300.0103759765625, + "y": 172.607177734375, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "2466a0b0.31d85" + ] + ] + }, + { + "id": "2466a0b0.31d85", + "type": "set", + "name": "set id", + "xml": "<set>\n<parameter name='prop.site.id' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 1468.0103759765625, + "y": 173.20718383789062, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "43160102.ca0c8", + "type": "switchNode", + "name": "switch type", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'type'`\">\n", + "comments": "", + "outputs": 1, + "x": 1122.0103759765625, + "y": 351.60717010498047, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "5f80b289.c102cc" + ] + ] + }, + { + "id": "5f80b289.c102cc", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1309.0103759765625, + "y": 347.60717010498047, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "123b0821.89fa08" + ] + ] + }, + { + "id": "123b0821.89fa08", + "type": "set", + "name": "set type & sdwan.site", + "xml": "<set>\n<parameter name='prop.site.type' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n<parameter name='tmp.sdwan.site' value='true' />", + "comments": "", + "x": 1507.0103759765625, + "y": 347.2071838378906, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "8a88d2d2.3cbb4", + "type": "switchNode", + "name": "switch role", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'role'`\">\n", + "comments": "", + "outputs": 1, + "x": 1125.0103759765625, + "y": 394.60717010498047, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "dbc514.9b453af" + ] + ] + }, + { + "id": "dbc514.9b453af", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1312.0103759765625, + "y": 390.60717010498047, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "78dc31fa.1149c" + ] + ] + }, + { + "id": "78dc31fa.1149c", + "type": "set", + "name": "set role & sdwan.site", + "xml": "<set>\n<parameter name='prop.site.role' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n<parameter name='tmp.sdwan.site' value='true' />\n", + "comments": "", + "x": 1520.0103759765625, + "y": 390.2071838378906, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "443f31de.8f2cf", + "type": "switchNode", + "name": "switch service-data.vnfs.vnf_length", + "xml": "<switch test='`$service-data.vnfs.vnf_length`'>\n", + "comments": "", + "outputs": 1, + "x": 671, + "y": 69, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "d2748c44.5140a", + "132b0e47.fe6172", + "6c7ae40f.24628c" + ] + ] + }, + { + "id": "d2748c44.5140a", + "type": "other", + "name": "Null", + "xml": "<outcome value=''>\n", + "comments": "", + "outputs": 1, + "x": 1084, + "y": 62.00006103515625, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "910f30c.abfcad" + ] + ] + }, + { + "id": "910f30c.abfcad", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data\" />\n", + "comments": "", + "x": 1302.7774658203125, + "y": 37.889007568359375, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "132b0e47.fe6172", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 996.0003662109375, + "y": 116.00007629394531, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "2df38444.65759c" + ] + ] + }, + { + "id": "2df38444.65759c", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1167.2698974609375, + "y": 99.55461120605469, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "1580b603.a7115a", + "2393097b.207106" + ] + ] + }, + { + "id": "1580b603.a7115a", + "type": "for", + "name": "for vidx..service-data.vnfs.vnf_length[]", + "xml": "<for index='vidx' start='0' end='`$service-data.vnfs.vnf_length`' >\n", + "comments": "", + "outputs": 1, + "x": 1465.285888671875, + "y": 80.42861938476562, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "d610b844.0652c8" + ] + ] + }, + { + "id": "2393097b.207106", + "type": "switchNode", + "name": "switch tmp.vidx ", + "xml": "<switch test=\"`$tmp.vidx`\">\n\n", + "comments": "", + "outputs": 1, + "x": 1386.5872802734375, + "y": 123.41180419921875, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "dd032095.3aded" + ] + ] + }, + { + "id": "dd032095.3aded", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>\n", + "comments": "", + "outputs": 1, + "x": 1587.015869140625, + "y": 128.98321533203125, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "40072c93.943294" + ] + ] + }, + { + "id": "d610b844.0652c8", + "type": "switchNode", + "name": "switch vnfid found", + "xml": "<switch test=\"`$service-data.vnfs.vnf[$vidx].vnf-id == $vnf-topology-operation-input.vnf-information.vnf-id`\">\n\n", + "comments": "", + "outputs": 1, + "x": 1775.7144775390625, + "y": 78.6787109375, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "fc26d8de.94b0a8" + ] + ] + }, + { + "id": "40072c93.943294", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data\" />\n", + "comments": "", + "x": 1758.4443359375, + "y": 129.12606811523438, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "fc26d8de.94b0a8", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1981.666748046875, + "y": 77.57144165039062, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "7149eeb8.6b351" + ] + ] + }, + { + "id": "7149eeb8.6b351", + "type": "set", + "name": "set tmp.vidx and ctx.vnf-data", + "xml": "<set>\n<parameter name='tmp.vidx' value='`$vidx`' />\n<parameter name='ctx.vnf-data.' value='`$service-data.vnfs.vnf[$vidx].`' />\n", + "comments": "", + "x": 2220.198486328125, + "y": 73.32144165039062, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "6c7ae40f.24628c", + "type": "outcome", + "name": "0", + "xml": "<outcome value='0'>\n", + "comments": "", + "outputs": 1, + "x": 1077.96875, + "y": 25.96875, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "910f30c.abfcad" + ] + ] + }, + { + "id": "cdf59db6.a5688", + "type": "comment", + "name": "TODO: Check validation", + "info": "", + "comments": "", + "x": 628, + "y": 21, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "e48e518f.1dc2a", + "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": 606.3436889648438, + "y": 717.34375, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "4a014615.6e9cf8", + "type": "set", + "name": "set vnf-level-oper-status to Active", + "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status' value='Active' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-rpc-action' value='`$vnf-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-action' value='`$vnf-topology-operation-input.request-information.request-action`' />\n", + "comments": "", + "x": 662.8237915039062, + "y": 543.680908203125, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "bf95d9ae.8087f8", + "type": "set", + "name": "copy input data to service data", + "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-id' value='`$prop.vnf-index`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.sdnc-request-header.' value='$vnf-topology-operation-input.sdnc-request-header.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.request-information.' value='$vnf-topology-operation-input.request-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.' value='$vnf-topology-operation-input.service-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.' value='$vnf-topology-operation-input.vnf-information.' />\n\n", + "comments": "", + "x": 652.6769409179688, + "y": 502.6771240234375, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "c850e5af.e42fa8", + "type": "save", + "name": "update siteInstance configuration in AAI", + "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='generic-vnf' \n key='generic-vnf.vnf-id = $prop.vnf-index' >\n<parameter name='vnf-id' value='`$prop.vnf-index`' />\n<parameter name='in-maint' value='true' />\n<parameter name='is-closed-loop-disabled' value='false' />\n<parameter name='orchestration-status' value='Active' />\n<parameter name='operational-status' value='Active' />\n<parameter name='model-customization-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`' />\n<parameter name='selflink' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vnf-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $prop.vnf-index + '/vnf-data/'` \" />\n", + "comments": "", + "outputs": 1, + "x": 683.0104370117188, + "y": 627.5659790039062, + "z": "68309cb5.9fbe94", + "wires": [ + [ + + ] + ] + }, + { + "id": "b4c6f1a.73d561", + "type": "save", + "name": "save service relationship in AAI", + "xml": "<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.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 force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"generic-vnf\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/generic-vnfs/generic-vnf/' + $prop.vnf-index`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"generic-vnf.vnf-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.vnf-index`\" />", + "comments": "", + "outputs": 1, + "x": 654.0104370117188, + "y": 668.34375, + "z": "68309cb5.9fbe94", + "wires": [ + [ + + ] + ] + }, + { + "id": "d7008318.12e1b", + "type": "set", + "name": "set vnf-index and vnf-object-path", + "xml": "<set>\n<parameter name='vnfId' value='`$prop.vnf-index`' />\n<parameter name=\"vnf-object-path\" value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vnf-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $prop.vnf-index + '/vnf-data/'` \" />", + "comments": "", + "x": 659.5104370117188, + "y": 585.34375, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "2b37bcac.68f084", + "type": "switchNode", + "name": "switch sdwan.site", + "xml": "<switch test=\"`$tmp.sdwan.site`\">\n", + "comments": "", + "outputs": 1, + "x": 615, + "y": 348, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "a9004d13.a7ec4", + "27d5839b.ac9ebc" + ] + ] + }, + { + "id": "3993fb6.79aca04", + "type": "set", + "name": "set sdwan.site", + "xml": "<set>\n<parameter name='tmp.sdwan.site' value='false' />\n", + "comments": "", + "x": 606, + "y": 217, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "27d5839b.ac9ebc", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 751, + "y": 441, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "1ed61d3a.a1c323" + ] + ] + }, + { + "id": "a9004d13.a7ec4", + "type": "outcomeTrue", + "name": "false", + "xml": "<outcome value='false'>\n", + "comments": "", + "outputs": 1, + "x": 794.8887939453125, + "y": 361.00006103515625, + "z": "68309cb5.9fbe94", + "wires": [ + [ + "289c3fbe.f462" + ] + ] + }, + { + "id": "289c3fbe.f462", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 934, + "y": 361, + "z": "68309cb5.9fbe94", + "wires": [ + [ + + ] + ] + }, + { + "id": "1ed61d3a.a1c323", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 913, + "y": 440, + "z": "68309cb5.9fbe94", + "wires": [ + [ + + ] + ] + }, + { + "id": "ce5d0a29.098d18", + "type": "comment", + "name": "TODO: SDWAN implementation for site", + "info": "", + "comments": "", + "x": 1097, + "y": 485, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "ba135787.4aba08", + "type": "comment", + "name": "Site and role will be used to identify SDWAN service", + "info": "", + "comments": "", + "x": 1829, + "y": 358, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + }, + { + "id": "c30ca451.c8aa78", + "type": "comment", + "name": "TODO: AAI", + "info": "", + "comments": "", + "x": 900, + "y": 638, + "z": "68309cb5.9fbe94", + "wires": [ + + ] + } +] diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-create.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-create.json new file mode 100644 index 00000000..bc081931 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-create.json @@ -0,0 +1,690 @@ +[ + { + "id": "b9ac105c.8ec8f", + "type": "dgstart", + "name": "DGSTART", + "outputs": 1, + "x": 97.01041412353516, + "y": 47.41365957260132, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "cdfd9c31.ba898" + ] + ] + }, + { + "id": "cdfd9c31.ba898", + "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": 196.29611206054688, + "y": 121.65176746528596, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "8cec72fa.c96d5" + ] + ] + }, + { + "id": "8cec72fa.c96d5", + "type": "method", + "name": "method site-vnf-topology-operation-create", + "xml": "<method rpc='site-vnf-topology-operation-create' mode='sync'>\n", + "comments": "", + "outputs": 1, + "x": 217.43902587890625, + "y": 211.41365596931428, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "c88bbc51.c05a" + ] + ] + }, + { + "id": "c88bbc51.c05a", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 197.67707061767578, + "y": 383.08032772224396, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "6bf31f55.e7d98", + "c99fe643.20ccd8", + "34e47add.75c586", + "fe017e7c.6df8", + "bb192e9e.a5c6c", + "10180061.fe9e8", + "bc730e3d.2a3f4", + "fd6d952f.2ce658", + "bb650f09.4befc", + "c7f37fdc.75322", + "8a7774f7.eba7c8" + ] + ] + }, + { + "id": "34e47add.75c586", + "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": 520.3436431884766, + "y": 741.7469849586487, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "c99fe643.20ccd8", + "type": "set", + "name": "set vnf-level-oper-status to Created", + "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status' value='Created' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-rpc-action' value='`$vnf-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-action' value='`$vnf-topology-operation-input.request-information.request-action`' />\n", + "comments": "", + "x": 579.8237457275391, + "y": 568.0841431617737, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "6bf31f55.e7d98", + "type": "set", + "name": "copy input data to service data", + "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-id' value='`$prop.vnf-index`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.sdnc-request-header.' value='$vnf-topology-operation-input.sdnc-request-header.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.request-information.' value='$vnf-topology-operation-input.request-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.' value='$vnf-topology-operation-input.service-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.' value='$vnf-topology-operation-input.vnf-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-request-input.' value='$vnf-topology-operation-input.vnf-request-input.' />\n\n", + "comments": "", + "x": 566.6768951416016, + "y": 466.0803589820862, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "fe017e7c.6df8", + "type": "execute", + "name": "execute generate-vnf-index", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"prop.vnf-index\"/>\n", + "comments": "", + "outputs": 1, + "x": 559.0103912353516, + "y": 404.7469849586487, + "z": "c9244d8c.dbc33", + "wires": [ + [ + + ] + ] + }, + { + "id": "bb192e9e.a5c6c", + "type": "set", + "name": "set vnf-index to service data", + "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.vnf-id' value='`$prop.vnf-index`' />\n", + "comments": "", + "x": 557.0103912353516, + "y": 521.7469849586487, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "10180061.fe9e8", + "type": "switchNode", + "name": "switch service-data.vnfs.vnf_length", + "xml": "<switch test='`$service-data.vnfs.vnf_length`'>\n", + "comments": "", + "outputs": 1, + "x": 581.0103912353516, + "y": 284.7469849586487, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "da5d62eb.78235", + "6a8033d.3310ccc" + ] + ] + }, + { + "id": "da5d62eb.78235", + "type": "other", + "name": "NULL", + "xml": "<outcome value=''>\n", + "comments": "", + "outputs": 1, + "x": 836.7247467041016, + "y": 274.8898072242737, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "aa63df44.dc701" + ] + ] + }, + { + "id": "aa63df44.dc701", + "type": "set", + "name": "set vnf-index=0", + "xml": "<set>\n<parameter name='vnf-index' value='0' />\n", + "comments": "", + "x": 1001.0104675292969, + "y": 273.8898854255676, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "6a8033d.3310ccc", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 838.1533088684082, + "y": 339.17562532424927, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "62e804c3.fcb0ec" + ] + ] + }, + { + "id": "fde7e6bf.6c5328", + "type": "set", + "name": "set vnf-index = vnf_length", + "xml": "<set>\n<parameter name='vnf-index' value='`$service-data.vnfs.vnf_length`' />\n", + "comments": "", + "x": 1177.0104637145996, + "y": 317.4613137245178, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "59c71e1.00ba4e", + "type": "for", + "name": "for each existing VNF", + "xml": "<for index='idx' start='0' end='`$service-data.vnfs.vnf_length`' >\n", + "comments": "", + "outputs": 1, + "x": 1162.4389762878418, + "y": 363.4612526893616, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "17e77a68.a0edf6" + ] + ] + }, + { + "id": "62e804c3.fcb0ec", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 973.8675689697266, + "y": 339.1755909919739, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "fde7e6bf.6c5328", + "59c71e1.00ba4e" + ] + ] + }, + { + "id": "17e77a68.a0edf6", + "type": "switchNode", + "name": "switch vnf-information.vnf-id == service-data.vnfs.vnf[].vnf-id", + "xml": "<switch test='`$vnf-topology-operation-input.vnf-information.vnf-id == $service-data.vnfs.vnf[$idx].vnf-id`'>\n", + "comments": "", + "outputs": 1, + "x": 1538.7247467041016, + "y": 351.0327515602112, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "5bee4b88.02f404" + ] + ] + }, + { + "id": "5bee4b88.02f404", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1639.0103912353516, + "y": 420.6041626930237, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "45cdc14c.e4a58" + ] + ] + }, + { + "id": "45cdc14c.e4a58", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'VNF id ' + $service-data.vnfs.vnf[$idx].vnf-id\n + ' already exists, and has order status ' + $service-data.vnfs.vnf[$idx].vnf-data.vnf-level-oper-status.order-status`\" />\n", + "comments": "", + "x": 1664.581802368164, + "y": 480.6041626930237, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "22974b6a.26eb04", + "type": "comment", + "name": "make sure this VNF doesn't exist already", + "info": "", + "comments": "", + "x": 1503.867473602295, + "y": 320.6041626930237, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "bc730e3d.2a3f4", + "type": "set", + "name": "set new vnf_length", + "xml": "<set>\n<parameter name='service-data.vnfs.vnf_length' value='`$vnf-index + 1`' />\n", + "comments": "", + "x": 533.0103912353516, + "y": 359.7469849586487, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "fd6d952f.2ce658", + "type": "save", + "name": "save siteInstance configuration in AAI", + "xml": "<save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='generic-vnf' \n key='generic-vnf.vnf-id = $prop.vnf-index' >\n<parameter name='vnf-id' value='`$prop.vnf-index`' />\n<parameter name='vnf-name' value='`$prop.site.name`' />\n<parameter name='vnf-name2' value='`$prop.site.description`' />\n<parameter name='regional-resource-zone' value='`$prop.site.location`' />\n<parameter name='vnf-type' value='prop.site.type' />\n<parameter name='in-maint' value='true' />\n<parameter name='is-closed-loop-disabled' value='false' />\n<parameter name='orchestration-status' value='Created' />\n<parameter name='operational-status' value='Created' />\n<parameter name='model-customization-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`' />\n<parameter name='selflink' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vnf-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $prop.vnf-index + '/vnf-data/'` \" />\n", + "comments": "", + "outputs": 1, + "x": 588.0103797912598, + "y": 654.9692330360413, + "z": "c9244d8c.dbc33", + "wires": [ + [ + + ] + ] + }, + { + "id": "bb650f09.4befc", + "type": "save", + "name": "save service relationship in AAI", + "xml": "<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.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 force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"generic-vnf\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/generic-vnfs/generic-vnf/' + $prop.vnf-index`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"generic-vnf.vnf-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.vnf-index`\" />", + "comments": "", + "outputs": 1, + "x": 568.0103912353516, + "y": 692.7469849586487, + "z": "c9244d8c.dbc33", + "wires": [ + [ + + ] + ] + }, + { + "id": "c7f37fdc.75322", + "type": "set", + "name": "set vnf-index and vnf-object-path", + "xml": "<set>\n<parameter name='vnfId' value='`$prop.vnf-index`' />\n<parameter name=\"vnf-object-path\" value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vnf-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $prop.vnf-index + '/vnf-data/'` \" />", + "comments": "", + "x": 573.5103912353516, + "y": 609.7469849586487, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "8a7774f7.eba7c8", + "type": "for", + "name": "for loop i - VNF input parameters", + "xml": "<for index=\"idx\" start=\"0\" end=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param_length`\">\n", + "comments": "", + "outputs": 1, + "x": 586.1151275634766, + "y": 141.48147916793823, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "359fa75f.492d58" + ] + ] + }, + { + "id": "359fa75f.492d58", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 973.8933715820312, + "y": 142.03711557388306, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "f0758e90.0e45c", + "2de72527.9a032a", + "378d80e2.17f6", + "7702e686.8af7a8", + "75b119e9.762ed8", + "1c70f9bf.47a396" + ] + ] + }, + { + "id": "f0758e90.0e45c", + "type": "switchNode", + "name": "switch name", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'name'`\">\n", + "comments": "", + "outputs": 1, + "x": 1177.1152682304382, + "y": 88.03709030151367, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "665f8a5d.1e1384" + ] + ] + }, + { + "id": "665f8a5d.1e1384", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1364.1152682304382, + "y": 84.03709030151367, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "303b324.5f06cce" + ] + ] + }, + { + "id": "303b324.5f06cce", + "type": "set", + "name": "set name", + "xml": "<set>\n<parameter name='prop.site.name' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 1532.1152682304382, + "y": 84.6370964050293, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "2de72527.9a032a", + "type": "switchNode", + "name": "switch description", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'description'`\">\n", + "comments": "", + "outputs": 1, + "x": 1194.9549860954285, + "y": 131.0370855331421, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "ea9a727f.74db9" + ] + ] + }, + { + "id": "ea9a727f.74db9", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1381.9549860954285, + "y": 127.03708553314209, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "965ea5a4.e205c8" + ] + ] + }, + { + "id": "965ea5a4.e205c8", + "type": "set", + "name": "set description", + "xml": "<set>\n<parameter name='prop.site.description' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 1543.2884669303894, + "y": 126.49824523925781, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "378d80e2.17f6", + "type": "switchNode", + "name": "switch location", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'location'`\">\n", + "comments": "", + "outputs": 1, + "x": 1185.0410990715027, + "y": 173.44442749023438, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "aa90cf46.db3a1" + ] + ] + }, + { + "id": "aa90cf46.db3a1", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1372.0410990715027, + "y": 169.44442749023438, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "77618d13.d7cf34" + ] + ] + }, + { + "id": "77618d13.d7cf34", + "type": "set", + "name": "set location", + "xml": "<set>\n<parameter name='prop.site.location' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 1540.0410990715027, + "y": 170.04443359375, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "7702e686.8af7a8", + "type": "switchNode", + "name": "switch id", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'id'`\">\n", + "comments": "", + "outputs": 1, + "x": 1175.0104174613953, + "y": 42.010414123535156, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "ed13080f.421188" + ] + ] + }, + { + "id": "ed13080f.421188", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1362.0104174613953, + "y": 38.010414123535156, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "23e732a.cf615ce" + ] + ] + }, + { + "id": "23e732a.cf615ce", + "type": "set", + "name": "set id", + "xml": "<set>\n<parameter name='prop.site.id' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 1530.0104174613953, + "y": 38.61042022705078, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "75b119e9.762ed8", + "type": "switchNode", + "name": "switch type", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'type'`\">\n", + "comments": "", + "outputs": 1, + "x": 1184.0104174613953, + "y": 217.01040649414062, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "2190e18f.1b285e" + ] + ] + }, + { + "id": "2190e18f.1b285e", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1371.0104174613953, + "y": 213.01040649414062, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "195e7aa3.f12db5" + ] + ] + }, + { + "id": "195e7aa3.f12db5", + "type": "set", + "name": "set type", + "xml": "<set>\n<parameter name='prop.site.type' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 1539.0104174613953, + "y": 213.61041259765625, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "1c70f9bf.47a396", + "type": "switchNode", + "name": "switch role", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'role'`\">\n", + "comments": "", + "outputs": 1, + "x": 1187.0104174613953, + "y": 260.0104064941406, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "6e1ae54c.95dc4c" + ] + ] + }, + { + "id": "6e1ae54c.95dc4c", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1374.0104174613953, + "y": 256.0104064941406, + "z": "c9244d8c.dbc33", + "wires": [ + [ + "338b1db2.4b0a32" + ] + ] + }, + { + "id": "338b1db2.4b0a32", + "type": "set", + "name": "set role", + "xml": "<set>\n<parameter name='prop.site.role' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 1542.0104174613953, + "y": 256.61041259765625, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + }, + { + "id": "63e9e578.e6c03c", + "type": "comment", + "name": "TODO: AAI", + "info": "", + "comments": "", + "x": 813, + "y": 651, + "z": "c9244d8c.dbc33", + "wires": [ + + ] + } +] diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.json new file mode 100644 index 00000000..ad6eb1e4 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.json @@ -0,0 +1,803 @@ +[ + { + "id": "29fa8678.95f9ca", + "type": "dgstart", + "name": "DGSTART", + "outputs": 1, + "x": 131, + "y": 118, + "z": "af5ae803.904aa8", + "wires": [ + [ + "d48a6f16.dbc94" + ] + ] + }, + { + "id": "d48a6f16.dbc94", + "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": 206.28570556640625, + "y": 158.23811149597168, + "z": "af5ae803.904aa8", + "wires": [ + [ + "7ed81cb7.0a51d4" + ] + ] + }, + { + "id": "7ed81cb7.0a51d4", + "type": "method", + "name": "method site-vnf-topology-operation-deactivate", + "xml": "<method rpc='site-vnf-topology-operation-deactivate' mode='sync'>\n", + "comments": "", + "outputs": 1, + "x": 227.42861938476562, + "y": 248, + "z": "af5ae803.904aa8", + "wires": [ + [ + "aa23d49.327ed28" + ] + ] + }, + { + "id": "aa23d49.327ed28", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 207.66666412353516, + "y": 419.6666717529297, + "z": "af5ae803.904aa8", + "wires": [ + [ + "9bb8f3a8.802f5", + "15d3779a.2c8a88", + "9540c63d.a06978", + "78df0c0e.576094", + "99b35972.99c3a8", + "61eb6b8d.7cad14", + "4080214.adfeae", + "6f647857.5c6b48", + "4302e938.be3ef8", + "1364166a.1d494a" + ] + ] + }, + { + "id": "9bb8f3a8.802f5", + "type": "for", + "name": "for loop i - VNF input parameters", + "xml": "<for index='idx' start='0' end='`$ctx.vnf-data.vnf-request-input.vnf-input-parameters.param_length`' >\n", + "comments": "", + "outputs": 1, + "x": 660.104736328125, + "y": 307.06783294677734, + "z": "af5ae803.904aa8", + "wires": [ + [ + "a5175fe3.e03a" + ] + ] + }, + { + "id": "a5175fe3.e03a", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 906.8829312324524, + "y": 307.623462411575, + "z": "af5ae803.904aa8", + "wires": [ + [ + "a25f1f5b.132b7", + "617dd8fe.aa7948", + "15ed8251.27c1ce", + "984a8326.9a457", + "ff594d8d.7aa95", + "20f2971f.ecec88" + ] + ] + }, + { + "id": "a25f1f5b.132b7", + "type": "switchNode", + "name": "switch name", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'name'`\">\n", + "comments": "", + "outputs": 1, + "x": 1112.1048202514648, + "y": 262.62343978881836, + "z": "af5ae803.904aa8", + "wires": [ + [ + "e1ea29c6.845788" + ] + ] + }, + { + "id": "e1ea29c6.845788", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1299.1048202514648, + "y": 258.62343978881836, + "z": "af5ae803.904aa8", + "wires": [ + [ + "cda20cf5.41ce9" + ] + ] + }, + { + "id": "cda20cf5.41ce9", + "type": "set", + "name": "set name", + "xml": "<set>\n<parameter name='prop.site.name' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 1467.1048202514648, + "y": 259.223445892334, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "617dd8fe.aa7948", + "type": "switchNode", + "name": "switch description", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'description'`\">\n", + "comments": "", + "outputs": 1, + "x": 1129.944538116455, + "y": 305.6234350204468, + "z": "af5ae803.904aa8", + "wires": [ + [ + "9accb009.2112d" + ] + ] + }, + { + "id": "9accb009.2112d", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1316.944538116455, + "y": 301.6234350204468, + "z": "af5ae803.904aa8", + "wires": [ + [ + "8ca9a7db.ec8f18" + ] + ] + }, + { + "id": "8ca9a7db.ec8f18", + "type": "set", + "name": "set description", + "xml": "<set>\n<parameter name='prop.site.description' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 1478.278018951416, + "y": 301.0845947265625, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "15ed8251.27c1ce", + "type": "switchNode", + "name": "switch location", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'location'`\">\n", + "comments": "", + "outputs": 1, + "x": 1120.0306510925293, + "y": 348.03077697753906, + "z": "af5ae803.904aa8", + "wires": [ + [ + "8dc32f9.9a097d" + ] + ] + }, + { + "id": "8dc32f9.9a097d", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1307.0306510925293, + "y": 344.03077697753906, + "z": "af5ae803.904aa8", + "wires": [ + [ + "c9cae02e.83783" + ] + ] + }, + { + "id": "c9cae02e.83783", + "type": "set", + "name": "set location", + "xml": "<set>\n<parameter name='prop.site.location' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 1475.0306510925293, + "y": 344.6307830810547, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "984a8326.9a457", + "type": "switchNode", + "name": "switch id", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'id'`\">\n", + "comments": "", + "outputs": 1, + "x": 1109.9999694824219, + "y": 216.59676361083984, + "z": "af5ae803.904aa8", + "wires": [ + [ + "96a74444.b53228" + ] + ] + }, + { + "id": "96a74444.b53228", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1296.9999694824219, + "y": 212.59676361083984, + "z": "af5ae803.904aa8", + "wires": [ + [ + "df6964b4.228f78" + ] + ] + }, + { + "id": "df6964b4.228f78", + "type": "set", + "name": "set id", + "xml": "<set>\n<parameter name='prop.site.id' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 1464.9999694824219, + "y": 213.19676971435547, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "ff594d8d.7aa95", + "type": "switchNode", + "name": "switch type", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'type'`\">\n", + "comments": "", + "outputs": 1, + "x": 1118.9999694824219, + "y": 391.5967559814453, + "z": "af5ae803.904aa8", + "wires": [ + [ + "343eddcc.c79502" + ] + ] + }, + { + "id": "343eddcc.c79502", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1305.9999694824219, + "y": 387.5967559814453, + "z": "af5ae803.904aa8", + "wires": [ + [ + "c923d4d2.c53e48" + ] + ] + }, + { + "id": "c923d4d2.c53e48", + "type": "set", + "name": "set type", + "xml": "<set>\n<parameter name='prop.site.type' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n<parameter name='tmp.sdwan.site' value='true' />", + "comments": "", + "x": 1473.9999694824219, + "y": 388.19676208496094, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "20f2971f.ecec88", + "type": "switchNode", + "name": "switch role", + "xml": "<switch test=\"`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'role'`\">\n", + "comments": "", + "outputs": 1, + "x": 1121.9999694824219, + "y": 434.5967559814453, + "z": "af5ae803.904aa8", + "wires": [ + [ + "4a74022c.fbbfdc" + ] + ] + }, + { + "id": "4a74022c.fbbfdc", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1308.9999694824219, + "y": 430.5967559814453, + "z": "af5ae803.904aa8", + "wires": [ + [ + "ed0bb784.6f5f28" + ] + ] + }, + { + "id": "ed0bb784.6f5f28", + "type": "set", + "name": "set role & sdwan.site", + "xml": "<set>\n<parameter name='prop.site.role' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' />\n<parameter name='tmp.sdwan.site' value='true' />\n", + "comments": "", + "x": 1516.9999694824219, + "y": 430.19676971435547, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "15d3779a.2c8a88", + "type": "switchNode", + "name": "switch service-data.vnfs.vnf_length", + "xml": "<switch test='`$service-data.vnfs.vnf_length`'>\n", + "comments": "", + "outputs": 1, + "x": 667.9895935058594, + "y": 108.98958587646484, + "z": "af5ae803.904aa8", + "wires": [ + [ + "ce757eba.3051d", + "317e6180.be733e", + "355929c1.e3c516" + ] + ] + }, + { + "id": "ce757eba.3051d", + "type": "other", + "name": "Null", + "xml": "<outcome value=''>\n", + "comments": "", + "outputs": 1, + "x": 1080.9895935058594, + "y": 101.9896469116211, + "z": "af5ae803.904aa8", + "wires": [ + [ + "3a71c6fc.a403ea" + ] + ] + }, + { + "id": "3a71c6fc.a403ea", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data\" />\n", + "comments": "", + "x": 1299.7670593261719, + "y": 77.87859344482422, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "317e6180.be733e", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 992.9899597167969, + "y": 155.98966217041016, + "z": "af5ae803.904aa8", + "wires": [ + [ + "6231a17a.01c0e" + ] + ] + }, + { + "id": "6231a17a.01c0e", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1164.2594909667969, + "y": 139.54419708251953, + "z": "af5ae803.904aa8", + "wires": [ + [ + "b34aef0c.acf71", + "8f0f5852.1fb888" + ] + ] + }, + { + "id": "b34aef0c.acf71", + "type": "for", + "name": "for vidx..service-data.vnfs.vnf_length[]", + "xml": "<for index='vidx' start='0' end='`$service-data.vnfs.vnf_length`' >\n", + "comments": "", + "outputs": 1, + "x": 1462.2754821777344, + "y": 120.41820526123047, + "z": "af5ae803.904aa8", + "wires": [ + [ + "dbdd8064.8b575" + ] + ] + }, + { + "id": "8f0f5852.1fb888", + "type": "switchNode", + "name": "switch tmp.vidx ", + "xml": "<switch test=\"`$tmp.vidx`\">\n\n", + "comments": "", + "outputs": 1, + "x": 1383.5768737792969, + "y": 163.4013900756836, + "z": "af5ae803.904aa8", + "wires": [ + [ + "790650c4.ec7c" + ] + ] + }, + { + "id": "790650c4.ec7c", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>\n", + "comments": "", + "outputs": 1, + "x": 1584.0054626464844, + "y": 168.9728012084961, + "z": "af5ae803.904aa8", + "wires": [ + [ + "3c6f340.b39b3cc" + ] + ] + }, + { + "id": "dbdd8064.8b575", + "type": "switchNode", + "name": "switch vnfid found", + "xml": "<switch test=\"`$service-data.vnfs.vnf[$vidx].vnf-id == $vnf-topology-operation-input.vnf-information.vnf-id`\">\n\n", + "comments": "", + "outputs": 1, + "x": 1772.7040710449219, + "y": 118.66829681396484, + "z": "af5ae803.904aa8", + "wires": [ + [ + "442b99c7.862238" + ] + ] + }, + { + "id": "3c6f340.b39b3cc", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data\" />\n", + "comments": "", + "x": 1755.4339294433594, + "y": 169.11565399169922, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "442b99c7.862238", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1978.6563415527344, + "y": 117.56102752685547, + "z": "af5ae803.904aa8", + "wires": [ + [ + "9a4c2f33.323f8" + ] + ] + }, + { + "id": "9a4c2f33.323f8", + "type": "set", + "name": "set tmp.vidx and ctx.vnf-data", + "xml": "<set>\n<parameter name='tmp.vidx' value='`$vidx`' />\n<parameter name='ctx.vnf-data.' value='`$service-data.vnfs.vnf[$vidx].`' />\n", + "comments": "", + "x": 2217.1880798339844, + "y": 113.31102752685547, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "355929c1.e3c516", + "type": "outcome", + "name": "0", + "xml": "<outcome value='0'>\n", + "comments": "", + "outputs": 1, + "x": 1074.9583435058594, + "y": 65.95833587646484, + "z": "af5ae803.904aa8", + "wires": [ + [ + "3a71c6fc.a403ea" + ] + ] + }, + { + "id": "28632f1f.75eb4", + "type": "comment", + "name": "TODO: Check validation", + "info": "", + "comments": "", + "x": 624.9895935058594, + "y": 60.989585876464844, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "9540c63d.a06978", + "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": 603.3332824707031, + "y": 757.3333358764648, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "78df0c0e.576094", + "type": "set", + "name": "set vnf-level-oper-status to PendingDelete", + "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status' value='PendingDelete' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-rpc-action' value='`$vnf-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-action' value='`$vnf-topology-operation-input.request-information.request-action`' />\n", + "comments": "", + "x": 682.8133850097656, + "y": 585.6704711914062, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "99b35972.99c3a8", + "type": "set", + "name": "copy input data to service data", + "xml": "<set>\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-id' value='`$prop.vnf-index`' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.sdnc-request-header.' value='$vnf-topology-operation-input.sdnc-request-header.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.request-information.' value='$vnf-topology-operation-input.request-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.' value='$vnf-topology-operation-input.service-information.' />\n<parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.' value='$vnf-topology-operation-input.vnf-information.' />\n\n", + "comments": "", + "x": 649.6665344238281, + "y": 542.6667098999023, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "61eb6b8d.7cad14", + "type": "save", + "name": "update siteInstance configuration in AAI", + "xml": "<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='generic-vnf' \n key='generic-vnf.vnf-id = $prop.vnf-index' >\n<parameter name='vnf-id' value='`$prop.vnf-index`' />\n<parameter name='in-maint' value='true' />\n<parameter name='is-closed-loop-disabled' value='false' />\n<parameter name='orchestration-status' value='PendingDelete' />\n<parameter name='operational-status' value='PendingDelete' />\n<parameter name='model-customization-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`' />\n<parameter name='selflink' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vnf-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $prop.vnf-index + '/vnf-data/'` \" />\n", + "comments": "", + "outputs": 1, + "x": 677, + "y": 665.5556030273438, + "z": "af5ae803.904aa8", + "wires": [ + [ + + ] + ] + }, + { + "id": "4080214.adfeae", + "type": "save", + "name": "save service relationship in AAI", + "xml": "<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.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 force=\"true\" pfx=\"tmp.AnAI-data\">\n<parameter name=\"relationship-list.relationship[0].related-to\" value=\"generic-vnf\" />\n<parameter name=\"relationship-list.relationship[0].related-link\" value=\"`'/network/generic-vnfs/generic-vnf/' + $prop.vnf-index`\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-key\" value=\"generic-vnf.vnf-id\" />\n<parameter name=\"relationship-list.relationship[0].relationship-data[0].relationship-value\" value=\"`$prop.vnf-index`\" />", + "comments": "", + "outputs": 1, + "x": 651.0000305175781, + "y": 708.3333358764648, + "z": "af5ae803.904aa8", + "wires": [ + [ + + ] + ] + }, + { + "id": "6f647857.5c6b48", + "type": "set", + "name": "set vnf-index and vnf-object-path", + "xml": "<set>\n<parameter name='vnfId' value='`$prop.vnf-index`' />\n<parameter name=\"vnf-object-path\" value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vnf-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $prop.vnf-index + '/vnf-data/'` \" />", + "comments": "", + "x": 656.5000305175781, + "y": 625.3333358764648, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "1364166a.1d494a", + "type": "switchNode", + "name": "switch sdwan.site", + "xml": "<switch test=\"`$tmp.sdwan.site`\">\n", + "comments": "", + "outputs": 1, + "x": 611.9895935058594, + "y": 387.98958587646484, + "z": "af5ae803.904aa8", + "wires": [ + [ + "2e02ce5b.120d72", + "c3598024.ef229" + ] + ] + }, + { + "id": "4302e938.be3ef8", + "type": "set", + "name": "set sdwan.site", + "xml": "<set>\n<parameter name='tmp.sdwan.site' value='false' />\n", + "comments": "", + "x": 602.9895935058594, + "y": 256.98958587646484, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "c3598024.ef229", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 747.9895935058594, + "y": 480.98958587646484, + "z": "af5ae803.904aa8", + "wires": [ + [ + "38d8d2a8.f58c0e" + ] + ] + }, + { + "id": "2e02ce5b.120d72", + "type": "outcomeTrue", + "name": "false", + "xml": "<outcome value='false'>\n", + "comments": "", + "outputs": 1, + "x": 791.8783874511719, + "y": 400.9896469116211, + "z": "af5ae803.904aa8", + "wires": [ + [ + "ad672f8e.2adcd" + ] + ] + }, + { + "id": "ad672f8e.2adcd", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 930.9895935058594, + "y": 400.98958587646484, + "z": "af5ae803.904aa8", + "wires": [ + [ + + ] + ] + }, + { + "id": "38d8d2a8.f58c0e", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 909.9895935058594, + "y": 479.98958587646484, + "z": "af5ae803.904aa8", + "wires": [ + [ + + ] + ] + }, + { + "id": "d9bbd64d.c1dfa8", + "type": "comment", + "name": "TODO: SDWAN implementation for site", + "info": "", + "comments": "", + "x": 1067.9895935058594, + "y": 521.9895858764648, + "z": "af5ae803.904aa8", + "wires": [ + + ] + }, + { + "id": "dfb2bb0b.f25f38", + "type": "comment", + "name": "TODO: AAI", + "info": "", + "comments": "", + "x": 902, + "y": 671, + "z": "af5ae803.904aa8", + "wires": [ + + ] + } +] diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-delete.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-delete.json new file mode 100644 index 00000000..0c552342 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-delete.json @@ -0,0 +1,617 @@ +[ + { + "id": "a2b91e00.0dacb", + "type": "dgstart", + "name": "DGSTART", + "outputs": 1, + "x": 119, + "y": 37, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "17fbd1a8.a9b4ce" + ] + ] + }, + { + "id": "17fbd1a8.a9b4ce", + "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": 194.28570556640625, + "y": 77.23811149597168, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "cd1ac734.4667a8" + ] + ] + }, + { + "id": "cd1ac734.4667a8", + "type": "method", + "name": "method site-vnf-topology-operation-delete", + "xml": "<method rpc='site-vnf-topology-operation-delete' mode='sync'>\n", + "comments": "", + "outputs": 1, + "x": 215.42861938476562, + "y": 167, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "8f642f93.2a801" + ] + ] + }, + { + "id": "8f642f93.2a801", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 347.6666564941406, + "y": 226.66668701171875, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "76c48b79.d84cf4", + "bfaa0886.4026e8", + "d0626629.81a8c8", + "a00c6468.40dc18", + "d6cddc91.15c3a", + "1aa89ef4.371e21" + ] + ] + }, + { + "id": "76c48b79.d84cf4", + "type": "switchNode", + "name": "switch service-data.vnfs.vnf_length", + "xml": "<switch test='`$service-data.vnfs.vnf_length`'>\n", + "comments": "", + "outputs": 1, + "x": 668.9895935058594, + "y": 73.98958587646484, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "e84dd0b6.bd49f", + "6abf3e26.6123e", + "cad37430.9a8ae8" + ] + ] + }, + { + "id": "e84dd0b6.bd49f", + "type": "other", + "name": "Null", + "xml": "<outcome value=''>\n", + "comments": "", + "outputs": 1, + "x": 1081.9895935058594, + "y": 66.9896469116211, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "1e4a1529.eacc1b" + ] + ] + }, + { + "id": "1e4a1529.eacc1b", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data\" />\n", + "comments": "", + "x": 1300.7670593261719, + "y": 42.87859344482422, + "z": "7bfb2dad.3744a4", + "wires": [ + + ] + }, + { + "id": "6abf3e26.6123e", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 993.9899597167969, + "y": 120.98966217041016, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "8e41da85.f0c968" + ] + ] + }, + { + "id": "8e41da85.f0c968", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1165.2594909667969, + "y": 104.54419708251953, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "40ff91c4.16b8c", + "901feb4d.552588" + ] + ] + }, + { + "id": "40ff91c4.16b8c", + "type": "for", + "name": "for vidx..service-data.vnfs.vnf_length[]", + "xml": "<for index='vidx' start='0' end='`$service-data.vnfs.vnf_length`' >\n", + "comments": "", + "outputs": 1, + "x": 1463.2754821777344, + "y": 85.41820526123047, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "21662e74.a22c42" + ] + ] + }, + { + "id": "901feb4d.552588", + "type": "switchNode", + "name": "switch tmp.vidx ", + "xml": "<switch test=\"`$tmp.vidx`\">\n\n", + "comments": "", + "outputs": 1, + "x": 1384.5768737792969, + "y": 128.4013900756836, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "ee9e043e.1f4d08" + ] + ] + }, + { + "id": "ee9e043e.1f4d08", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>\n", + "comments": "", + "outputs": 1, + "x": 1585.0054626464844, + "y": 133.9728012084961, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "b08c7bb.174c688" + ] + ] + }, + { + "id": "21662e74.a22c42", + "type": "switchNode", + "name": "switch vnfid found", + "xml": "<switch test=\"`$service-data.vnfs.vnf[$vidx].vnf-id == $vnf-topology-operation-input.vnf-information.vnf-id`\">\n\n", + "comments": "", + "outputs": 1, + "x": 1773.7040710449219, + "y": 83.66829681396484, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "c6e29244.22831" + ] + ] + }, + { + "id": "b08c7bb.174c688", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data\" />\n", + "comments": "", + "x": 1756.4339294433594, + "y": 134.11565399169922, + "z": "7bfb2dad.3744a4", + "wires": [ + + ] + }, + { + "id": "c6e29244.22831", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1979.6563415527344, + "y": 82.56102752685547, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "34cb4af6.5dade6" + ] + ] + }, + { + "id": "34cb4af6.5dade6", + "type": "set", + "name": "set tmp.vidx and ctx.vnf-data", + "xml": "<set>\n<parameter name='tmp.vidx' value='`$vidx`' />\n<parameter name='ctx.vnf-data.' value='`$service-data.vnfs.vnf[$vidx].`' />\n", + "comments": "", + "x": 2218.1880798339844, + "y": 78.31102752685547, + "z": "7bfb2dad.3744a4", + "wires": [ + + ] + }, + { + "id": "cad37430.9a8ae8", + "type": "outcome", + "name": "0", + "xml": "<outcome value='0'>\n", + "comments": "", + "outputs": 1, + "x": 1075.9583435058594, + "y": 30.958335876464844, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "1e4a1529.eacc1b" + ] + ] + }, + { + "id": "4dc3e987.9fd4e8", + "type": "comment", + "name": "TODO: Check validation", + "info": "", + "comments": "", + "x": 625.9895935058594, + "y": 25.989585876464844, + "z": "7bfb2dad.3744a4", + "wires": [ + + ] + }, + { + "id": "bfaa0886.4026e8", + "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": 590.333251953125, + "y": 562.3333740234375, + "z": "7bfb2dad.3744a4", + "wires": [ + + ] + }, + { + "id": "728d2d28.940264", + "type": "for", + "name": "for each vnf", + "xml": "<for index='idx' start='`$vnf-index + 1`' end='`$service-data.vnfs.vnf_length`' >\n", + "comments": "", + "outputs": 1, + "x": 1117.7793083190918, + "y": 393.66661167144775, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "7caecd51.491534" + ] + ] + }, + { + "id": "347e4d01.6da902", + "type": "comment", + "name": "Remove VNF from service data", + "info": "", + "comments": "", + "x": 640.9380798339844, + "y": 342.2382507324219, + "z": "7bfb2dad.3744a4", + "wires": [ + + ] + }, + { + "id": "7caecd51.491534", + "type": "set", + "name": "move vnf to remove one", + "xml": "<set>\n\t<parameter name=\"$tmpidx\" value=\"`$idx - 1`\"/>\n\t<parameter name=\"service-data.vnfs.vnf[$tmpidx].\" value=\"$service-data.vnfs.vnf[$idx].\" />\n\t\n", + "comments": "", + "x": 1351.3704414367676, + "y": 392.6905632019043, + "z": "7bfb2dad.3744a4", + "wires": [ + + ] + }, + { + "id": "d6cddc91.15c3a", + "type": "switchNode", + "name": "switch vnf_length", + "xml": "<switch test='`$service-data.vnfs.vnf_length`'>\n", + "comments": "", + "outputs": 1, + "x": 604.0371704101562, + "y": 395.2462406158447, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "f6c22b0f.9c87a8", + "3909fa08.1288e6" + ] + ] + }, + { + "id": "f6c22b0f.9c87a8", + "type": "outcome", + "name": "1", + "xml": "<outcome value='1'>\n", + "comments": "", + "outputs": 1, + "x": 781.0372123718262, + "y": 355.91282749176025, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "489f0baa.cc5474" + ] + ] + }, + { + "id": "489f0baa.cc5474", + "type": "set", + "name": "Remove vnfs", + "xml": "<set>\n\t<parameter name=\"service-data.vnfs.\" value=\"\"/>\n\n", + "comments": "", + "x": 944.7037086486816, + "y": 355.91292667388916, + "z": "7bfb2dad.3744a4", + "wires": [ + + ] + }, + { + "id": "3909fa08.1288e6", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 779.7039566040039, + "y": 439.2461004257202, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "1459edc6.fe9a92" + ] + ] + }, + { + "id": "e0ce4e15.0694e", + "type": "set", + "name": "set new vnf length", + "xml": "<set>\n\t<parameter name=\"service-data.vnfs.vnf_length\" value=\"`$service-data.vnfs.vnf_length - 1`\"/>\n\n\t\n", + "comments": "", + "x": 1137.333396911621, + "y": 484.2461853027344, + "z": "7bfb2dad.3744a4", + "wires": [ + + ] + }, + { + "id": "1b0c5771.6e6a79", + "type": "set", + "name": "Remove the last vnf in the list", + "xml": "<set>\n\t<parameter name=\"service-data.vnfs.vnf[$service-data.vnfs.vnf_length-1].\" value=\"\"/>\n\n", + "comments": "", + "x": 1173.037052154541, + "y": 439.3572063446045, + "z": "7bfb2dad.3744a4", + "wires": [ + + ] + }, + { + "id": "1459edc6.fe9a92", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 948.3704452514648, + "y": 439.9127473831177, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "728d2d28.940264", + "1b0c5771.6e6a79", + "e0ce4e15.0694e" + ] + ] + }, + { + "id": "d0626629.81a8c8", + "type": "switchNode", + "name": "switch current vnf-level-oper-status == PendingDelete", + "xml": "<switch test=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status == 'PendingDelete'`\">\n", + "comments": "", + "outputs": 1, + "x": 702.9999885559082, + "y": 181.00003623962402, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "aa414c85.4ebad" + ] + ] + }, + { + "id": "350728d2.6ecb38", + "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=\"Cannot delete a VNF in a Created state\" />\n", + "comments": "", + "x": 1165.9999809265137, + "y": 180, + "z": "7bfb2dad.3744a4", + "wires": [ + + ] + }, + { + "id": "a00c6468.40dc18", + "type": "switchNode", + "name": "switch current vf-module_length", + "xml": "<switch test=\"`$ctx.vnf-data.vf-modules.vf-module_length`\">\n", + "comments": "", + "outputs": 1, + "x": 653.3333320617676, + "y": 267.00000190734863, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "e2c40a8f.28c2e8", + "efcade27.df8a7", + "fdf813a0.7dec9" + ] + ] + }, + { + "id": "e2c40a8f.28c2e8", + "type": "outcome", + "name": "0", + "xml": "<outcome value='0'>\n", + "comments": "", + "outputs": 1, + "x": 881.9999732971191, + "y": 223.6666431427002, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "4056136c.450bfc" + ] + ] + }, + { + "id": "efcade27.df8a7", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 880.5713844299316, + "y": 265.0953006744385, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "4056136c.450bfc" + ] + ] + }, + { + "id": "4056136c.450bfc", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1029.1428985595703, + "y": 245.0953016281128, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + + ] + ] + }, + { + "id": "fdf813a0.7dec9", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 880.5714340209961, + "y": 306.52388858795166, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "dbbd756.2a74488" + ] + ] + }, + { + "id": "dbbd756.2a74488", + "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=\"Cannot delete the VNF because there are VFs defined\" />\n", + "comments": "", + "x": 1047.7143287658691, + "y": 306.09527683258057, + "z": "7bfb2dad.3744a4", + "wires": [ + + ] + }, + { + "id": "aa414c85.4ebad", + "type": "outcomeTrue", + "name": "false", + "xml": "<outcome value='false'>\n", + "comments": "", + "outputs": 1, + "x": 1005, + "y": 181, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + "350728d2.6ecb38" + ] + ] + }, + { + "id": "1aa89ef4.371e21", + "type": "delete", + "name": "delete Site in AAI", + "xml": "<delete plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='generic-vnf' \n key='generic-vnf.vnf-id = $prop.vnf-index' >", + "comments": "", + "outputs": 1, + "x": 604, + "y": 510, + "z": "7bfb2dad.3744a4", + "wires": [ + [ + + ] + ] + }, + { + "id": "e61bcb70.9a5e48", + "type": "comment", + "name": "TODO: AAI", + "info": "", + "comments": "", + "x": 775, + "y": 512, + "z": "7bfb2dad.3744a4", + "wires": [ + + ] + } +] diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.json new file mode 100644 index 00000000..4b055d10 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.json @@ -0,0 +1,2970 @@ +[ + { + "id": "a77629b2.29acf8", + "type": "dgstart", + "name": "DGSTART", + "outputs": 1, + "x": 104.03125, + "y": 31.999999523162842, + "z": "205403e9.560efc", + "wires": [ + [ + "2a935009.ef91b" + ] + ] + }, + { + "id": "2a935009.ef91b", + "type": "service-logic", + "name": "GENERIC-RESOURCE-API ${project.version}", + "module": "GENERIC-RESOURCE-API", + "version": "${project.version}", + "comments": "", + "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>", + "outputs": 1, + "x": 316.03125381469727, + "y": 104.00001668930054, + "z": "205403e9.560efc", + "wires": [ + [ + "394d3966.f7a306" + ] + ] + }, + { + "id": "394d3966.f7a306", + "type": "method", + "name": "sotn-attachment-topology-operation-activate", + "xml": "<method rpc='sotn-attachment-topology-operation-activate' mode='sync'>\n", + "comments": "", + "outputs": 1, + "x": 304.0313720703125, + "y": 191.99999952316284, + "z": "205403e9.560efc", + "wires": [ + [ + "3355788a.12aa08" + ] + ] + }, + { + "id": "3355788a.12aa08", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 320.0313720703125, + "y": 747.000244140625, + "z": "205403e9.560efc", + "wires": [ + [ + "3df84881.f08dd8", + "d2f1b91d.444978", + "e6d1c52b.520cc8", + "1587558f.923b5a", + "606696e.6cc0f68", + "6558b5c9.5b8bec", + "d1e1bdb5.615f1", + "c7d4c837.69f1a8", + "f3e22a0c.d8db48", + "cb89d188.f33cc", + "3bc10ee7.beb432", + "bef55f2e.ad6b3", + "36004db7.4505d2", + "d7f464d6.9ac5f8", + "a66d68ee.9308e8", + "9ab0f309.357b6", + "f9e2a4f.0cf5858", + "6afb5fe5.f951c", + "7b232ea8.d345" + ] + ] + }, + { + "id": "3df84881.f08dd8", + "type": "set", + "name": "set tmp.ar.allotted-resource-id,etc", + "xml": "<set>\n<parameter name='tmp.ar.allotted-resource-id' value='`connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`' />\n<parameter name='tmp.ar.parent-service-instance-id' value='`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id`' />\n\n\n", + "comments": "", + "x": 717.0248107910156, + "y": 145.99348640441895, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "66bc483f.e63618", + "type": "comment", + "name": "set tmp ar-id to fetch resource from MDSAL", + "info": "", + "comments": "", + "x": 745.9851226806641, + "y": 110.02528238296509, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "d2f1b91d.444978", + "type": "set", + "name": "set tmp.ar.self-link", + "xml": "<set>\n<parameter name='tmp.ar.self-link' value=\"`'restconf/config/GENERIC-RESOURCE-API:connection-attachment-allotted-resources/connection-attachment-allotted-resource/'\n + $tmp.ar.allotted-resource-id\n + '/allotted-resource-data/connection-attachment-topology/'` \" />\n\n", + "comments": "", + "x": 671.0247497558594, + "y": 238.99349164962769, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "c7d4c837.69f1a8", + "type": "execute", + "name": "execute Properties", + "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\n <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />\n <parameter name='contextPrefix' value='prop' />\n", + "comments": "", + "outputs": 1, + "x": 677.2866401672363, + "y": 326.66022062301636, + "z": "205403e9.560efc", + "wires": [ + [ + + ] + ] + }, + { + "id": "e6d1c52b.520cc8", + "type": "execute", + "name": "generate allotted-resource url", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$prop.restapi.connection-attachment-allottedresource`\"/>\n <parameter name=\"outputPath\" value=\"tmp.ar-url\"/>\n <parameter name=\"target\" value=\"{allotted-resource-id}\"/>\n <parameter name=\"replacement\" value=\"`$tmp.ar.allotted-resource-id`\"/>\n", + "comments": "", + "outputs": 1, + "x": 709.2866668701172, + "y": 414.6602020263672, + "z": "205403e9.560efc", + "wires": [ + [ + + ] + ] + }, + { + "id": "1587558f.923b5a", + "type": "get-resource", + "name": "get-resource connection-attachment-allotted-resource", + "xml": "<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='connection-attachment-allotted-resources/connection-attachment-allotted-resource/$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id/' pfx='mdsal-ar' >\n", + "comments": "", + "outputs": 1, + "x": 780.0247650146484, + "y": 504.7712607383728, + "z": "205403e9.560efc", + "wires": [ + [ + "9d21fc06.56c9b", + "b5f5dd22.5d92a" + ] + ] + }, + { + "id": "4c5a1d8d.682774", + "type": "comment", + "name": "GET connection-attachment-allotted-resource from mdsal", + "info": "", + "comments": "", + "x": 786.8395614624023, + "y": 476.53857946395874, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "6cf9a5a4.2b253c", + "type": "comment", + "name": "Used for setting output to API Handler", + "info": "", + "comments": "", + "x": 725.0247802734375, + "y": 205.99350118637085, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "15f9c1a1.7257ee", + "type": "comment", + "name": "Obtain different URL, template location etc", + "info": "For saving resource information to MDSAL & for AAI", + "comments": "", + "x": 743.0247459411621, + "y": 291.88238191604614, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "b17883ed.6bb59", + "type": "comment", + "name": "Used to Get AR by id to MDSAL, same as self-link", + "info": "", + "comments": "", + "x": 769.0247650146484, + "y": 378.88234090805054, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "9d21fc06.56c9b", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 1079.6979675292969, + "y": 489.9999918937683, + "z": "205403e9.560efc", + "wires": [ + [ + "a51a2d9d.383d" + ] + ] + }, + { + "id": "a51a2d9d.383d", + "type": "block", + "name": "block: atomic", + "xml": "<block atomic=\"true\">\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1248.6979713439941, + "y": 488.4998927116394, + "z": "205403e9.560efc", + "wires": [ + [ + "1edb162f.f7047a" + ] + ] + }, + { + "id": "1edb162f.f7047a", + "type": "switchNode", + "name": "switch cr length", + "xml": "<switch test='`$mdsal-ar.connection-attachment-allotted-resource_length`'>\n", + "comments": "", + "outputs": 1, + "x": 1459.5552139282227, + "y": 488.1190218925476, + "z": "205403e9.560efc", + "wires": [ + [ + "2c727498.5563ec", + "cc396d19.c6009" + ] + ] + }, + { + "id": "2c727498.5563ec", + "type": "other", + "name": "outcome 1", + "xml": "<outcome value='1'>\n", + "comments": "", + "outputs": 1, + "x": 1648.8885192871094, + "y": 488.1189799308777, + "z": "205403e9.560efc", + "wires": [ + [ + "94f9a14a.aa9d1" + ] + ] + }, + { + "id": "94f9a14a.aa9d1", + "type": "block", + "name": "block: atomic", + "xml": "<block atomic='true'>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1833.4124088287354, + "y": 485.0238137245178, + "z": "205403e9.560efc", + "wires": [ + [ + "ccbbcb55.91af38", + "ca13a843.2cf298", + "b1755c5c.5e7d2" + ] + ] + }, + { + "id": "151fea4f.a51286", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: SOTN resource not found\" />\n \n", + "comments": "", + "x": 1792.5502090454102, + "y": 566.0660452842712, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "b5f5dd22.5d92a", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1071.5497703552246, + "y": 525.0660767555237, + "z": "205403e9.560efc", + "wires": [ + [ + "318eef9c.54777" + ] + ] + }, + { + "id": "318eef9c.54777", + "type": "block", + "name": "block: atomic", + "xml": "<block atomic=\"true\">\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1251.5497207641602, + "y": 525.7326273918152, + "z": "205403e9.560efc", + "wires": [ + [ + "151fea4f.a51286" + ] + ] + }, + { + "id": "cc396d19.c6009", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1637.2164726257324, + "y": 525.3993401527405, + "z": "205403e9.560efc", + "wires": [ + [ + "151fea4f.a51286" + ] + ] + }, + { + "id": "ccbbcb55.91af38", + "type": "set", + "name": "set connection-attachment-ar from get", + "xml": "<set>\n<parameter name='connection-attachment-ar.' value='$mdsal-ar.connection-attachment-allotted-resource[0].' />\n", + "comments": "", + "x": 2201.4758911132812, + "y": 454.0000534057617, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "b1755c5c.5e7d2", + "type": "set", + "name": "set oper-status", + "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.request-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-ar.allotted-resource-status.rpc-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.svc-request-id`' />\n\n", + "comments": "", + "x": 2135.4759216308594, + "y": 527.4285559654236, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "ca13a843.2cf298", + "type": "switchNode", + "name": "switch order-status", + "xml": "<switch test='`$connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status`'>\n", + "comments": "", + "outputs": 1, + "x": 2145.475700378418, + "y": 492.9999899864197, + "z": "205403e9.560efc", + "wires": [ + [ + "c5c8df87.d7496", + "96fbbcc4.3796a" + ] + ] + }, + { + "id": "c5c8df87.d7496", + "type": "outcome", + "name": "outcome Created", + "xml": "<outcome value='Created'>\n", + "comments": "", + "outputs": 1, + "x": 2381.075782775879, + "y": 487.00002098083496, + "z": "205403e9.560efc", + "wires": [ + [ + "88f78e4e.b4f9" + ] + ] + }, + { + "id": "96fbbcc4.3796a", + "type": "outcome", + "name": "outcome Other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 2374.7902221679688, + "y": 526.4286289215088, + "z": "205403e9.560efc", + "wires": [ + [ + "935468c0.294618" + ] + ] + }, + { + "id": "88f78e4e.b4f9", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 2595.546298980713, + "y": 488.37565517425537, + "z": "205403e9.560efc", + "wires": [ + [ + + ] + ] + }, + { + "id": "935468c0.294618", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" \n value=\"`'Existing connection-attachment-allotted-resource with order status of ' + $connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status + '.'`\" />\n", + "comments": "", + "x": 2614.6980018615723, + "y": 529.0000190734863, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "cd666072.c4472", + "type": "call", + "name": "call GENERIC-RESOURCE-API:sotn-get-request-input-param", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='connection-attachment-get-request-input-param' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 967.3342895507812, + "y": 594.4935550689697, + "z": "205403e9.560efc", + "wires": [ + [ + + ] + ] + }, + { + "id": "f3e22a0c.d8db48", + "type": "block", + "name": "block: atomic", + "xml": "<block atomic=\"true\">\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 649.3403663635254, + "y": 594.4998416900635, + "z": "205403e9.560efc", + "wires": [ + [ + "cd666072.c4472" + ] + ] + }, + { + "id": "606696e.6cc0f68", + "type": "get-resource", + "name": "get-resource parent-service-data", + "xml": "<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='services/service/$tmp.ar.parent-service-instance-id/service-data' pfx='mdsal-psd' >\n", + "comments": "", + "outputs": 1, + "x": 714.0316772460938, + "y": 736.5316162109375, + "z": "205403e9.560efc", + "wires": [ + [ + "f37fbd01.3a27c", + "a7659493.fc2068" + ] + ] + }, + { + "id": "3f9c5fc2.bcfea", + "type": "comment", + "name": "GET parent-service-data from mdsal to check existence of other End point", + "info": "", + "comments": "", + "x": 834.0316162109375, + "y": 665.5315551757812, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "a4aef874.7e7e88", + "type": "for", + "name": "for pidx..mdsal-psd.provided-allotted-resources.provided-allotted-resource[]", + "xml": "<for index='pidx' start='0' end='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`' >\n", + "comments": "", + "outputs": 1, + "x": 1723.2160968780518, + "y": 904.0041084289551, + "z": "205403e9.560efc", + "wires": [ + [ + "c0e3f5d5.ead6e8" + ] + ] + }, + { + "id": "6558b5c9.5b8bec", + "type": "switchNode", + "name": "switch mdsal-psd.provided-allotted-resources_length", + "xml": "<switch test='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`'>\n", + "comments": "", + "outputs": 1, + "x": 780.2154541015625, + "y": 880.7180786132812, + "z": "205403e9.560efc", + "wires": [ + [ + "c8d5ad22.c170b", + "7c868dde.220b24", + "5e4728c1.e810e8" + ] + ] + }, + { + "id": "c8d5ad22.c170b", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1112.3582763671875, + "y": 1157.5755004882812, + "z": "205403e9.560efc", + "wires": [ + [ + "bad30438.d05408" + ] + ] + }, + { + "id": "3a4d0461.4005dc", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1306.4856853485107, + "y": 898.7015209197998, + "z": "205403e9.560efc", + "wires": [ + [ + "a4aef874.7e7e88", + "e5572f4b.0166d" + ] + ] + }, + { + "id": "c0e3f5d5.ead6e8", + "type": "switchNode", + "name": "switch allotted-resource-id", + "xml": "<switch test=\"`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`\">\n\n", + "comments": "", + "outputs": 1, + "x": 2158.3274974823, + "y": 904.0040054321289, + "z": "205403e9.560efc", + "wires": [ + [ + "ac0df227.58a1c", + "39a3c95.9a56f36" + ] + ] + }, + { + "id": "ac0df227.58a1c", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 2367.1377239227295, + "y": 876.4684953689575, + "z": "205403e9.560efc", + "wires": [ + [ + "22a29502.ccff9a" + ] + ] + }, + { + "id": "64186f05.4be35", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 2546.8984203338623, + "y": 940.3256740570068, + "z": "205403e9.560efc", + "wires": [ + [ + "482d5120.f30ca", + "a13cbdb.502bd4" + ] + ] + }, + { + "id": "482d5120.f30ca", + "type": "set", + "name": "set tmp.pidx and ptx.consumed-ar", + "xml": "<set>\n<parameter name='tmp.pidx' value='`$pidx`' />\n<parameter name='tmp.provided-ar.' value='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$pidx].`' />\n<parameter name='tmp.found-in-ar' value='true' />\n<parameter name='tmp.ep-available' value='true' />", + "comments": "", + "x": 2803.755926132202, + "y": 914.8971881866455, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "a13cbdb.502bd4", + "type": "break", + "name": "break", + "xml": "<break>\n", + "comments": "", + "x": 2714.6166439056396, + "y": 961.6532039642334, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "f72ddcab.98ba7", + "type": "comment", + "name": "Check existence of other AR in parent service data", + "info": "Check if other allotted resource is available.", + "comments": "", + "x": 769.993896484375, + "y": 814.8928833007812, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "7c868dde.220b24", + "type": "other", + "name": "outcome 1", + "xml": "<outcome value='1'>\n", + "comments": "", + "outputs": 1, + "x": 1124.0107231140137, + "y": 1028.6772651672363, + "z": "205403e9.560efc", + "wires": [ + [ + "4884d527.f966cc" + ] + ] + }, + { + "id": "bad30438.d05408", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: SOTN resource not found\" />\n \n", + "comments": "", + "x": 1285.0106201171875, + "y": 1156.6772422790527, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "5e4728c1.e810e8", + "type": "other", + "name": "outcome 2", + "xml": "<outcome value='2'>\n", + "comments": "", + "outputs": 1, + "x": 1132.010705947876, + "y": 899.6772212982178, + "z": "205403e9.560efc", + "wires": [ + [ + "3a4d0461.4005dc" + ] + ] + }, + { + "id": "22a29502.ccff9a", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 2525.1219387054443, + "y": 875.6772384643555, + "z": "205403e9.560efc", + "wires": [ + [ + + ] + ] + }, + { + "id": "39a3c95.9a56f36", + "type": "outcomeTrue", + "name": "false", + "xml": "<outcome value='false'>\n", + "comments": "", + "outputs": 1, + "x": 2366.1219387054443, + "y": 938.6772384643555, + "z": "205403e9.560efc", + "wires": [ + [ + "64186f05.4be35" + ] + ] + }, + { + "id": "e5572f4b.0166d", + "type": "switchNode", + "name": "switch tmp.found-in-ar", + "xml": "<switch test='`$tmp.found-in-ar`'>\n\n", + "comments": "", + "outputs": 1, + "x": 1553.0106105804443, + "y": 975.4549942016602, + "z": "205403e9.560efc", + "wires": [ + [ + "23e2fd66.fcd7c2" + ] + ] + }, + { + "id": "23e2fd66.fcd7c2", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1776.0106563568115, + "y": 974.5661640167236, + "z": "205403e9.560efc", + "wires": [ + [ + "8fa1eba4.3c67f8" + ] + ] + }, + { + "id": "8fa1eba4.3c67f8", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1966.0106868743896, + "y": 974.5662136077881, + "z": "205403e9.560efc", + "wires": [ + [ + "5c438258.2817dc" + ] + ] + }, + { + "id": "5c438258.2817dc", + "type": "get-resource", + "name": "get-resource provided-ar.allotted-resource", + "xml": "<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='connection-attachment-allotted-resources/connection-attachment-allotted-resource/$tmp.provided-ar.allotted-resource-id/' pfx='mdsal-other-ar' >", + "comments": "", + "outputs": 1, + "x": 2271.4550399780273, + "y": 1026.5662593841553, + "z": "205403e9.560efc", + "wires": [ + [ + "75e596c5.28a268", + "3fc2682f.986b78" + ] + ] + }, + { + "id": "75e596c5.28a268", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 2571.128242492676, + "y": 1011.7949905395508, + "z": "205403e9.560efc", + "wires": [ + [ + "2d352ea7.0e12c2" + ] + ] + }, + { + "id": "3fc2682f.986b78", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 2562.9800453186035, + "y": 1046.8610754013062, + "z": "205403e9.560efc", + "wires": [ + [ + "1ccb7b0b.274855" + ] + ] + }, + { + "id": "abb4ba72.e83978", + "type": "switchNode", + "name": "switch mdsal-psd.networks_length", + "xml": "<switch test='`$mdsal-psd.networks.network_length`'>\n", + "comments": "", + "outputs": 1, + "x": 1550.3441162109375, + "y": 1127.8997802734375, + "z": "205403e9.560efc", + "wires": [ + [ + "7abae666.d51f58", + "f199acdb.1cc56" + ] + ] + }, + { + "id": "f199acdb.1cc56", + "type": "other", + "name": "outcome 1", + "xml": "<outcome value='1'>\n", + "comments": "", + "outputs": 1, + "x": 1829.343994140625, + "y": 1137.78857421875, + "z": "205403e9.560efc", + "wires": [ + [ + "362dc46c.af4b8c" + ] + ] + }, + { + "id": "7abae666.d51f58", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1823.3441162109375, + "y": 1197.78857421875, + "z": "205403e9.560efc", + "wires": [ + [ + "7c1c105.99f43f" + ] + ] + }, + { + "id": "7c1c105.99f43f", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: Incorrect state found more then 1 network\" />\n \n", + "comments": "", + "x": 1979.9964599609375, + "y": 1198.890380859375, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "df5ebca6.dc1ea", + "type": "set", + "name": "set tmp.network.", + "xml": "<set>\n<parameter name='tmp.network.' value='`$mdsal-psd.networks.network[0].`' />\n", + "comments": "", + "x": 2276.7888259887695, + "y": 1121.7887411117554, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "4884d527.f966cc", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1296.455078125, + "y": 1029.7885131835938, + "z": "205403e9.560efc", + "wires": [ + [ + "abb4ba72.e83978" + ] + ] + }, + { + "id": "362dc46c.af4b8c", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 2021.1217041015625, + "y": 1140.7884521484375, + "z": "205403e9.560efc", + "wires": [ + [ + "df5ebca6.dc1ea", + "37668a8f.d84a36" + ] + ] + }, + { + "id": "37668a8f.d84a36", + "type": "for", + "name": "for nidx..tmp.network.network-data.network-request-input.network...[]", + "xml": "<for index='nidx' start='0' end='`$tmp.network.network-data.network-request-input.network-input-parameters.param_length`' >", + "comments": "", + "outputs": 1, + "x": 2438.1218338012695, + "y": 1188.7885284423828, + "z": "205403e9.560efc", + "wires": [ + [ + "8d783898.486c38" + ] + ] + }, + { + "id": "8d783898.486c38", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 2809.67724609375, + "y": 1221.7884521484375, + "z": "205403e9.560efc", + "wires": [ + [ + "f4f7612.08260a", + "4421135d.084d2c", + "5f144f0e.31549", + "37e78cdf.278a44", + "ed440eb3.36c94", + "f75e941b.01edb8", + "5523625.526319c", + "882c3718.7bb828", + "dae6d839.a75e08", + "bc77042c.0ab858" + ] + ] + }, + { + "id": "f4f7612.08260a", + "type": "switchNode", + "name": "switch access-node-id", + "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$nidx].name == 'access-node-id'`\">", + "comments": "", + "outputs": 1, + "x": 3015.1881942749023, + "y": 1069.7990770339966, + "z": "205403e9.560efc", + "wires": [ + [ + "5989197c.f6f7f8" + ] + ] + }, + { + "id": "5989197c.f6f7f8", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 3204.1878204345703, + "y": 1071.7989416122437, + "z": "205403e9.560efc", + "wires": [ + [ + "b51d0ed2.6b0e5" + ] + ] + }, + { + "id": "b51d0ed2.6b0e5", + "type": "set", + "name": "set tmp.found-in-network tmp.ep-available", + "xml": "<set>\n<parameter name='tmp.found-in-network' value='true' />\n<parameter name='tmp.ep-available' value='true' />", + "comments": "", + "x": 3457.1879959106445, + "y": 1071.3989877700806, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "4421135d.084d2c", + "type": "returnSuccess", + "name": "return success", + "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n", + "comments": "", + "x": 2996.1772994995117, + "y": 1526.7884120941162, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "d1e1bdb5.615f1", + "type": "switchNode", + "name": "switch tmp.ep-available", + "xml": "<switch test='`$tmp.ep-available`'>\n", + "comments": "", + "outputs": 1, + "x": 706.3440551757812, + "y": 1292.2327880859375, + "z": "205403e9.560efc", + "wires": [ + [ + "32c06766.90eaa8", + "3e428e4a.b1f8b2" + ] + ] + }, + { + "id": "3e428e4a.b1f8b2", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 925.0107746124268, + "y": 1341.5661449432373, + "z": "205403e9.560efc", + "wires": [ + [ + "5db74705.3b89f8" + ] + ] + }, + { + "id": "32c06766.90eaa8", + "type": "outcomeTrue", + "name": "false", + "xml": "<outcome value='false'>\n", + "comments": "", + "outputs": 1, + "x": 929.8995761871338, + "y": 1250.5662059783936, + "z": "205403e9.560efc", + "wires": [ + [ + "64e7831f.72ebbc" + ] + ] + }, + { + "id": "64e7831f.72ebbc", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1076.8995723724365, + "y": 1252.4550189971924, + "z": "205403e9.560efc", + "wires": [ + [ + + ] + ] + }, + { + "id": "5db74705.3b89f8", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1095.121862411499, + "y": 1339.5661029815674, + "z": "205403e9.560efc", + "wires": [ + [ + "3c2f6627.61512a", + "380c3c36.553114", + "42f94a2e.999604" + ] + ] + }, + { + "id": "3c2f6627.61512a", + "type": "switchNode", + "name": "switch tmp.found-in-ar", + "xml": "<switch test='`$tmp.found-in-ar`'>\n", + "comments": "", + "outputs": 1, + "x": 1325.23291015625, + "y": 1274.566162109375, + "z": "205403e9.560efc", + "wires": [ + [ + "d79615f7.087d78", + "1c319701.787ef9" + ] + ] + }, + { + "id": "d79615f7.087d78", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1545.677282333374, + "y": 1260.5661029815674, + "z": "205403e9.560efc", + "wires": [ + [ + "ba9cd8cc.15f248" + ] + ] + }, + { + "id": "1c319701.787ef9", + "type": "outcomeTrue", + "name": "false", + "xml": "<outcome value='false'>\n", + "comments": "", + "outputs": 1, + "x": 1546.67724609375, + "y": 1306.566162109375, + "z": "205403e9.560efc", + "wires": [ + [ + "719bb92a.4ee018" + ] + ] + }, + { + "id": "ba9cd8cc.15f248", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1733.232946395874, + "y": 1257.5661029815674, + "z": "205403e9.560efc", + "wires": [ + [ + "a6fc819d.1ebca" + ] + ] + }, + { + "id": "719bb92a.4ee018", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1734.23291015625, + "y": 1305.566162109375, + "z": "205403e9.560efc", + "wires": [ + [ + "815fbac.230c748" + ] + ] + }, + { + "id": "25783fac.20762", + "type": "comment", + "name": "GET connection-attachment-ar to store AR data from mdsal", + "info": "", + "comments": "", + "x": 2265.5040397644043, + "y": 416.5039129257202, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "b02bb1b6.e7f4b", + "type": "comment", + "name": "Set source end point", + "info": "", + "comments": "", + "x": 671.0039176940918, + "y": 562.2539224624634, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "cb89d188.f33cc", + "type": "set", + "name": "set tmp.ar.parent-service-instance-id", + "xml": "<set>\n<parameter name='tmp.ar.parent-service-instance-id' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` \" />\n\n", + "comments": "", + "x": 725, + "y": 701, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "f37fbd01.3a27c", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 961, + "y": 729, + "z": "205403e9.560efc", + "wires": [ + [ + "204f751a.862bca" + ] + ] + }, + { + "id": "a7659493.fc2068", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 952.8518028259277, + "y": 764.0660848617554, + "z": "205403e9.560efc", + "wires": [ + [ + "7b61e92b.2f9e78" + ] + ] + }, + { + "id": "7b61e92b.2f9e78", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: SOTN resource not found\" />\n \n", + "comments": "", + "x": 1128.00048828125, + "y": 760.3334350585938, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "204f751a.862bca", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1112, + "y": 727, + "z": "205403e9.560efc", + "wires": [ + [ + + ] + ] + }, + { + "id": "1ccb7b0b.274855", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: SOTN provided attachment resource not found\" />\n \n", + "comments": "", + "x": 2732.9999256134033, + "y": 1048.0000953674316, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "2d352ea7.0e12c2", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 2716.9999256134033, + "y": 1009.0000953674316, + "z": "205403e9.560efc", + "wires": [ + [ + + ] + ] + }, + { + "id": "3bc10ee7.beb432", + "type": "set", + "name": "set tmp.found-in-ar tmp.found-in-network tmp.ep-available to false", + "xml": "<set>\n<parameter name='tmp.found-in-ar' value='false' />\n<parameter name='tmp.found-in-network' value='false' />\n<parameter name='tmp.ep-available' value='false' />", + "comments": "", + "x": 817, + "y": 846, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "c79a6189.fcf2c", + "type": "comment", + "name": "If other EP exists set destination end point", + "info": "Check if other allotted resource is available.", + "comments": "", + "x": 757, + "y": 1217, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "bac44858.bd4fb8", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1524, + "y": 1423, + "z": "205403e9.560efc", + "wires": [ + [ + "43736465.ded50c", + "1f0536d6.03d209", + "1c6c8b83.e7b554", + "804dff2.f416", + "faab91d9.9baa6", + "40922023.6161", + "cce7fa52.3ac5b8", + "afdc2a42.250d98" + ] + ] + }, + { + "id": "43736465.ded50c", + "type": "switchNode", + "name": "switch access-node-id", + "xml": "<switch test=\"`$tmp.ep.parameters.param[$idx].name == 'access-node-id'`\">", + "comments": "", + "outputs": 1, + "x": 1760.51025390625, + "y": 1356.0103759765625, + "z": "205403e9.560efc", + "wires": [ + [ + "327e9777.bfc4d8" + ] + ] + }, + { + "id": "1f0536d6.03d209", + "type": "returnSuccess", + "name": "return success", + "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n", + "comments": "", + "x": 1733.5002059936523, + "y": 1661.0003395080566, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "1c6c8b83.e7b554", + "type": "switchNode", + "name": "switch access-ltp-id", + "xml": "<switch test=\"`$tmp.ep.parameters.param[$idx].name == 'access-ltp-id'`\">", + "comments": "", + "outputs": 1, + "x": 1752.0000839233398, + "y": 1399.777907371521, + "z": "205403e9.560efc", + "wires": [ + [ + "a140ea29.0beb08" + ] + ] + }, + { + "id": "804dff2.f416", + "type": "switchNode", + "name": "switch clientSignal", + "xml": "<switch test=\"`$tmp.ep.parameters.param[$idx].name == 'clientSignal'`\">", + "comments": "", + "outputs": 1, + "x": 1746.0001220703125, + "y": 1445.7779541015625, + "z": "205403e9.560efc", + "wires": [ + [ + "ce02a989.0990f8" + ] + ] + }, + { + "id": "faab91d9.9baa6", + "type": "switchNode", + "name": "switch cVLAN", + "xml": "<switch test=\"`$tmp.ep.parameters.param[$idx].name == 'cVLAN'`\">", + "comments": "", + "outputs": 1, + "x": 1729.9896240234375, + "y": 1484.7674560546875, + "z": "205403e9.560efc", + "wires": [ + [ + "f26df0a2.edf49" + ] + ] + }, + { + "id": "327e9777.bfc4d8", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1938.22216796875, + "y": 1356.666748046875, + "z": "205403e9.560efc", + "wires": [ + [ + "ded3a3b2.bb6de" + ] + ] + }, + { + "id": "ded3a3b2.bb6de", + "type": "set", + "name": "set dst-access-node-id", + "xml": "<set>\n<parameter name='prop.remote.connection-attachment.access-node-id' value='`$tmp.ep.parameters.param[$idx].value`' />", + "comments": "", + "x": 2111.22216796875, + "y": 1356.2667236328125, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "a140ea29.0beb08", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1933.7120361328125, + "y": 1399.4342041015625, + "z": "205403e9.560efc", + "wires": [ + [ + "d26fb8e0.ff59f8" + ] + ] + }, + { + "id": "ce02a989.0990f8", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1933.7120361328125, + "y": 1445.4342041015625, + "z": "205403e9.560efc", + "wires": [ + [ + "ee911b75.034b28" + ] + ] + }, + { + "id": "f26df0a2.edf49", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1933.7015380859375, + "y": 1484.423828125, + "z": "205403e9.560efc", + "wires": [ + [ + "16f5641b.4b39fc" + ] + ] + }, + { + "id": "380c3c36.553114", + "type": "for", + "name": "for idx..tmp.ep.parameters[]", + "xml": "<for index='idx' start='0' end='`$tmp.ep.parameters.param_length`' >", + "comments": "", + "outputs": 1, + "x": 1342, + "y": 1356, + "z": "205403e9.560efc", + "wires": [ + [ + "bac44858.bd4fb8" + ] + ] + }, + { + "id": "a6fc819d.1ebca", + "type": "set", + "name": "set tmp.ep.parameters", + "xml": "<set>\n<parameter name='tmp.ep.parameters' value='`$mdsal-other-ar.allotted-resource-data.connection-attachment-topology.connection-attachment-parameters`' />", + "comments": "", + "x": 1945, + "y": 1257, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "815fbac.230c748", + "type": "set", + "name": "set tmp.ep.parameters", + "xml": "<set>\n<parameter name='tmp.ep.parameters' value='`$tmp.network.network-data.network-request-input.network-input-parameters`' />\n", + "comments": "", + "x": 1945.999963760376, + "y": 1301.0000591278076, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "d26fb8e0.ff59f8", + "type": "set", + "name": "set dst-access-node-id", + "xml": "<set>\n<parameter name='prop.remote.connection-attachment.access-ltp-id' value='`$tmp.ep.parameters.param[$idx].value`' />", + "comments": "", + "x": 2111, + "y": 1399, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "ee911b75.034b28", + "type": "set", + "name": "set dst-clientSignal", + "xml": "<set>\n<parameter name='prop.remote.connection-attachment.clientSignal' value='`$tmp.ep.parameters.param[$idx].value`' />", + "comments": "", + "x": 2105, + "y": 1443, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "16f5641b.4b39fc", + "type": "set", + "name": "set dst-cVLAN", + "xml": "<set>\n<parameter name='prop.remote.connection-attachment.cVLAN' value='`$tmp.ep.parameters.param[$idx].value`' />", + "comments": "", + "x": 2096, + "y": 1482, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "42f94a2e.999604", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 736, + "y": 1584, + "z": "205403e9.560efc", + "wires": [ + [ + "cb687dc5.52b2d", + "4ed51df6.e8ec54" + ] + ] + }, + { + "id": "164aff86.323ed", + "type": "comment", + "name": "Get controller info and send request", + "info": "", + "comments": "", + "x": 686, + "y": 1546, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "9edea41a.d68a58", + "type": "execute", + "name": "execute RestApiCallNode Create ethernet Service", + "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sotn-ethernet-service.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + 'restconf/data/ietf-eth-tran-service:etht-svc'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"patch\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />", + "comments": "", + "outputs": 1, + "x": 1379.0000305175781, + "y": 2062.0007610321045, + "z": "205403e9.560efc", + "wires": [ + [ + "616e1655.379198", + "b0089735.e037f8" + ] + ] + }, + { + "id": "616e1655.379198", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 1666.0000228881836, + "y": 2083.0007104873657, + "z": "205403e9.560efc", + "wires": [ + [ + "96c14b60.8835b8" + ] + ] + }, + { + "id": "96c14b60.8835b8", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "comments": "", + "outputs": 1, + "x": 1835.9999618530273, + "y": 2086.0007104873657, + "z": "205403e9.560efc", + "wires": [ + [ + + ] + ] + }, + { + "id": "a39478d4.ff01e8", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Create vpn rest api\" />\n", + "comments": "", + "x": 1836.0000839233398, + "y": 2042.0007104873657, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "b0089735.e037f8", + "type": "failure", + "name": "failure", + "xml": "<outcome value='failure'>\n", + "comments": "", + "outputs": 1, + "x": 1668.9999618530273, + "y": 2042.0007104873657, + "z": "205403e9.560efc", + "wires": [ + [ + "a39478d4.ff01e8" + ] + ] + }, + { + "id": "ed031fec.cf219", + "type": "failure", + "name": "failure", + "xml": "<outcome value='failure'>\n", + "comments": "", + "outputs": 1, + "x": 1018.7622451782227, + "y": 2481.953144431114, + "z": "205403e9.560efc", + "wires": [ + [ + "2bd27313.7e4a0c" + ] + ] + }, + { + "id": "2bd27313.7e4a0c", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"AAI failed\" />\n", + "comments": "", + "x": 1185.2861251831055, + "y": 2493.572215437889, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "581d8c50.26f904", + "type": "failure", + "name": "not-found", + "xml": "<outcome value='not-found'>\n", + "comments": "", + "outputs": 1, + "x": 1025.8575325012207, + "y": 2514.715112090111, + "z": "205403e9.560efc", + "wires": [ + [ + "2bd27313.7e4a0c" + ] + ] + }, + { + "id": "9aeb74dd.a24a08", + "type": "comment", + "name": "Save Resource to AAI", + "info": "", + "comments": "", + "x": 737.8099594116211, + "y": 2464.302532672882, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "9158a090.142c2", + "type": "comment", + "name": "TODO: Rework after confirmation from AAI", + "info": "", + "comments": "", + "x": 1038.1688690185547, + "y": 2441.873571395874, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "f9e2a4f.0cf5858", + "type": "set", + "name": "set output to api handler", + "xml": "<set>\n<parameter name='allotted-resource-id' value='`$tmp.ar.allotted-resource-id`' />\n<parameter name='connection-attachment-object-path' value=\"`$tmp.ar.self-link`\"/>\n<parameter name='service-object-path' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $connection-attachment-topology-operation-input.service-information.service-instance-id\n + '/service-data/service-topology/'`\"/>\n \n", + "comments": "", + "x": 752.5776557922363, + "y": 2385.828013896942, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "6afb5fe5.f951c", + "type": "returnSuccess", + "name": "return success", + "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n", + "comments": "", + "x": 720.9907379150391, + "y": 2546.443766117096, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "9ab0f309.357b6", + "type": "execute", + "name": "execute RestApiCallNode - PUT AR by id", + "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='templateFileName' value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.sotn-attachment.templatefile`\" />\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url`' />\n <parameter name='restapiUser' value='`$prop.controller.user`' />\n <parameter name='restapiPassword' value='`$prop.controller.pwd`' />\n <parameter name='format' value='json' />\n <parameter name='httpMethod' value='PUT' />\n <parameter name=\"responsePrefix\" value=\"mdsal-ar\" />\n\n", + "comments": "", + "outputs": 1, + "x": 802.309757232666, + "y": 2293.4687876701355, + "z": "205403e9.560efc", + "wires": [ + [ + "cf614e80.0a4b3", + "6d53da86.669ad4", + "131ccd05.2f3143" + ] + ] + }, + { + "id": "cf614e80.0a4b3", + "type": "not-found", + "name": "not-found", + "xml": "<outcome value='not-found'>\n", + "comments": "", + "outputs": 1, + "x": 1070.9511337280273, + "y": 2344.8001994118094, + "z": "205403e9.560efc", + "wires": [ + [ + "ef1dfc84.71501" + ] + ] + }, + { + "id": "6d53da86.669ad4", + "type": "failure", + "name": "failure", + "xml": "<outcome value='failure'>\n", + "comments": "", + "outputs": 1, + "x": 1061.9511833190918, + "y": 2313.300225161016, + "z": "205403e9.560efc", + "wires": [ + [ + "ef1dfc84.71501" + ] + ] + }, + { + "id": "131ccd05.2f3143", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 1065.7012214660645, + "y": 2283.6573300361633, + "z": "205403e9.560efc", + "wires": [ + [ + "e18bb85.a259b48" + ] + ] + }, + { + "id": "ef1dfc84.71501", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error updating md-sal for connection-attachment-allotted-resource\" />\n", + "comments": "", + "x": 1231.7012214660645, + "y": 2314.050249002874, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "e18bb85.a259b48", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1207.3571891784668, + "y": 2279.8494992256165, + "z": "205403e9.560efc", + "wires": [ + [ + + ] + ] + }, + { + "id": "bef55f2e.ad6b3", + "type": "set", + "name": "set ar-data", + "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-status.action' value=\"`$connection-attachment-topology-operation-input.request-information.request-action` \" />\n<parameter name='connection-attachment-ar.allotted-resource-status.rpc-name' value=\"connection-attachment-topology-operation\" />\n<parameter name='connection-attachment-ar.allotted-resource-status.rpc-action' value=\"`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.' value=\"`$connection-attachment-topology-operation-input.request-information.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.' value=\"`$connection-attachment-topology-operation-input.sdnc-request-header.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.service-information.' value=\"`$connection-attachment-topology-operation-input.service-information.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.` \" />", + "comments": "", + "x": 707.5233535766602, + "y": 2144.849767923355, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "d7f464d6.9ac5f8", + "type": "execute", + "name": "execute getTime", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setTime' >\n <parameter name=\"outputPath\" value=\"tmp.current-time\" />\n\n", + "comments": "", + "outputs": 1, + "x": 724.809196472168, + "y": 2217.4693655967712, + "z": "205403e9.560efc", + "wires": [ + [ + + ] + ] + }, + { + "id": "a66d68ee.9308e8", + "type": "set", + "name": "set allotted-resource-oper-status", + "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status' value='Active' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-topology-operation-input.request-information.request-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-request-id`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.create-timestamp' value='`$tmp.current-time`' />\n", + "comments": "", + "x": 774.7962760925293, + "y": 2254.420445919037, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "36004db7.4505d2", + "type": "set", + "name": "set model-data", + "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-data.connection-attachment-topology.onap-model-information.' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.` \" />", + "comments": "", + "x": 721.3648948669434, + "y": 2184.0244183540344, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "8c652fd0.4d9e2", + "type": "comment", + "name": "Prepare data for allotted-resource addition to MDSAL", + "info": "This will add to allotted-resource which is present inside service.", + "comments": "", + "x": 834.698356628418, + "y": 2105.0243704319, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "69186aa2.60ef84", + "type": "comment", + "name": "Add to allotted-resources in mdsal", + "info": "", + "comments": "", + "x": 776.2781829833984, + "y": 2072.437672138214, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "7b232ea8.d345", + "type": "update", + "name": "update AAI allotted-resource", + "xml": "<update plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"allotted-resource\" \n\t\tkey=\"customer.global-customer-id = $connection-attachment-topology-operation-input.service-information.global-customer-id AND\n\t\t\tservice-subscription.service-type = $connection-attachment-topology-operation-input.service-information.subscription-service-type AND\n\t\t\tservice-instance.service-instance-id = $connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id AND\n\t\t\tallotted-resource.id = $tmp.ar.allotted-resource-id\"\n pfx='pfx' local-only='false' force='false'>\n\t<parameter name=\"description\" value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type`\" />\n\t<parameter name=\"selflink\" value=\"`$tmp.ar.self-link`\" />\n\t<parameter name=\"model-invariant-id\" value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-invariant-uuid`\" />\n\t<parameter name=\"model-version-id\" value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-uuid`\" />\n\t<parameter name=\"operational-status\" value=\"Active\" />\n", + "comments": "", + "outputs": 1, + "x": 764.2542381286621, + "y": 2501.754675388336, + "z": "205403e9.560efc", + "wires": [ + [ + "ed031fec.cf219", + "581d8c50.26f904" + ] + ] + }, + { + "id": "cb687dc5.52b2d", + "type": "execute", + "name": "execute RestApiCallNode getPath from OOF", + "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.oof-getpath.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.restapi.connection-oof-url'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.oof.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.oof.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"oof\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />", + "comments": "", + "outputs": 1, + "x": 1043.0040130615234, + "y": 1572.2544918060303, + "z": "205403e9.560efc", + "wires": [ + [ + "e275a7ba.f6ec08", + "ec20f395.66c91" + ] + ] + }, + { + "id": "e275a7ba.f6ec08", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 1350.0039558410645, + "y": 1593.2543387413025, + "z": "205403e9.560efc", + "wires": [ + [ + "d000e963.b327a8" + ] + ] + }, + { + "id": "d000e963.b327a8", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "comments": "", + "outputs": 1, + "x": 1520.0038948059082, + "y": 1596.2543387413025, + "z": "205403e9.560efc", + "wires": [ + [ + + ] + ] + }, + { + "id": "773ede9b.4ecb", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Create vpn rest api\" />\n", + "comments": "", + "x": 1520.0040168762207, + "y": 1552.2543387413025, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "ec20f395.66c91", + "type": "failure", + "name": "failure", + "xml": "<outcome value='failure'>\n", + "comments": "", + "outputs": 1, + "x": 1353.0038948059082, + "y": 1552.2543387413025, + "z": "205403e9.560efc", + "wires": [ + [ + "773ede9b.4ecb" + ] + ] + }, + { + "id": "461ac2a4.5bdfec", + "type": "comment", + "name": "Get VPNs from OOF", + "info": "", + "comments": "", + "x": 963.0079040527344, + "y": 1535.2584590911865, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "4ed51df6.e8ec54", + "type": "for", + "name": "for vidx..oof.vpns_length[]", + "xml": "<for index='vidx' start='0' end='`$oof.vpns_length`' >", + "comments": "", + "outputs": 1, + "x": 994.0039024353027, + "y": 1656.5040574073792, + "z": "205403e9.560efc", + "wires": [ + [ + "fa8596fd.dc6fb8" + ] + ] + }, + { + "id": "9e6cff97.3e047", + "type": "comment", + "name": "Loop through VPN and configure them", + "info": "", + "comments": "", + "x": 1016.004020690918, + "y": 1620.0043177604675, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "5f144f0e.31549", + "type": "switchNode", + "name": "switch name", + "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'name'`\">\n", + "comments": "", + "outputs": 1, + "x": 2994.7882919311523, + "y": 1167.1217517852783, + "z": "205403e9.560efc", + "wires": [ + [ + "36d080c6.aaac9" + ] + ] + }, + { + "id": "36d080c6.aaac9", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 3181.788299560547, + "y": 1161.1216888427734, + "z": "205403e9.560efc", + "wires": [ + [ + "dd94e80d.e79a58" + ] + ] + }, + { + "id": "dd94e80d.e79a58", + "type": "set", + "name": "set etht-svc-name & bandwidth-profile-name", + "xml": "<set>\n<parameter name='prop.global.sotn.etht-svc-name' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n<parameter name='prop.global.sotn.bandwidth-profile-name' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 3443.788589477539, + "y": 1147.721715927124, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "37e78cdf.278a44", + "type": "switchNode", + "name": "switch description", + "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'description'`\">\n", + "comments": "", + "outputs": 1, + "x": 3005.627960205078, + "y": 1205.1216869354248, + "z": "205403e9.560efc", + "wires": [ + [ + "87cfc59c.1be938" + ] + ] + }, + { + "id": "87cfc59c.1be938", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 3175.627960205078, + "y": 1201.1216869354248, + "z": "205403e9.560efc", + "wires": [ + [ + "af30cb49.aad268" + ] + ] + }, + { + "id": "af30cb49.aad268", + "type": "set", + "name": "set etht-svc-descr", + "xml": "<set>\n<parameter name='prop.global.sotn.etht-svc-descr' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 3362.961400985718, + "y": 1199.5828437805176, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "ed440eb3.36c94", + "type": "switchNode", + "name": "switch tenantId", + "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'tenantId'`\">\n", + "comments": "", + "outputs": 1, + "x": 2991.010353088379, + "y": 1251.455090522766, + "z": "205403e9.560efc", + "wires": [ + [ + "824d6eab.2a9f8" + ] + ] + }, + { + "id": "824d6eab.2a9f8", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 3183.010341644287, + "y": 1244.4550142288208, + "z": "205403e9.560efc", + "wires": [ + [ + "58ea9e80.950b3" + ] + ] + }, + { + "id": "58ea9e80.950b3", + "type": "set", + "name": "set tenantId", + "xml": "<set>\n<parameter name='prop.global.sotn.tenantId' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 3351.010341644287, + "y": 1245.0550203323364, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "5523625.526319c", + "type": "switchNode", + "name": "switch CIR", + "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'CIR'`\">\n", + "comments": "", + "outputs": 1, + "x": 2977.849998474121, + "y": 1338.455072402954, + "z": "205403e9.560efc", + "wires": [ + [ + "6cc5147d.9f838c" + ] + ] + }, + { + "id": "6cc5147d.9f838c", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 3185.850067138672, + "y": 1334.4550857543945, + "z": "205403e9.560efc", + "wires": [ + [ + "5119c20c.53e31c" + ] + ] + }, + { + "id": "5119c20c.53e31c", + "type": "set", + "name": "set cir", + "xml": "<set>\n<parameter name='prop.sotn.cir' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 3335.1833877563477, + "y": 1332.9162330627441, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "f75e941b.01edb8", + "type": "switchNode", + "name": "switch vpnType", + "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'vpnType'`\">\n", + "comments": "", + "outputs": 1, + "x": 2997.1584701538086, + "y": 1292.2327914237976, + "z": "205403e9.560efc", + "wires": [ + [ + "94f8c651.7d4c68" + ] + ] + }, + { + "id": "94f8c651.7d4c68", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 3184.1584701538086, + "y": 1288.2327914237976, + "z": "205403e9.560efc", + "wires": [ + [ + "a2401fbd.0e5a6" + ] + ] + }, + { + "id": "a2401fbd.0e5a6", + "type": "set", + "name": "set vpnType", + "xml": "<set>\n<parameter name='prop.global.sotn.vpnType' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 3353.49210357666, + "y": 1285.693956375122, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "882c3718.7bb828", + "type": "switchNode", + "name": "switch EIR", + "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'EIR'`\">\n", + "comments": "", + "outputs": 1, + "x": 2979.140449523926, + "y": 1381.1529388427734, + "z": "205403e9.560efc", + "wires": [ + [ + "6a090cfc.b29bc4" + ] + ] + }, + { + "id": "6a090cfc.b29bc4", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 3181.140411376953, + "y": 1376.152958869934, + "z": "205403e9.560efc", + "wires": [ + [ + "7cfdc8c0.796128" + ] + ] + }, + { + "id": "7cfdc8c0.796128", + "type": "set", + "name": "set eir", + "xml": "<set>\n<parameter name='prop.global.sotn.eir' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 3337.4739151000977, + "y": 1375.614094734192, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "dae6d839.a75e08", + "type": "switchNode", + "name": "switch color-aware", + "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'color-aware'`\">\n", + "comments": "", + "outputs": 1, + "x": 3006.1407203674316, + "y": 1435.152904510498, + "z": "205403e9.560efc", + "wires": [ + [ + "1c170ed.c3c73f1" + ] + ] + }, + { + "id": "1c170ed.c3c73f1", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 3184.140724182129, + "y": 1429.1528968811035, + "z": "205403e9.560efc", + "wires": [ + [ + "aafef618.cfb6d8" + ] + ] + }, + { + "id": "aafef618.cfb6d8", + "type": "set", + "name": "set colorAware", + "xml": "<set>\n<parameter name='prop.global.sotn.colorAware' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 3365.4741020202637, + "y": 1428.614055633545, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "bc77042c.0ab858", + "type": "switchNode", + "name": "switch coupling-flag", + "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'coupling-flag'`\">\n", + "comments": "", + "outputs": 1, + "x": 3006.140727996826, + "y": 1481.1529293060303, + "z": "205403e9.560efc", + "wires": [ + [ + "9c20abd0.a9e0c8" + ] + ] + }, + { + "id": "9c20abd0.a9e0c8", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 3184.1407203674316, + "y": 1473.1528978347778, + "z": "205403e9.560efc", + "wires": [ + [ + "28950acd.c17166" + ] + ] + }, + { + "id": "28950acd.c17166", + "type": "set", + "name": "set couplingFlag", + "xml": "<set>\n<parameter name='prop.global.sotn.couplingFlag' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />\n", + "comments": "", + "x": 3369.4741020202637, + "y": 1473.6140804290771, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "dddada55.283bb8", + "type": "comment", + "name": "Check if other EP exists in SOTNConnectionResource", + "info": "", + "comments": "", + "x": 3109.3440551757812, + "y": 1034.7883319854736, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "e2fb1fc.98e08e", + "type": "comment", + "name": "Get other global parameters from network", + "info": "", + "comments": "", + "x": 3080.3438568115234, + "y": 1126.7882843017578, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "40922023.6161", + "type": "switchNode", + "name": "switch access-provider-id", + "xml": "<switch test=\"`$tmp.ep.parameters.param[$idx].name == 'access-provider-id'`\">", + "comments": "", + "outputs": 1, + "x": 1767.56591796875, + "y": 1530.232666015625, + "z": "205403e9.560efc", + "wires": [ + [ + "dcc5b1ab.d080a" + ] + ] + }, + { + "id": "dcc5b1ab.d080a", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1954.56591796875, + "y": 1526.232666015625, + "z": "205403e9.560efc", + "wires": [ + [ + "61749b73.8eae04" + ] + ] + }, + { + "id": "61749b73.8eae04", + "type": "set", + "name": "set access-provider-id", + "xml": "<set>\n<parameter name='prop.remote.connection-attachment.access-provider-id' value='`$tmp.ep.parameters.param[$idx].value`' />\n", + "comments": "", + "x": 2122.56591796875, + "y": 1526.8326721191406, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "cce7fa52.3ac5b8", + "type": "switchNode", + "name": "switch access-client-id", + "xml": "<switch test=\"`$tmp.ep.parameters.param[$idx].name == 'access-client-id'`\">", + "comments": "", + "outputs": 1, + "x": 1758.565933227539, + "y": 1573.2431144714355, + "z": "205403e9.560efc", + "wires": [ + [ + "17cba761.8a69d9" + ] + ] + }, + { + "id": "17cba761.8a69d9", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1945.565933227539, + "y": 1569.2431144714355, + "z": "205403e9.560efc", + "wires": [ + [ + "e72fdf36.f1b28" + ] + ] + }, + { + "id": "e72fdf36.f1b28", + "type": "set", + "name": "set access-client-id", + "xml": "<set>\n<parameter name='prop.remote.connection-attachment.access-client-id' value='`$tmp.ep.parameters.param[$idx].value`' />\n", + "comments": "", + "x": 2113.565933227539, + "y": 1569.8431205749512, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "afdc2a42.250d98", + "type": "switchNode", + "name": "switch access-topology-id", + "xml": "<switch test=\"`$tmp.ep.parameters.param[$idx].name == 'access-topology-id'`\">", + "comments": "", + "outputs": 1, + "x": 1771.5658779144287, + "y": 1615.2431454658508, + "z": "205403e9.560efc", + "wires": [ + [ + "d336b3c.0b7875" + ] + ] + }, + { + "id": "d336b3c.0b7875", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1958.5658779144287, + "y": 1611.2431454658508, + "z": "205403e9.560efc", + "wires": [ + [ + "85508473.900a98" + ] + ] + }, + { + "id": "85508473.900a98", + "type": "set", + "name": "set access-topology-id", + "xml": "<set>\n<parameter name='prop.remote.connection-attachment.access-topology-id' value='`$tmp.ep.parameters.param[$idx].value`' />\n", + "comments": "", + "x": 2126.5658779144287, + "y": 1611.8431515693665, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "fa8596fd.dc6fb8", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1066.1213836669922, + "y": 1742.3442287445068, + "z": "205403e9.560efc", + "wires": [ + [ + "9edea41a.d68a58", + "abb09171.f6ee", + "abc114d6.41e528", + "9b39618e.ffe5f" + ] + ] + }, + { + "id": "521aa066.c8761", + "type": "set", + "name": "set controller data", + "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.url' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.user' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.password' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`\" />\n", + "comments": "", + "x": 1764.56591796875, + "y": 1896.6771240234375, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "abb09171.f6ee", + "type": "get-resource", + "name": "get-resource esr-thirdparty-sdnc", + "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"esr-thirdparty-sdnc\" \n\t\tkey=\"esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND \n\t\t depth = '1'\"\n pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\n\n", + "comments": "", + "outputs": 1, + "x": 1328.0658569335938, + "y": 1955.6771240234375, + "z": "205403e9.560efc", + "wires": [ + [ + "b2bcb2cd.da9e", + "d1f1ad90.96011", + "bed51f39.f008" + ] + ] + }, + { + "id": "b2bcb2cd.da9e", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 1567.0658569335938, + "y": 1908.6771240234375, + "z": "205403e9.560efc", + "wires": [ + [ + "521aa066.c8761" + ] + ] + }, + { + "id": "d1f1ad90.96011", + "type": "not-found", + "name": "not-found", + "xml": "<outcome value='not-found'>\n", + "comments": "", + "outputs": 1, + "x": 1570.5568237304688, + "y": 1956.2511596679688, + "z": "205403e9.560efc", + "wires": [ + [ + "d02c15ce.c1c438" + ] + ] + }, + { + "id": "bed51f39.f008", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1565.8898315429688, + "y": 1997.58447265625, + "z": "205403e9.560efc", + "wires": [ + [ + "1dfb5bf0.cbb2c4" + ] + ] + }, + { + "id": "d02c15ce.c1c438", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'An error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`\" />\n\n", + "comments": "", + "x": 1747.1282348632812, + "y": 1944.5368957519531, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "1dfb5bf0.cbb2c4", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'Unexpected error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`\" />\n\n", + "comments": "", + "x": 1753.6623878479004, + "y": 1993.0236654281616, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "abc114d6.41e528", + "type": "get-resource", + "name": "get-resource pnf", + "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"pnf\" \n\t\tkey=\"pnf.pnf-name = $oof.vpn.access-node-id AND \n\t\t depth = '0'\"\n pfx='tmp.aai.pnf' local-only='false' >\n\n", + "comments": "", + "outputs": 1, + "x": 1274.56591796875, + "y": 1768.6771240234375, + "z": "205403e9.560efc", + "wires": [ + [ + "e5c7f4bb.a977b8", + "c9ac24e7.49a298", + "89a637ca.249d28" + ] + ] + }, + { + "id": "e5c7f4bb.a977b8", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 1621.5658569335938, + "y": 1772.6771545410156, + "z": "205403e9.560efc", + "wires": [ + [ + "9bb25e1d.4626" + ] + ] + }, + { + "id": "c9ac24e7.49a298", + "type": "not-found", + "name": "not-found", + "xml": "<outcome value='not-found'>\n", + "comments": "", + "outputs": 1, + "x": 1625.0568237304688, + "y": 1820.2511901855469, + "z": "205403e9.560efc", + "wires": [ + [ + "700f50e2.2becf" + ] + ] + }, + { + "id": "89a637ca.249d28", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1620.3898315429688, + "y": 1861.5845031738281, + "z": "205403e9.560efc", + "wires": [ + [ + "634a1d02.90e474" + ] + ] + }, + { + "id": "700f50e2.2becf", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`\" />\n\n", + "comments": "", + "x": 1801.6282348632812, + "y": 1808.5369262695312, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "634a1d02.90e474", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`\" />\n\n", + "comments": "", + "x": 1808.1623878479004, + "y": 1857.0236959457397, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "9bb25e1d.4626", + "type": "set", + "name": "set tmp.thirdparty-sdnc-id", + "xml": "<set>\n<parameter name='tmp.thirdparty-sdnc-id' value=\"`$tmp.aai.pnf.relationship-list.relationship[0].relationship-data[0].relationship-value`\" />\n", + "comments": "", + "x": 1825.5658569335938, + "y": 1759.6771545410156, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "f371e386.134de", + "type": "comment", + "name": "get domain controller information", + "info": "", + "comments": "", + "x": 1319.0697860717773, + "y": 1734.6810216903687, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "9b39618e.ffe5f", + "type": "set", + "name": "set oof.vpn", + "xml": "<set>\n<parameter name='oof.vpn.' value='`$oof.vpns[$vidx].`' />", + "comments": "", + "x": 1256.5658874511719, + "y": 1695.7881488800049, + "z": "205403e9.560efc", + "wires": [ + + ] + }, + { + "id": "ab06a549.912008", + "type": "comment", + "name": "TODO: Add VPN resource and its relation with SOTN Connectivity resource", + "info": "", + "comments": "", + "x": 1452.0103912353516, + "y": 2134.6769676208496, + "z": "205403e9.560efc", + "wires": [ + + ] + } +] diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-create.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-create.json new file mode 100644 index 00000000..df8edd0c --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-create.json @@ -0,0 +1,1281 @@ +[ + { + "id": "325842f8.71766e", + "type": "dgstart", + "name": "DGSTART", + "outputs": 1, + "x": 107.03125, + "y": 44.03125, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "260e5d2a.9ebe72" + ] + ] + }, + { + "id": "260e5d2a.9ebe72", + "type": "service-logic", + "name": "GENERIC-RESOURCE-API ${project.version}", + "module": "GENERIC-RESOURCE-API", + "version": "${project.version}", + "comments": "", + "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>", + "outputs": 1, + "x": 319.03125381469727, + "y": 116.0312671661377, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "aa492387.d875a" + ] + ] + }, + { + "id": "aa492387.d875a", + "type": "method", + "name": "sotn-attachment-topology-operation-create", + "xml": "<method rpc='sotn-attachment-topology-operation-create' mode='sync'>\n", + "comments": "", + "outputs": 1, + "x": 307.0313720703125, + "y": 204.03125, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "3ba2475a.82b468" + ] + ] + }, + { + "id": "3ba2475a.82b468", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 227.03130340576172, + "y": 953.0314979553223, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "5b9fedc5.bb21a4", + "1c8d2bb9.f29f94", + "269db4cc.d4abfc", + "373e17e2.9acc38", + "5fd13a1.e2465c4", + "acb04fc4.b40f4", + "574b7ca7.0881c4", + "35a496d5.57302a", + "950a621f.7b821", + "5dbf4a35.fd12c4", + "5accbcde.210f64", + "de4bba44.8919f8", + "a1a37b4b.52c8a8", + "63023c8e.9fcb64", + "a6efd3b6.3278d", + "994d951b.a5b738", + "8ee1af3e.bbe67", + "ad95dda4.7a6dd", + "efc5e53d.5d75a8", + "72c54e75.d1648", + "850178e9.7d2408", + "d5054e0.23964b", + "acacc6b8.9b06e8" + ] + ] + }, + { + "id": "741c9c3f.224ea4", + "type": "comment", + "name": "Set allotted resource id if not sent by SO", + "info": "", + "comments": "", + "x": 698.1079406738281, + "y": 128.46516609191895, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "5b9fedc5.bb21a4", + "type": "switchNode", + "name": "switch allotted-resource-id", + "xml": "<switch test='`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`'>\n", + "comments": "", + "outputs": 1, + "x": 657.0312805175781, + "y": 169.03124237060547, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "8be7a33f.276ac", + "503fc7ba.f0e4b8" + ] + ] + }, + { + "id": "8be7a33f.276ac", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 908.0313301086426, + "y": 131.03122925758362, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "32f9a898.99bcd8" + ] + ] + }, + { + "id": "503fc7ba.f0e4b8", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 909.03125, + "y": 191.03123784065247, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "4eae44ec.25255c" + ] + ] + }, + { + "id": "4eae44ec.25255c", + "type": "set", + "name": "set tmp.ar.allotted-resource-id", + "xml": "<set>\n<parameter name='tmp.ar.allotted-resource-id' value='`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`' />\n", + "comments": "", + "x": 1141.031234741211, + "y": 191.03124260902405, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "1c8d2bb9.f29f94", + "type": "set", + "name": "set tmp.ar.self-link", + "xml": "<set>\n<parameter name='tmp.ar.self-link' value=\"`'restconf/config/GENERIC-RESOURCE-API:connection-attachment-allotted-resources/connection-attachment-allotted-resource/'\n + $tmp.ar.allotted-resource-id\n + '/allotted-resource-data/connection-attachment-topology/'` \" />\n\n", + "comments": "", + "x": 629.0311737060547, + "y": 404.031307220459, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "269db4cc.d4abfc", + "type": "execute", + "name": "execute Properties", + "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\n <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />\n <parameter name='contextPrefix' value='prop' />\n", + "comments": "", + "outputs": 1, + "x": 635.2930946350098, + "y": 489.69798469543457, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + + ] + ] + }, + { + "id": "373e17e2.9acc38", + "type": "execute", + "name": "generate allotted-resource tmp.ar-url", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$prop.restapi.connection-attachment-allottedresource`\"/>\n <parameter name=\"outputPath\" value=\"tmp.ar-url\"/>\n <parameter name=\"target\" value=\"{allotted-resource-id}\"/>\n <parameter name=\"replacement\" value=\"`$tmp.ar.allotted-resource-id`\"/>\n", + "comments": "", + "outputs": 1, + "x": 682.2930755615234, + "y": 573.6979522705078, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + + ] + ] + }, + { + "id": "32f9a898.99bcd8", + "type": "execute", + "name": "execute tmp.ar.allotted-resource-id", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >\n<parameter name=\"ctx-destination\" value=\"tmp.ar.allotted-resource-id\"/>\n", + "comments": "", + "outputs": 1, + "x": 1123.031307220459, + "y": 132.03123497962952, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "4b3e3360.e596bc" + ] + ] + }, + { + "id": "4b3e3360.e596bc", + "type": "failure", + "name": "failure", + "xml": "<outcome value='failure'>\n", + "comments": "", + "outputs": 1, + "x": 1341.031349182129, + "y": 132.0311987400055, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "a0c9c52c.3e6d68" + ] + ] + }, + { + "id": "a0c9c52c.3e6d68", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while generation allotted resource ID\" />\n", + "comments": "", + "x": 1507.0313034057617, + "y": 132.03121304512024, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "5fd13a1.e2465c4", + "type": "get-resource", + "name": "get-resource connection-attachment-allotted-resource", + "xml": "<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='connection-attachment-allotted-resources/connection-attachment-allotted-resource/$tmp.ar.allotted-resource-id/' pfx='mdsal-ar' >\n", + "comments": "", + "outputs": 1, + "x": 730.03125, + "y": 668.8090553283691, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "2117b9a.1971446" + ] + ] + }, + { + "id": "2117b9a.1971446", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 1050.0313301086426, + "y": 670.8090124130249, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "7534c2b3.76410c" + ] + ] + }, + { + "id": "bd6696ff.0a7a78", + "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: Existing connection attachment allotted resource\" />\n \n", + "comments": "", + "x": 1783.5497093200684, + "y": 671.8750839233398, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "8d0e7e60.f9de9", + "type": "comment", + "name": "Check for non existence of allotted resource", + "info": "", + "comments": "", + "x": 694.0312881469727, + "y": 634.8091058731079, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "e79f21cd.1a744", + "type": "for", + "name": "for cidx..service-data.consumed-allotted-resources.consumed-allotted-resource[]", + "xml": "<for index='cidx' start='0' end='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`' >\n", + "comments": "", + "outputs": 1, + "x": 1592.6979064941406, + "y": 867.0312929153442, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "e0cc70b5.ec5cb" + ] + ] + }, + { + "id": "574b7ca7.0881c4", + "type": "switchNode", + "name": "switch service-data.consumed-allotted-resources_length", + "xml": "<switch test='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`'>\n", + "comments": "", + "outputs": 1, + "x": 745.6972923278809, + "y": 827.7452943325043, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "d641745.a8dc988", + "10ab333.e534fcd" + ] + ] + }, + { + "id": "d641745.a8dc988", + "type": "other", + "name": "outcome Null", + "xml": "<outcome value=''>\n", + "comments": "", + "outputs": 1, + "x": 1067.840175628662, + "y": 830.6027162075043, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "7824e75b.697748" + ] + ] + }, + { + "id": "10ab333.e534fcd", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1055.8401794433594, + "y": 873.6027176380157, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "c987fa4d.92cd08" + ] + ] + }, + { + "id": "c987fa4d.92cd08", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1215.967269897461, + "y": 871.7286942005157, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "e79f21cd.1a744", + "bae4bbfe.22ddd8", + "de19c440.aed268" + ] + ] + }, + { + "id": "7824e75b.697748", + "type": "set", + "name": "set cidx", + "xml": "<set>\n<parameter name='tmp.cidx' value=\"`0`\" />\n<parameter name='service-data.consumed-allotted-resources.consumed-allotted-resource_length' value=\"1\" />\n\n\n", + "comments": "", + "x": 1226.6971473693848, + "y": 830.3167788982391, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "35a496d5.57302a", + "type": "set", + "name": "set consumed allotted resources", + "xml": "<set>\n<parameter name='service-data.consumed-allotted-resources.consumed-allotted-resource[$tmp.cidx].allotted-resource-id' value=\"`$tmp.ar.allotted-resource-id` \" />\n<parameter name='service-data.consumed-allotted-resources.consumed-allotted-resource[$tmp.cidx].allotted-resource-type' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type` \" />\n<parameter name='service-data.consumed-allotted-resources.consumed-allotted-resource[$tmp.cidx].allotted-resource-pointer' value=\"`$tmp.ar.self-link` \" />\n<parameter name='service-data.consumed-allotted-resources.consumed-allotted-resource_length' value='`$tmp.cidx + 1`' />\n\n", + "comments": "", + "x": 671.554573059082, + "y": 900.31689453125, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "bae4bbfe.22ddd8", + "type": "switchNode", + "name": "switch tmp.found-cidx", + "xml": "<switch test='`$tmp.found-cidx`'>\n", + "comments": "", + "outputs": 1, + "x": 1405.082317352295, + "y": 903.7402169704437, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "c9bdea6f.ae8408" + ] + ] + }, + { + "id": "c9bdea6f.ae8408", + "type": "outcomeTrue", + "name": "false", + "xml": "<outcome value='false'>\n", + "comments": "", + "outputs": 1, + "x": 1595.0822715759277, + "y": 903.7401540279388, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "f4a1002.ec0e9" + ] + ] + }, + { + "id": "f4a1002.ec0e9", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1761.0822715759277, + "y": 903.7401540279388, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "efdba6bf.3fa178" + ] + ] + }, + { + "id": "e0cc70b5.ec5cb", + "type": "switchNode", + "name": "switch allotted-resource-id", + "xml": "<switch test=\"`$service-data.consumed-allotted-resources.consumed-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`\">\n\n", + "comments": "", + "outputs": 1, + "x": 2066.8093872070312, + "y": 867.0312767028809, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "cf1bcffb.5a97a" + ] + ] + }, + { + "id": "cf1bcffb.5a97a", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 2291.619115829468, + "y": 869.4956977367401, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "9a928449.d9e6c8" + ] + ] + }, + { + "id": "efdba6bf.3fa178", + "type": "set", + "name": "set tmp.cidx", + "xml": "<set>\n<parameter name='tmp.cidx' value='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`' />\n", + "comments": "", + "x": 2006.955617904663, + "y": 904.2518508434296, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "69a27589.0e830c", + "type": "comment", + "name": "Add to consumed service consumed-allotted-resources in mdsal", + "info": "Prepare data and add to service-data", + "comments": "", + "x": 764.6984901428223, + "y": 757.0312271118164, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "b960d74c.b75ab8", + "type": "comment", + "name": "This set resource will be added to MDSAL by provider code", + "info": "Below we add to service-data.consumed-allotted-resource at last index", + "comments": "", + "x": 747.0313453674316, + "y": 864.8093509674072, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "d5054e0.23964b", + "type": "update", + "name": "update AAI allotted-resource", + "xml": "<update plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"allotted-resource\" \n\t\tkey=\"customer.global-customer-id = $connection-attachment-topology-operation-input.service-information.global-customer-id AND\n\t\t\tservice-subscription.service-type = $connection-attachment-topology-operation-input.service-information.subscription-service-type AND\n\t\t\tservice-instance.service-instance-id = $connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id AND\n\t\t\tallotted-resource.id = $tmp.ar.allotted-resource-id\"\n pfx='pfx' local-only='false' force='false'>\n\t<parameter name=\"description\" value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type`\" />\n\t<parameter name=\"selflink\" value=\"`$tmp.ar.self-link`\" />\n\t<parameter name=\"model-invariant-id\" value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-invariant-uuid`\" />\n\t<parameter name=\"model-version-id\" value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-uuid`\" />\n\t<parameter name=\"operational-status\" value=\"Created\" />\n", + "comments": "", + "outputs": 1, + "x": 647.7220878601074, + "y": 1893.5631588697433, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "5db3e01e.d4ead", + "cde1c5f3.767a98" + ] + ] + }, + { + "id": "5db3e01e.d4ead", + "type": "failure", + "name": "failure", + "xml": "<outcome value='failure'>\n", + "comments": "", + "outputs": 1, + "x": 903.4839973449707, + "y": 1876.5156625509262, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "3608fdb3.1050e2" + ] + ] + }, + { + "id": "3608fdb3.1050e2", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"AAI failed\" />\n", + "comments": "", + "x": 1070.0078773498535, + "y": 1888.134733557701, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "cde1c5f3.767a98", + "type": "failure", + "name": "not-found", + "xml": "<outcome value='not-found'>\n", + "comments": "", + "outputs": 1, + "x": 910.5792846679688, + "y": 1909.2776302099228, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "3608fdb3.1050e2" + ] + ] + }, + { + "id": "c4afab5c.baa998", + "type": "comment", + "name": "Save Resource to AAI", + "info": "", + "comments": "", + "x": 622.5317115783691, + "y": 1858.865050792694, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "88151412.9744b8", + "type": "comment", + "name": "Set allotted resource type if not sent by SO", + "info": "", + "comments": "", + "x": 701.0312194824219, + "y": 248.0312442779541, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "acb04fc4.b40f4", + "type": "switchNode", + "name": "switch allotted-resource-type", + "xml": "<switch test='`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type`'>\n", + "comments": "", + "outputs": 1, + "x": 661.9545211791992, + "y": 281.59730529785156, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "66623b13.496cd4", + "4d39f4a7.b07cdc" + ] + ] + }, + { + "id": "66623b13.496cd4", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 906.9546241760254, + "y": 252.59730625152588, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "98a097ca.0fb138" + ] + ] + }, + { + "id": "4d39f4a7.b07cdc", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 907.9545440673828, + "y": 312.5973148345947, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "487657c2.991598" + ] + ] + }, + { + "id": "487657c2.991598", + "type": "set", + "name": "set tmp.ar.allotted-resource-type", + "xml": "<set>\n<parameter name='tmp.ar.allotted-resource-type' value='`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type`' />\n", + "comments": "", + "x": 1139.9545288085938, + "y": 312.5973196029663, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "45c27762.ed75b8", + "type": "comment", + "name": "For storage in AAI connection-attachment-topology", + "info": "", + "comments": "", + "x": 723.0312042236328, + "y": 372.03126525878906, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "9a37b9ec.57f5d8", + "type": "comment", + "name": "Obtain different URL, template location etc", + "info": "For saving resource information to MDSAL & for AAI", + "comments": "", + "x": 701.0312004089355, + "y": 454.92014598846436, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "92fc6e78.11aa", + "type": "comment", + "name": "Used for Put AR by id to MDSAL", + "info": "", + "comments": "", + "x": 665.0312347412109, + "y": 538.9201374053955, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "920f2559.59f028", + "type": "comment", + "name": "Obtain the last index in services", + "info": "ServiceData is added by Provider code", + "comments": "", + "x": 663.4757118225098, + "y": 792.9201095104218, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "78b042c2.3a757c", + "type": "comment", + "name": "TODO: Rework after confirmation from AAI", + "info": "", + "comments": "", + "x": 922.8906211853027, + "y": 1836.436089515686, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "850178e9.7d2408", + "type": "set", + "name": "set output to api handler", + "xml": "<set>\n<parameter name='allotted-resource-id' value='`$tmp.ar.allotted-resource-id`' />\n<parameter name='connection-attachment-object-path' value=\"`$tmp.ar.self-link`\"/>\n<parameter name='service-object-path' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $connection-attachment-topology-operation-input.service-information.service-instance-id\n + '/service-data/service-topology/'`\"/>\n \n", + "comments": "", + "x": 636.2993774414062, + "y": 1806.3904213905334, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "acacc6b8.9b06e8", + "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": 605.7124900817871, + "y": 1941.006284236908, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "98a097ca.0fb138", + "type": "set", + "name": "set tmp.ar.allotted-resource-type", + "xml": "<set>\n<parameter name='tmp.ar.allotted-resource-type' value=\"SOTNAttachmentInstance\" />\n", + "comments": "", + "x": 1146.0313110351562, + "y": 253.0312328338623, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "ad95dda4.7a6dd", + "type": "call", + "name": "call GENERIC-RESOURCE-API:sotn-get-request-input-param", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='connection-attachment-get-request-input-param' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 761.0254058837891, + "y": 1637.5250849723816, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + + ] + ] + }, + { + "id": "72c54e75.d1648", + "type": "execute", + "name": "execute RestApiCallNode - PUT AR by id", + "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='templateFileName' value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.sotn-attachment.templatefile`\" />\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url`' />\n <parameter name='restapiUser' value='`$prop.controller.user`' />\n <parameter name='restapiPassword' value='`$prop.controller.pwd`' />\n <parameter name='format' value='json' />\n <parameter name='httpMethod' value='PUT' />\n <parameter name=\"responsePrefix\" value=\"mdsal-ar\" />\n\n", + "comments": "", + "outputs": 1, + "x": 696.0314865112305, + "y": 1678.0312724113464, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "cee5ccdb.56f91", + "343b1a53.f93b56", + "d836f528.1e2818" + ] + ] + }, + { + "id": "cee5ccdb.56f91", + "type": "not-found", + "name": "not-found", + "xml": "<outcome value='not-found'>\n", + "comments": "", + "outputs": 1, + "x": 964.6728630065918, + "y": 1729.3626841530204, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "7a6b84bb.83fdac" + ] + ] + }, + { + "id": "343b1a53.f93b56", + "type": "failure", + "name": "failure", + "xml": "<outcome value='failure'>\n", + "comments": "", + "outputs": 1, + "x": 955.6729125976562, + "y": 1697.862709902227, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "7a6b84bb.83fdac" + ] + ] + }, + { + "id": "d836f528.1e2818", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 959.4229507446289, + "y": 1668.2198147773743, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "2a50bed0.d894a2" + ] + ] + }, + { + "id": "7a6b84bb.83fdac", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error updating md-sal for connection-attachment-allotted-resource\" />\n", + "comments": "", + "x": 1125.422950744629, + "y": 1698.6127337440848, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "2a50bed0.d894a2", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1101.0789184570312, + "y": 1664.4119839668274, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + + ] + ] + }, + { + "id": "de4bba44.8919f8", + "type": "execute", + "name": "execute RestApiCallNode - Update parent provided service AR", + "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='templateFileName' value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.parentsvc.templatefile`\" />\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.parent-ar-url`' />\n <parameter name='restapiUser' value='`$prop.controller.user`' />\n <parameter name='restapiPassword' value='`$prop.controller.pwd`' />\n <parameter name='format' value='json' />\n <parameter name='httpMethod' value='PUT' />\n <parameter name=\"responsePrefix\" value=\"parent\" />\n\n", + "comments": "", + "outputs": 1, + "x": 761.0312156677246, + "y": 1198.031394958496, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "193ed140.775b6f", + "5734aea.1129c5", + "1e7e5c60.a431d4" + ] + ] + }, + { + "id": "193ed140.775b6f", + "type": "not-found", + "name": "not-found", + "xml": "<outcome value='not-found'>\n", + "comments": "", + "outputs": 1, + "x": 1083.3392333984375, + "y": 1243.0296125411987, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "f7734abc.a1eef8" + ] + ] + }, + { + "id": "5734aea.1129c5", + "type": "failure", + "name": "failure", + "xml": "<outcome value='failure'>\n", + "comments": "", + "outputs": 1, + "x": 1074.339282989502, + "y": 1211.5296382904053, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "f7734abc.a1eef8" + ] + ] + }, + { + "id": "1e7e5c60.a431d4", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 1078.0893211364746, + "y": 1181.8867431655526, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "850e7d60.6ac59" + ] + ] + }, + { + "id": "f7734abc.a1eef8", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error updating md-sal for connection-attachment-allotted-resource\" />\n", + "comments": "", + "x": 1244.0893211364746, + "y": 1212.2796621322632, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "850e7d60.6ac59", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1219.745288848877, + "y": 1178.0789123550057, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + + ] + ] + }, + { + "id": "34f114cf.2fe48c", + "type": "comment", + "name": "Put the parent allotted resource in mdsal", + "info": "", + "comments": "", + "x": 685.0311508178711, + "y": 1166.0312938690186, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "63023c8e.9fcb64", + "type": "set", + "name": "set connection-attachment-ar-identifiers", + "xml": "<set>\n<parameter name='connection-attachment-ar-identifiers.consuming-service-instance-id' value=\"`$connection-attachment-topology-operation-input.service-information.service-instance-id` \" />\n<parameter name='connection-attachment-ar-identifiers.parent-service-instance-id' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` \" />\n<parameter name='connection-attachment-ar-identifiers.allotted-resource-type' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type` \" />\n<parameter name='connection-attachment-ar-identifiers.allotted-resource-id' value=\"`$tmp.ar.allotted-resource-id` \" />\n\n", + "comments": "", + "x": 685.3883056640625, + "y": 1400.6029052734375, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "a1a37b4b.52c8a8", + "type": "set", + "name": "set ar-data", + "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-id' value=\"`$tmp.ar.allotted-resource-id` \" />\n<parameter name='connection-attachment-ar.allotted-resource-status.action' value=\"`$connection-attachment-topology-operation-input.request-information.request-action` \" />\n<parameter name='connection-attachment-ar.allotted-resource-status.rpc-name' value=\"connection-attachment-topology-operation\" />\n<parameter name='connection-attachment-ar.allotted-resource-status.rpc-action' value=\"`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.' value=\"`$connection-attachment-topology-operation-input.request-information.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.' value=\"`$connection-attachment-topology-operation-input.sdnc-request-header.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.service-information.' value=\"`$connection-attachment-topology-operation-input.service-information.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.' value=\"`$connection-attachment-topology-operation-input.connection-attachment-request-input.` \" />", + "comments": "", + "x": 596.2451171875, + "y": 1359.4122314453125, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "a6efd3b6.3278d", + "type": "set", + "name": "set identifiers in overall structure", + "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-data.connection-attachment-topology.allotted-resource-identifiers.' \nvalue=\"`$connection-attachment-ar-identifiers.`\" />\n\n\n", + "comments": "", + "x": 662.1981048583984, + "y": 1442.698115348816, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "994d951b.a5b738", + "type": "execute", + "name": "execute getTime", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setTime' >\n <parameter name=\"outputPath\" value=\"tmp.current-time\" />\n\n", + "comments": "", + "outputs": 1, + "x": 613.5309715270996, + "y": 1525.0316753387451, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + + ] + ] + }, + { + "id": "8ee1af3e.bbe67", + "type": "set", + "name": "set allotted-resource-oper-status", + "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status' value='Created' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-topology-operation-input.request-information.request-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-request-id`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.create-timestamp' value='`$tmp.current-time`' />\n", + "comments": "", + "x": 664.5180320739746, + "y": 1560.9828262329102, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "efc5e53d.5d75a8", + "type": "set", + "name": "set model-data", + "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-data.connection-attachment-topology.onap-model-information.' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.` \" />", + "comments": "", + "x": 606.0866241455078, + "y": 1479.586974143982, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "21b74746.c42fa8", + "type": "comment", + "name": "Prepare data for allotted-resource addition to MDSAL", + "info": "This will add to allotted-resource which is present inside service.", + "comments": "", + "x": 723.4201202392578, + "y": 1319.5868339538574, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "5accbcde.210f64", + "type": "execute", + "name": "generate parent-ar url - replace allotted-resource-id", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$tmp.parent-ar-url`\"/>\n <parameter name=\"outputPath\" value=\"tmp.parent-ar-url\"/>\n <parameter name=\"target\" value=\"{allotted-resource-id}\"/>\n <parameter name=\"replacement\" value=\"`$tmp.ar.allotted-resource-id`\"/>\n", + "comments": "", + "outputs": 1, + "x": 726.5312461853027, + "y": 1129.0312910079956, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + + ] + ] + }, + { + "id": "5dbf4a35.fd12c4", + "type": "execute", + "name": "generate parent-ar url - replace service-instance-id", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$prop.restapi.parent-provided-resource`\"/>\n <parameter name=\"outputPath\" value=\"tmp.parent-ar-url\"/>\n <parameter name=\"target\" value=\"{service-instance-id}\"/>\n <parameter name=\"replacement\" value=\"`$tmp.ar.parent-service-instance-id`\"/>\n", + "comments": "", + "outputs": 1, + "x": 727.5311851501465, + "y": 1091.03134059906, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + + ] + ] + }, + { + "id": "52e7ff5.9702d", + "type": "comment", + "name": "Prepare Parent AR URL", + "info": "Preparation to set provided-allotted-resource in parent service instance", + "comments": "", + "x": 634.5316009521484, + "y": 1019.0313377380371, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "950a621f.7b821", + "type": "set", + "name": "set tmp.ar.parent-service-instance-id", + "xml": "<set>\n<parameter name='tmp.ar.parent-service-instance-id' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` \" />\n\n", + "comments": "", + "x": 679.5314331054688, + "y": 1055.53125, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "60a92f9f.3244e", + "type": "comment", + "name": "Required for filling template values", + "info": "This is done because connection-attachment is generic resource and doesn't have specific parameters", + "comments": "", + "x": 669.0316314697266, + "y": 1606.531012058258, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "9a928449.d9e6c8", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error updating md-sal for connection-attachment-allotted-resource as cosumed allotted resource already exists.\" />\n", + "comments": "", + "x": 2479.7880859375, + "y": 867.6770629882812, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "de19c440.aed268", + "type": "set", + "name": "set tmp.found-cidx", + "xml": "<set>\n<parameter name='tmp.found-cidx' value=\"`false`\" />\n\n\n", + "comments": "", + "x": 1395.6773529052734, + "y": 824.3438148498535, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "a7c16e9b.5cd68", + "type": "comment", + "name": "Add to parent services provided-allotted-resources in mdsal", + "info": "", + "comments": "", + "x": 744.2327270507812, + "y": 980.0104694366455, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "d7647e1e.888aa", + "type": "comment", + "name": "Add to allotted-resources in mdsal", + "info": "", + "comments": "", + "x": 664.9999465942383, + "y": 1287.0001356601715, + "z": "5611e7fd.31c9b8", + "wires": [ + + ] + }, + { + "id": "7534c2b3.76410c", + "type": "block", + "name": "block: atomic", + "xml": "<block atomic=\"true\">\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1212.031150817871, + "y": 670.3089017868042, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "c557a49c.3881b8" + ] + ] + }, + { + "id": "c557a49c.3881b8", + "type": "switchNode", + "name": "switch cr length", + "xml": "<switch test='`$mdsal-ar.connection-attachment-allotted-resource_length`'>\n", + "comments": "", + "outputs": 1, + "x": 1399.8885307312012, + "y": 670.9280371665955, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "3936a0.d4fa496" + ] + ] + }, + { + "id": "3936a0.d4fa496", + "type": "other", + "name": "outcome 1", + "xml": "<outcome value='1'>\n", + "comments": "", + "outputs": 1, + "x": 1599.2216529846191, + "y": 670.9281158447266, + "z": "5611e7fd.31c9b8", + "wires": [ + [ + "bd6696ff.0a7a78" + ] + ] + } +]
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.json new file mode 100644 index 00000000..f4f4f06c --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.json @@ -0,0 +1,1777 @@ +[ + { + "id": "8f583882.aaba08", + "type": "dgstart", + "name": "DGSTART", + "outputs": 1, + "x": 107.66669082641602, + "y": 36.000003814697266, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "1c8f0b92.b2d0f4" + ] + ] + }, + { + "id": "1c8f0b92.b2d0f4", + "type": "service-logic", + "name": "GENERIC-RESOURCE-API ${project.version}", + "module": "GENERIC-RESOURCE-API", + "version": "${project.version}", + "comments": "", + "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>", + "outputs": 1, + "x": 319.6666946411133, + "y": 108.00002098083496, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "7867cbb1.cd6464" + ] + ] + }, + { + "id": "7867cbb1.cd6464", + "type": "method", + "name": "sotn-attachment-topology-operation-deactivate", + "xml": "<method rpc='sotn-attachment-topology-operation-deactivate' mode='sync'>\n", + "comments": "", + "outputs": 1, + "x": 307.6668128967285, + "y": 196.00000381469727, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "788e5fc3.c5d94" + ] + ] + }, + { + "id": "788e5fc3.c5d94", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 323.6668128967285, + "y": 751.0002484321594, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "ed3ad3e3.7e5ae", + "bfd4a9cf.aa7918", + "9c88cb66.2575d8", + "8484c7db.980518", + "3abce4e4.32a12c", + "d7eaa0c2.0d298", + "601263d0.9079dc", + "290c05a0.21ca9a", + "dfdf08a.1b550f8", + "5040dd33.924624", + "7ff9e776.cf4d98", + "5af6e72b.9d69a8", + "2d9aed4c.fcfbd2", + "1d49bda0.f37e32", + "285d454d.f5f90a", + "c5b69925.729378", + "bc602338.67328", + "f080d760.856678", + "8e738bcf.052208" + ] + ] + }, + { + "id": "ed3ad3e3.7e5ae", + "type": "set", + "name": "set tmp.ar.allotted-resource-id,etc", + "xml": "<set>\n<parameter name='tmp.ar.allotted-resource-id' value='`connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`' />\n<parameter name='tmp.ar.parent-service-instance-id' value='`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id`' />\n\n\n", + "comments": "", + "x": 720.6602516174316, + "y": 149.99349069595337, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "4411681c.96fbf8", + "type": "comment", + "name": "set tmp ar-id to fetch resource from MDSAL", + "info": "", + "comments": "", + "x": 749.6205635070801, + "y": 114.02528667449951, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "bfd4a9cf.aa7918", + "type": "set", + "name": "set tmp.ar.self-link", + "xml": "<set>\n<parameter name='tmp.ar.self-link' value=\"`'restconf/config/GENERIC-RESOURCE-API:connection-attachment-allotted-resources/connection-attachment-allotted-resource/'\n + $tmp.ar.allotted-resource-id\n + '/allotted-resource-data/connection-attachment-topology/'` \" />\n\n", + "comments": "", + "x": 674.6601905822754, + "y": 242.9934959411621, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "290c05a0.21ca9a", + "type": "execute", + "name": "execute Properties", + "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\n <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />\n <parameter name='contextPrefix' value='prop' />\n", + "comments": "", + "outputs": 1, + "x": 680.9220809936523, + "y": 330.6602249145508, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + + ] + ] + }, + { + "id": "9c88cb66.2575d8", + "type": "execute", + "name": "generate allotted-resource url", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$prop.restapi.connection-attachment-allottedresource`\"/>\n <parameter name=\"outputPath\" value=\"tmp.ar-url\"/>\n <parameter name=\"target\" value=\"{allotted-resource-id}\"/>\n <parameter name=\"replacement\" value=\"`$tmp.ar.allotted-resource-id`\"/>\n", + "comments": "", + "outputs": 1, + "x": 712.9221076965332, + "y": 418.6602063179016, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + + ] + ] + }, + { + "id": "8484c7db.980518", + "type": "get-resource", + "name": "get-resource connection-attachment-allotted-resource", + "xml": "<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='connection-attachment-allotted-resources/connection-attachment-allotted-resource/$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id/' pfx='mdsal-ar' >\n", + "comments": "", + "outputs": 1, + "x": 783.6602058410645, + "y": 508.7712650299072, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "4af802cd.0768bc", + "9704e270.344da" + ] + ] + }, + { + "id": "eec65610.3652f8", + "type": "comment", + "name": "GET connection-attachment-allotted-resource from mdsal", + "info": "", + "comments": "", + "x": 790.4750022888184, + "y": 480.53858375549316, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "eed42f31.59a27", + "type": "comment", + "name": "Used for setting output to API Handler", + "info": "", + "comments": "", + "x": 728.6602210998535, + "y": 209.99350547790527, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "a03ab63b.9e0678", + "type": "comment", + "name": "Obtain different URL, template location etc", + "info": "For saving resource information to MDSAL & for AAI", + "comments": "", + "x": 746.6601867675781, + "y": 295.88238620758057, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "94d139ba.87f2c8", + "type": "comment", + "name": "Used to Get AR by id to MDSAL, same as self-link", + "info": "", + "comments": "", + "x": 772.6602058410645, + "y": 382.88234519958496, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "4af802cd.0768bc", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 1083.333408355713, + "y": 493.99999618530273, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "a5fa6dd6.43795" + ] + ] + }, + { + "id": "a5fa6dd6.43795", + "type": "block", + "name": "block: atomic", + "xml": "<block atomic=\"true\">\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1252.3334121704102, + "y": 492.4998970031738, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "2f8c441e.efd2ec" + ] + ] + }, + { + "id": "2f8c441e.efd2ec", + "type": "switchNode", + "name": "switch cr length", + "xml": "<switch test='`$mdsal-ar.connection-attachment-allotted-resource_length`'>\n", + "comments": "", + "outputs": 1, + "x": 1463.1906547546387, + "y": 492.11902618408203, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "e3552b55.2b7868", + "579fccfb.5c4c54" + ] + ] + }, + { + "id": "e3552b55.2b7868", + "type": "other", + "name": "outcome 1", + "xml": "<outcome value='1'>\n", + "comments": "", + "outputs": 1, + "x": 1652.5239601135254, + "y": 492.1189842224121, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "81b472dd.735a8" + ] + ] + }, + { + "id": "81b472dd.735a8", + "type": "block", + "name": "block: atomic", + "xml": "<block atomic='true'>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1837.0478496551514, + "y": 489.02381801605225, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "d81a29f1.be9278", + "d95be879.b1bde8", + "f4a4bf1b.b7da1" + ] + ] + }, + { + "id": "31667ce1.fcbca4", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: SOTN resource not found\" />\n \n", + "comments": "", + "x": 1796.1856498718262, + "y": 570.0660495758057, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "9704e270.344da", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1075.1852111816406, + "y": 529.0660810470581, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "766c605e.af77c" + ] + ] + }, + { + "id": "766c605e.af77c", + "type": "block", + "name": "block: atomic", + "xml": "<block atomic=\"true\">\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1255.1851615905762, + "y": 529.7326316833496, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "31667ce1.fcbca4" + ] + ] + }, + { + "id": "579fccfb.5c4c54", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1640.8519134521484, + "y": 529.3993444442749, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "31667ce1.fcbca4" + ] + ] + }, + { + "id": "d81a29f1.be9278", + "type": "set", + "name": "set connection-attachment-ar from get", + "xml": "<set>\n<parameter name='connection-attachment-ar.' value='$mdsal-ar.connection-attachment-allotted-resource[0].' />\n", + "comments": "", + "x": 2206.1111946105957, + "y": 456.0000344514847, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "f4a4bf1b.b7da1", + "type": "set", + "name": "set oper-status", + "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.request-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-ar.allotted-resource-status.rpc-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.svc-request-id`' />\n\n", + "comments": "", + "x": 2139.1113624572754, + "y": 531.428560256958, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "d95be879.b1bde8", + "type": "switchNode", + "name": "switch order-status", + "xml": "<switch test='`$connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status`'>\n", + "comments": "", + "outputs": 1, + "x": 2149.111141204834, + "y": 496.9999942779541, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "e17a8fee.41d4", + "d3c8707c.374dc" + ] + ] + }, + { + "id": "e17a8fee.41d4", + "type": "outcome", + "name": "outcome Active", + "xml": "<outcome value='Active'>\n", + "comments": "", + "outputs": 1, + "x": 2384.711223602295, + "y": 491.0000252723694, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "b89c0370.1273d" + ] + ] + }, + { + "id": "d3c8707c.374dc", + "type": "outcome", + "name": "outcome Other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 2378.4256629943848, + "y": 530.4286332130432, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "e88e83ff.2b0bf" + ] + ] + }, + { + "id": "b89c0370.1273d", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 2599.181739807129, + "y": 492.3756594657898, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + + ] + ] + }, + { + "id": "e88e83ff.2b0bf", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" \n value=\"`'Existing connection-attachment-allotted-resource with order status of ' + $connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status + '.'`\" />\n", + "comments": "", + "x": 2618.3334426879883, + "y": 533.0000233650208, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "190989d8.d87b76", + "type": "call", + "name": "call GENERIC-RESOURCE-API:sotn-get-request-input-param", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='connection-attachment-get-request-input-param' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 970.9697303771973, + "y": 598.4935593605042, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + + ] + ] + }, + { + "id": "dfdf08a.1b550f8", + "type": "block", + "name": "block: atomic", + "xml": "<block atomic=\"true\">\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 652.9758071899414, + "y": 598.4998459815979, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "190989d8.d87b76" + ] + ] + }, + { + "id": "3abce4e4.32a12c", + "type": "get-resource", + "name": "get-resource parent-service-data", + "xml": "<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='services/service/$tmp.ar.parent-service-instance-id/service-data' pfx='mdsal-psd' >\n", + "comments": "", + "outputs": 1, + "x": 717.6671180725098, + "y": 740.5316205024719, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "d140a12c.bd2ea", + "58621e56.68c4e" + ] + ] + }, + { + "id": "aa132cfc.b387f", + "type": "comment", + "name": "GET parent-service-data from mdsal to check existence of other End point", + "info": "", + "comments": "", + "x": 837.6670570373535, + "y": 669.5315594673157, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "21ab6599.b5b88a", + "type": "for", + "name": "for pidx..mdsal-psd.provided-allotted-resources.provided-allotted-resource[]", + "xml": "<for index='pidx' start='0' end='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`' >\n", + "comments": "", + "outputs": 1, + "x": 1726.8515377044678, + "y": 908.0041127204895, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "c38adf24.2987b" + ] + ] + }, + { + "id": "d7eaa0c2.0d298", + "type": "switchNode", + "name": "switch mdsal-psd.provided-allotted-resources_length", + "xml": "<switch test='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`'>\n", + "comments": "", + "outputs": 1, + "x": 783.8508949279785, + "y": 884.7180829048157, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "bab04a0a.986c28", + "ab941040.d9d58", + "e7f0f49a.c55b08" + ] + ] + }, + { + "id": "bab04a0a.986c28", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1115.9937705993652, + "y": 1108.5755522474647, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "a85c2828.9226f8" + ] + ] + }, + { + "id": "edfa14d3.f5d668", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1310.1211261749268, + "y": 902.7015252113342, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "21ab6599.b5b88a" + ] + ] + }, + { + "id": "c38adf24.2987b", + "type": "switchNode", + "name": "switch allotted-resource-id", + "xml": "<switch test=\"`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`\">\n\n", + "comments": "", + "outputs": 1, + "x": 2161.962938308716, + "y": 908.0040097236633, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "3532dc3f.6daa04", + "1210338.3b3d5cd" + ] + ] + }, + { + "id": "3532dc3f.6daa04", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 2370.7731647491455, + "y": 880.468499660492, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "7bfabe83.461c6" + ] + ] + }, + { + "id": "515af9c1.8559f8", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 2550.5338611602783, + "y": 944.3256783485413, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "39e1b1c2.1c69fe", + "9b2b2091.9723d" + ] + ] + }, + { + "id": "39e1b1c2.1c69fe", + "type": "set", + "name": "set tmp.pidx and ptx.consumed-ar", + "xml": "<set>\n<parameter name='tmp.pidx' value='`$pidx`' />\n<parameter name='tmp.provided-ar.' value='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$pidx].`' />\n<parameter name='tmp.found-in-ar' value='true' />\n<parameter name='tmp.ep-available' value='true' />", + "comments": "", + "x": 2807.391366958618, + "y": 918.8971924781799, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "9b2b2091.9723d", + "type": "break", + "name": "break", + "xml": "<break>\n", + "comments": "", + "x": 2718.2520847320557, + "y": 965.6532082557678, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "2b8d3c6c.b14764", + "type": "comment", + "name": "Check existence of other AR in parent service data", + "info": "Check if other allotted resource is available.", + "comments": "", + "x": 773.629337310791, + "y": 818.8928875923157, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "ab941040.d9d58", + "type": "other", + "name": "outcome 1", + "xml": "<outcome value='1'>\n", + "comments": "", + "outputs": 1, + "x": 1127.6461639404297, + "y": 1032.6772694587708, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "46264523.92ecdc" + ] + ] + }, + { + "id": "a85c2828.9226f8", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: SOTN resource not found\" />\n \n", + "comments": "", + "x": 1288.6461143493652, + "y": 1107.6772940382361, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "e7f0f49a.c55b08", + "type": "other", + "name": "outcome 2", + "xml": "<outcome value='2'>\n", + "comments": "", + "outputs": 1, + "x": 1135.646146774292, + "y": 903.6772255897522, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "edfa14d3.f5d668" + ] + ] + }, + { + "id": "7bfabe83.461c6", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 2528.7573795318604, + "y": 879.6772427558899, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + + ] + ] + }, + { + "id": "1210338.3b3d5cd", + "type": "outcomeTrue", + "name": "false", + "xml": "<outcome value='false'>\n", + "comments": "", + "outputs": 1, + "x": 2369.7573795318604, + "y": 942.6772427558899, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "515af9c1.8559f8" + ] + ] + }, + { + "id": "e9cc6dee.5133e", + "type": "switchNode", + "name": "switch mdsal-psd.networks_length", + "xml": "<switch test='`$mdsal-psd.networks.network_length`'>\n", + "comments": "", + "outputs": 1, + "x": 1563.9796333312988, + "y": 1032.8997707366943, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "30e9e8da.9a5228", + "80fd341d.8b4a38" + ] + ] + }, + { + "id": "80fd341d.8b4a38", + "type": "other", + "name": "outcome 1", + "xml": "<outcome value='1'>\n", + "comments": "", + "outputs": 1, + "x": 1835.9796562194824, + "y": 1006.7886056900024, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "eab56bbb.5b2d38" + ] + ] + }, + { + "id": "30e9e8da.9a5228", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1829.979778289795, + "y": 1066.7886056900024, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "9cd991eb.ad6e9" + ] + ] + }, + { + "id": "9cd991eb.ad6e9", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: Incorrect state found more then 1 network\" />\n \n", + "comments": "", + "x": 1986.632122039795, + "y": 1067.8904123306274, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "750841f5.89bfd", + "type": "set", + "name": "set tmp.network.", + "xml": "<set>\n<parameter name='tmp.network.' value='`$mdsal-psd.networks.network[0].`' />\n", + "comments": "", + "x": 2271.424503326416, + "y": 1007.788761138916, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "46264523.92ecdc", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1300.090518951416, + "y": 1033.7885174751282, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "e9cc6dee.5133e" + ] + ] + }, + { + "id": "eab56bbb.5b2d38", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 2027.75736618042, + "y": 1009.7884836196899, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "750841f5.89bfd", + "56082b6e.f90444" + ] + ] + }, + { + "id": "56082b6e.f90444", + "type": "for", + "name": "for nidx..tmp.network.network-data.network-request-input.network...[]", + "xml": "<for index='nidx' start='0' end='`$tmp.network.network-data.network-request-input.network-input-parameters.param_length`' >", + "comments": "", + "outputs": 1, + "x": 2447.7576332092285, + "y": 1069.7884712219238, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "ad111a8e.73a1d8" + ] + ] + }, + { + "id": "ad111a8e.73a1d8", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 2813.3130168914795, + "y": 1069.7885303497314, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "92d17a75.9c6dc8", + "60c80c93.08db54" + ] + ] + }, + { + "id": "92d17a75.9c6dc8", + "type": "switchNode", + "name": "switch access-node-id", + "xml": "<switch test=\"`$tmp.network.network-data.network-request-input.network-input-parameters.param[$nidx].name == 'access-node-id'`\">", + "comments": "", + "outputs": 1, + "x": 3017.8232707977295, + "y": 1072.798906326294, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "abca5378.b72d3" + ] + ] + }, + { + "id": "abca5378.b72d3", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 3204.8232707977295, + "y": 1073.798906326294, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "db6a8374.5ea08" + ] + ] + }, + { + "id": "db6a8374.5ea08", + "type": "set", + "name": "set tmp.found-in-network tmp.ep-available", + "xml": "<set>\n<parameter name='tmp.found-in-network' value='true' />\n<parameter name='tmp.ep-available' value='true' />", + "comments": "", + "x": 3455.823278427124, + "y": 1073.3988485336304, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "60c80c93.08db54", + "type": "returnSuccess", + "name": "return success", + "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n", + "comments": "", + "x": 3000.81316947937, + "y": 1117.7885055541992, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "601263d0.9079dc", + "type": "switchNode", + "name": "switch tmp.ep-available", + "xml": "<switch test='`$tmp.ep-available`'>\n", + "comments": "", + "outputs": 1, + "x": 709.9794960021973, + "y": 1296.232792377472, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "89a90f2c.398bf", + "80d65700.60d008" + ] + ] + }, + { + "id": "80d65700.60d008", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 928.6462154388428, + "y": 1345.5661492347717, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "844986d4.f4d158" + ] + ] + }, + { + "id": "89a90f2c.398bf", + "type": "outcomeTrue", + "name": "false", + "xml": "<outcome value='false'>\n", + "comments": "", + "outputs": 1, + "x": 933.5350170135498, + "y": 1254.566210269928, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "9208b0d4.846ab" + ] + ] + }, + { + "id": "9208b0d4.846ab", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1080.5350131988525, + "y": 1256.4550232887268, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + + ] + ] + }, + { + "id": "844986d4.f4d158", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1098.757303237915, + "y": 1343.5661072731018, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "fc82177c.3c8168", + "6c1300b3.838e9", + "b83c0ca8.2fbee" + ] + ] + }, + { + "id": "27f851f0.33167e", + "type": "comment", + "name": "GET connection-attachment-ar to store AR data from mdsal", + "info": "", + "comments": "", + "x": 2269.1394805908203, + "y": 420.50391721725464, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "105428a7.c0fa47", + "type": "comment", + "name": "Set source end point", + "info": "", + "comments": "", + "x": 674.6393585205078, + "y": 566.2539267539978, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "5040dd33.924624", + "type": "set", + "name": "set tmp.ar.parent-service-instance-id", + "xml": "<set>\n<parameter name='tmp.ar.parent-service-instance-id' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` \" />\n\n", + "comments": "", + "x": 728.635440826416, + "y": 705.0000042915344, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "d140a12c.bd2ea", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 964.635440826416, + "y": 733.0000042915344, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "ef017607.27ae68" + ] + ] + }, + { + "id": "58621e56.68c4e", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 956.4872436523438, + "y": 768.0660891532898, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "50c1da8b.6785d4" + ] + ] + }, + { + "id": "50c1da8b.6785d4", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: SOTN resource not found\" />\n \n", + "comments": "", + "x": 1131.635929107666, + "y": 764.3334393501282, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "ef017607.27ae68", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1115.635440826416, + "y": 731.0000042915344, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + + ] + ] + }, + { + "id": "7ff9e776.cf4d98", + "type": "set", + "name": "set tmp.found-in-ar tmp.found-in-network tmp.ep-available to false", + "xml": "<set>\n<parameter name='tmp.found-in-ar' value='false' />\n<parameter name='tmp.found-in-network' value='false' />\n<parameter name='tmp.ep-available' value='false' />", + "comments": "", + "x": 820.635440826416, + "y": 850.0000042915344, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "6020d2b5.ff31bc", + "type": "comment", + "name": "If other EP exists delete from domain controller", + "info": "", + "comments": "", + "x": 760.635440826416, + "y": 1221.0000042915344, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "1d5ec4d8.fd16cb", + "type": "set", + "name": "set controller data", + "xml": "<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.url' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.user' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.password' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`\" />\n", + "comments": "", + "x": 1814.6355590820312, + "y": 1374.0000200271606, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "6c1300b3.838e9", + "type": "get-resource", + "name": "get-resource esr-thirdparty-sdnc", + "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"esr-thirdparty-sdnc\" \n\t\tkey=\"esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND \n\t\t depth = '1'\"\n pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\n\n", + "comments": "", + "outputs": 1, + "x": 1378.135498046875, + "y": 1433.0000200271606, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "9b0a24a5.e3c928", + "3d4157e0.0e2b48", + "47d559b2.2326f8" + ] + ] + }, + { + "id": "9b0a24a5.e3c928", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 1617.135498046875, + "y": 1386.0000200271606, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "1d5ec4d8.fd16cb" + ] + ] + }, + { + "id": "3d4157e0.0e2b48", + "type": "not-found", + "name": "not-found", + "xml": "<outcome value='not-found'>\n", + "comments": "", + "outputs": 1, + "x": 1620.62646484375, + "y": 1433.574055671692, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "4d76fe9.b9e25" + ] + ] + }, + { + "id": "47d559b2.2326f8", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1615.95947265625, + "y": 1474.9073686599731, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "4373fee3.5c15e" + ] + ] + }, + { + "id": "4d76fe9.b9e25", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'An error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`\" />\n\n", + "comments": "", + "x": 1797.1978759765625, + "y": 1421.8597917556763, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "4373fee3.5c15e", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'Unexpected error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`\" />\n\n", + "comments": "", + "x": 1803.7320289611816, + "y": 1470.3465614318848, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "fc82177c.3c8168", + "type": "get-resource", + "name": "get-resource pnf", + "xml": "<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"pnf\" \n\t\tkey=\"pnf.pnf-name = $prop.connection-attachement.access-node-id AND \n\t\t depth = '0'\"\n pfx='tmp.aai.pnf' local-only='false' >\n\n", + "comments": "", + "outputs": 1, + "x": 1324.6355590820312, + "y": 1246.0000200271606, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "71aef88f.e0bf68", + "2c74406b.e0e78", + "5d3880b0.6e762" + ] + ] + }, + { + "id": "71aef88f.e0bf68", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 1671.635498046875, + "y": 1250.0000505447388, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "a198897a.59b5a8" + ] + ] + }, + { + "id": "2c74406b.e0e78", + "type": "not-found", + "name": "not-found", + "xml": "<outcome value='not-found'>\n", + "comments": "", + "outputs": 1, + "x": 1675.12646484375, + "y": 1297.57408618927, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "c41f8753.3bbf68" + ] + ] + }, + { + "id": "5d3880b0.6e762", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1670.45947265625, + "y": 1338.9073991775513, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "f23816e4.5d6938" + ] + ] + }, + { + "id": "c41f8753.3bbf68", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`\" />\n\n", + "comments": "", + "x": 1851.6978759765625, + "y": 1285.8598222732544, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "f23816e4.5d6938", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`\" />\n\n", + "comments": "", + "x": 1858.2320289611816, + "y": 1334.346591949463, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "a198897a.59b5a8", + "type": "set", + "name": "set tmp.thirdparty-sdnc-id", + "xml": "<set>\n<parameter name='tmp.thirdparty-sdnc-id' value=\"`$tmp.aai.pnf.relationship-list.relationship[0].relationship-data[0].relationship-value`\" />\n", + "comments": "", + "x": 1875.635498046875, + "y": 1237.0000505447388, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "193624d6.cf45fb", + "type": "comment", + "name": "get domain controller information", + "info": "", + "comments": "", + "x": 1369.1394271850586, + "y": 1212.0039176940918, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "b83c0ca8.2fbee", + "type": "execute", + "name": "execute RestApiCallNode Delete ethernet Service", + "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + 'restconf/data/ietf-eth-tran-service:etht-svc/etht-svc-instances=' + $prop.connection-attachment.sotnVpnName`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />", + "comments": "", + "outputs": 1, + "x": 1426.6355590820312, + "y": 1538.0000200271606, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "157d151e.8db5fb", + "dc587393.0f491" + ] + ] + }, + { + "id": "157d151e.8db5fb", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 1713.635498046875, + "y": 1561.0000200271606, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "22b1ca9.6034f36" + ] + ] + }, + { + "id": "22b1ca9.6034f36", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "comments": "", + "outputs": 1, + "x": 1883.6354370117188, + "y": 1564.0000200271606, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + + ] + ] + }, + { + "id": "949096af.7825e8", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Create vpn rest api\" />\n", + "comments": "", + "x": 1883.6355590820312, + "y": 1520.0000200271606, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "dc587393.0f491", + "type": "failure", + "name": "failure", + "xml": "<outcome value='failure'>\n", + "comments": "", + "outputs": 1, + "x": 1716.6354370117188, + "y": 1520.0000200271606, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "949096af.7825e8" + ] + ] + }, + { + "id": "83d13f6d.0d8cd", + "type": "failure", + "name": "failure", + "xml": "<outcome value='failure'>\n", + "comments": "", + "outputs": 1, + "x": 984.397403717041, + "y": 1879.9526022672653, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "3bbdd84b.d766e8" + ] + ] + }, + { + "id": "3bbdd84b.d766e8", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"AAI failed\" />\n", + "comments": "", + "x": 1150.9212837219238, + "y": 1891.5716732740402, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "55a09cbe.8cef84", + "type": "failure", + "name": "not-found", + "xml": "<outcome value='not-found'>\n", + "comments": "", + "outputs": 1, + "x": 991.4926910400391, + "y": 1912.714569926262, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "3bbdd84b.d766e8" + ] + ] + }, + { + "id": "5f6a467a.dfacc8", + "type": "comment", + "name": "Save Resource to AAI", + "info": "", + "comments": "", + "x": 703.4451179504395, + "y": 1862.3019905090332, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "79627cb0.0dbb74", + "type": "comment", + "name": "TODO: Rework after confirmation from AAI", + "info": "", + "comments": "", + "x": 1003.804027557373, + "y": 1839.8730292320251, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "bc602338.67328", + "type": "set", + "name": "set output to api handler", + "xml": "<set>\n<parameter name='allotted-resource-id' value='`$tmp.ar.allotted-resource-id`' />\n<parameter name='connection-attachment-object-path' value=\"`$tmp.ar.self-link`\"/>\n<parameter name='service-object-path' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $connection-attachment-topology-operation-input.service-information.service-instance-id\n + '/service-data/service-topology/'`\"/>\n \n", + "comments": "", + "x": 718.2128143310547, + "y": 1783.8274717330933, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "f080d760.856678", + "type": "returnSuccess", + "name": "return success", + "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n", + "comments": "", + "x": 686.6258964538574, + "y": 1944.443223953247, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "c5b69925.729378", + "type": "execute", + "name": "execute RestApiCallNode - PUT AR by id", + "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='templateFileName' value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.sotn-attachment.templatefile`\" />\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url`' />\n <parameter name='restapiUser' value='`$prop.controller.user`' />\n <parameter name='restapiPassword' value='`$prop.controller.pwd`' />\n <parameter name='format' value='json' />\n <parameter name='httpMethod' value='PUT' />\n <parameter name=\"responsePrefix\" value=\"mdsal-ar\" />\n\n", + "comments": "", + "outputs": 1, + "x": 767.9449157714844, + "y": 1691.4682455062866, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "c8f2c95e.7a0b78", + "edc7bb51.8c2ee8", + "a8558f0e.c66f3" + ] + ] + }, + { + "id": "c8f2c95e.7a0b78", + "type": "not-found", + "name": "not-found", + "xml": "<outcome value='not-found'>\n", + "comments": "", + "outputs": 1, + "x": 1036.5862922668457, + "y": 1742.7996572479606, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "456ce311.27ccec" + ] + ] + }, + { + "id": "edc7bb51.8c2ee8", + "type": "failure", + "name": "failure", + "xml": "<outcome value='failure'>\n", + "comments": "", + "outputs": 1, + "x": 1027.5863418579102, + "y": 1711.299682997167, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "456ce311.27ccec" + ] + ] + }, + { + "id": "a8558f0e.c66f3", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 1031.3363800048828, + "y": 1681.6567878723145, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "fc3cc6b.7a5fa38" + ] + ] + }, + { + "id": "456ce311.27ccec", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error updating md-sal for connection-attachment-allotted-resource\" />\n", + "comments": "", + "x": 1197.3363800048828, + "y": 1712.049706839025, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "fc3cc6b.7a5fa38", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1172.9923477172852, + "y": 1677.8489570617676, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + + ] + ] + }, + { + "id": "5af6e72b.9d69a8", + "type": "set", + "name": "set ar-data", + "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-status.action' value=\"`$connection-attachment-topology-operation-input.request-information.request-action` \" />\n<parameter name='connection-attachment-ar.allotted-resource-status.rpc-name' value=\"connection-attachment-topology-operation\" />\n<parameter name='connection-attachment-ar.allotted-resource-status.rpc-action' value=\"`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.' value=\"`$connection-attachment-topology-operation-input.request-information.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.' value=\"`$connection-attachment-topology-operation-input.sdnc-request-header.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.service-information.' value=\"`$connection-attachment-topology-operation-input.service-information.` \" />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.` \" />", + "comments": "", + "x": 673.1585121154785, + "y": 1542.8492257595062, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "1d49bda0.f37e32", + "type": "execute", + "name": "execute getTime", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setTime' >\n <parameter name=\"outputPath\" value=\"tmp.current-time\" />\n\n", + "comments": "", + "outputs": 1, + "x": 690.4443550109863, + "y": 1615.4688234329224, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + + ] + ] + }, + { + "id": "285d454d.f5f90a", + "type": "set", + "name": "set allotted-resource-oper-status", + "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status' value='PendingDelete' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-topology-operation-input.request-information.request-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-request-id`' />\n<parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.create-timestamp' value='`$tmp.current-time`' />\n", + "comments": "", + "x": 740.4314346313477, + "y": 1652.419903755188, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "2d9aed4c.fcfbd2", + "type": "set", + "name": "set model-data", + "xml": "<set>\n<parameter name='connection-attachment-ar.allotted-resource-data.connection-attachment-topology.onap-model-information.' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.` \" />", + "comments": "", + "x": 687.0000534057617, + "y": 1582.0238761901855, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "9565d730.07f7d8", + "type": "comment", + "name": "Prepare data for allotted-resource addition to MDSAL", + "info": "This will add to allotted-resource which is present inside service.", + "comments": "", + "x": 800.3335151672363, + "y": 1503.0238282680511, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "b61bb52.fd12048", + "type": "comment", + "name": "Add to allotted-resources in mdsal", + "info": "", + "comments": "", + "x": 741.9133415222168, + "y": 1470.4371299743652, + "z": "b5ee72b6.6e8c5", + "wires": [ + + ] + }, + { + "id": "8e738bcf.052208", + "type": "update", + "name": "update AAI allotted-resource", + "xml": "<update plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"allotted-resource\" \n\t\tkey=\"customer.global-customer-id = $connection-attachment-topology-operation-input.service-information.global-customer-id AND\n\t\t\tservice-subscription.service-type = $connection-attachment-topology-operation-input.service-information.subscription-service-type AND\n\t\t\tservice-instance.service-instance-id = $connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id AND\n\t\t\tallotted-resource.id = $tmp.ar.allotted-resource-id\"\n pfx='pfx' local-only='false' force='false'>\n\t<parameter name=\"description\" value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type`\" />\n\t<parameter name=\"selflink\" value=\"`$tmp.ar.self-link`\" />\n\t<parameter name=\"model-invariant-id\" value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-invariant-uuid`\" />\n\t<parameter name=\"model-version-id\" value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-uuid`\" />\n\t<parameter name=\"operational-status\" value=\"PendingDelete\" />\n", + "comments": "", + "outputs": 1, + "x": 729.8893966674805, + "y": 1899.7541332244873, + "z": "b5ee72b6.6e8c5", + "wires": [ + [ + "83d13f6d.0d8cd", + "55a09cbe.8cef84" + ] + ] + } +] diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-delete.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-delete.json new file mode 100644 index 00000000..ca5ca898 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-delete.json @@ -0,0 +1,1013 @@ +[ + { + "id": "40d74cd7.316a14", + "type": "dgstart", + "name": "DGSTART", + "outputs": 1, + "x": 101, + "y": 40, + "z": "344982e2.7dca5e", + "wires": [ + [ + "f8cb9b5e.038868" + ] + ] + }, + { + "id": "f8cb9b5e.038868", + "type": "service-logic", + "name": "GENERIC-RESOURCE-API ${project.version}", + "module": "GENERIC-RESOURCE-API", + "version": "${project.version}", + "comments": "", + "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>", + "outputs": 1, + "x": 313.00000381469727, + "y": 112.0000171661377, + "z": "344982e2.7dca5e", + "wires": [ + [ + "a82adde1.bdf47" + ] + ] + }, + { + "id": "a82adde1.bdf47", + "type": "method", + "name": "sotn-attachment-topology-operation-delete", + "xml": "<method rpc='sotn-attachment-topology-operation-delete' mode='sync'>\n", + "comments": "", + "outputs": 1, + "x": 301.0001220703125, + "y": 200, + "z": "344982e2.7dca5e", + "wires": [ + [ + "949cc74.207fe38" + ] + ] + }, + { + "id": "949cc74.207fe38", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 317.0001220703125, + "y": 755.0002446174622, + "z": "344982e2.7dca5e", + "wires": [ + [ + "e8c0ed11.a9ee2", + "acbb646b.d77cc8", + "fd6eb40b.cdb328", + "9e6bdd2.2396b2", + "b1c2a911.f82f08", + "90800e39.89524", + "3735d68f.ab66da", + "c9fb1b0b.8e8c48", + "3438f4ce.6e83dc", + "8443751c.74bd98", + "4de78821.6f3c58", + "bcd52af9.df1738", + "9273699a.4d08c8", + "85ce8a7e.f20d58" + ] + ] + }, + { + "id": "e8c0ed11.a9ee2", + "type": "set", + "name": "set tmp.ar.allotted-resource-id,etc", + "xml": "<set>\n<parameter name='tmp.ar.allotted-resource-id' value='`connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`' />\n<parameter name='tmp.ar.parent-service-instance-id' value='`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id`' />\n\n\n", + "comments": "", + "x": 713.9935607910156, + "y": 153.9934868812561, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "43da58d7.610758", + "type": "comment", + "name": "set tmp ar-id to fetch resource from MDSAL", + "info": "", + "comments": "", + "x": 742.9538726806641, + "y": 118.02528285980225, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "acbb646b.d77cc8", + "type": "set", + "name": "set tmp.ar.self-link", + "xml": "<set>\n<parameter name='tmp.ar.self-link' value=\"`'restconf/config/GENERIC-RESOURCE-API:connection-attachment-allotted-resources/connection-attachment-allotted-resource/'\n + $tmp.ar.allotted-resource-id\n + '/allotted-resource-data/connection-attachment-topology/'` \" />\n\n", + "comments": "", + "x": 667.9934997558594, + "y": 246.99349212646484, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "90800e39.89524", + "type": "execute", + "name": "execute Properties", + "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\n <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />\n <parameter name='contextPrefix' value='prop' />\n", + "comments": "", + "outputs": 1, + "x": 674.2553901672363, + "y": 334.6602210998535, + "z": "344982e2.7dca5e", + "wires": [ + [ + + ] + ] + }, + { + "id": "fd6eb40b.cdb328", + "type": "execute", + "name": "generate allotted-resource url", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$prop.restapi.connection-attachment-allottedresource`\"/>\n <parameter name=\"outputPath\" value=\"tmp.ar-url\"/>\n <parameter name=\"target\" value=\"{allotted-resource-id}\"/>\n <parameter name=\"replacement\" value=\"`$tmp.ar.allotted-resource-id`\"/>\n", + "comments": "", + "outputs": 1, + "x": 706.2554168701172, + "y": 422.66020250320435, + "z": "344982e2.7dca5e", + "wires": [ + [ + + ] + ] + }, + { + "id": "1905b8ab.ca3847", + "type": "comment", + "name": "Used for setting output to API Handler", + "info": "", + "comments": "", + "x": 721.9935302734375, + "y": 213.993501663208, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "472b5b53.359df4", + "type": "comment", + "name": "Obtain different URL, template location etc", + "info": "For saving resource information to MDSAL & for AAI", + "comments": "", + "x": 739.9934959411621, + "y": 299.8823823928833, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "e758b3f.c00a45", + "type": "comment", + "name": "Used to Get AR by id to MDSAL, same as self-link", + "info": "", + "comments": "", + "x": 765.9935150146484, + "y": 386.8823413848877, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "9e6bdd2.2396b2", + "type": "get-resource", + "name": "get-resource parent-service-data", + "xml": "<get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='services/service/$tmp.ar.parent-service-instance-id/service-data' pfx='mdsal-psd' >\n", + "comments": "", + "outputs": 1, + "x": 713.0003890991211, + "y": 912.531683921814, + "z": "344982e2.7dca5e", + "wires": [ + [ + "376a6931.f70fe6", + "344c3669.3f542a" + ] + ] + }, + { + "id": "7df855f0.47079c", + "type": "comment", + "name": "GET parent-service-data from mdsal to check existence of other End point", + "info": "", + "comments": "", + "x": 833.0003280639648, + "y": 841.5316228866577, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "3af49e65.969612", + "type": "for", + "name": "for pidx..mdsal-psd.provided-allotted-resources.provided-allotted-resource[]", + "xml": "<for index='pidx' start='0' end='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`' >\n", + "comments": "", + "outputs": 1, + "x": 1644.1849060058594, + "y": 1017.0042171478271, + "z": "344982e2.7dca5e", + "wires": [ + [ + "c4ca63d9.fd59d" + ] + ] + }, + { + "id": "b1c2a911.f82f08", + "type": "switchNode", + "name": "switch mdsal-psd.provided-allotted-resources_length", + "xml": "<switch test='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`'>\n", + "comments": "", + "outputs": 1, + "x": 772.1841125488281, + "y": 1001.7180595397949, + "z": "344982e2.7dca5e", + "wires": [ + [ + "af927d7b.49dce", + "fc0125f.d3b43d8" + ] + ] + }, + { + "id": "97446eab.09441", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1258.4543991088867, + "y": 1057.7015590667725, + "z": "344982e2.7dca5e", + "wires": [ + [ + "3af49e65.969612", + "7aae58e1.7b18c8" + ] + ] + }, + { + "id": "c4ca63d9.fd59d", + "type": "switchNode", + "name": "switch allotted-resource-id", + "xml": "<switch test=\"`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`\">\n\n", + "comments": "", + "outputs": 1, + "x": 2063.2962188720703, + "y": 1017.0040645599365, + "z": "344982e2.7dca5e", + "wires": [ + [ + "637d9cfe.cdf994" + ] + ] + }, + { + "id": "3735d68f.ab66da", + "type": "set", + "name": "set tmp.ar.parent-service-instance-id", + "xml": "<set>\n<parameter name='tmp.ar.parent-service-instance-id' value=\"`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` \" />\n\n", + "comments": "", + "x": 723.9687118530273, + "y": 877.0000677108765, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "376a6931.f70fe6", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 959.9687118530273, + "y": 905.0000677108765, + "z": "344982e2.7dca5e", + "wires": [ + [ + "eee1cf23.532fa" + ] + ] + }, + { + "id": "344c3669.3f542a", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 951.8205146789551, + "y": 940.0661525726318, + "z": "344982e2.7dca5e", + "wires": [ + [ + "38d98c77.5a5dc4" + ] + ] + }, + { + "id": "38d98c77.5a5dc4", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: SOTN resource not found\" />\n \n", + "comments": "", + "x": 1126.9692001342773, + "y": 936.3335027694702, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "eee1cf23.532fa", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1110.9687118530273, + "y": 903.0000677108765, + "z": "344982e2.7dca5e", + "wires": [ + [ + + ] + ] + }, + { + "id": "fd82a90d.c15198", + "type": "failure", + "name": "failure", + "xml": "<outcome value='failure'>\n", + "comments": "", + "outputs": 1, + "x": 952.7306861877441, + "y": 1186.9527963399887, + "z": "344982e2.7dca5e", + "wires": [ + [ + "a5f6bd09.ffa1d" + ] + ] + }, + { + "id": "a5f6bd09.ffa1d", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"AAI failed\" />\n", + "comments": "", + "x": 1119.254566192627, + "y": 1198.5718673467636, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "399e5f25.1d673", + "type": "failure", + "name": "not-found", + "xml": "<outcome value='not-found'>\n", + "comments": "", + "outputs": 1, + "x": 959.8259735107422, + "y": 1219.7147639989853, + "z": "344982e2.7dca5e", + "wires": [ + [ + "a5f6bd09.ffa1d" + ] + ] + }, + { + "id": "c1db391c.684108", + "type": "comment", + "name": "TODO: Rework after confirmation from AAI", + "info": "", + "comments": "", + "x": 1084.137351989746, + "y": 1137.8731961250305, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "c9fb1b0b.8e8c48", + "type": "set", + "name": "set output to api handler", + "xml": "<set>\n<parameter name='allotted-resource-id' value='`$tmp.ar.allotted-resource-id`' />\n<parameter name='connection-attachment-object-path' value=\"`$tmp.ar.self-link`\"/>\n<parameter name='service-object-path' value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/'\n + $connection-attachment-topology-operation-input.service-information.service-instance-id\n + '/service-data/service-topology/'`\"/>\n \n", + "comments": "", + "x": 685.5460739135742, + "y": 1150.8276634216309, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "3438f4ce.6e83dc", + "type": "returnSuccess", + "name": "return success", + "xml": "<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n", + "comments": "", + "x": 654.9591789245605, + "y": 1251.4434180259705, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "8443751c.74bd98", + "type": "execute", + "name": "execute RestApiCallNode - PUT AR by id", + "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url`' />\n <parameter name='restapiUser' value='`$prop.controller.user`' />\n <parameter name='restapiPassword' value='`$prop.controller.pwd`' />\n <parameter name='format' value='json' />\n <parameter name='httpMethod' value='Delete' />\n <parameter name=\"responsePrefix\" value=\"mdsal-ar\" />\n\n", + "comments": "", + "outputs": 1, + "x": 739.6666641235352, + "y": 511.3333625793457, + "z": "344982e2.7dca5e", + "wires": [ + [ + "800033f.1bbe0d", + "b5b39fe4.c4cab", + "11a37ef9.11cf81" + ] + ] + }, + { + "id": "800033f.1bbe0d", + "type": "not-found", + "name": "not-found", + "xml": "<outcome value='not-found'>\n", + "comments": "", + "outputs": 1, + "x": 1008.3080406188965, + "y": 562.6647743210196, + "z": "344982e2.7dca5e", + "wires": [ + [ + "84c30bf1.79ce98" + ] + ] + }, + { + "id": "b5b39fe4.c4cab", + "type": "failure", + "name": "failure", + "xml": "<outcome value='failure'>\n", + "comments": "", + "outputs": 1, + "x": 999.3080902099609, + "y": 531.1648000702262, + "z": "344982e2.7dca5e", + "wires": [ + [ + "84c30bf1.79ce98" + ] + ] + }, + { + "id": "11a37ef9.11cf81", + "type": "success", + "name": "success", + "xml": "<outcome value='success'>\n", + "comments": "", + "outputs": 1, + "x": 1003.0581283569336, + "y": 501.52190494537354, + "z": "344982e2.7dca5e", + "wires": [ + [ + "b7efe17a.65f42" + ] + ] + }, + { + "id": "84c30bf1.79ce98", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error updating md-sal for connection-attachment-allotted-resource\" />\n", + "comments": "", + "x": 1169.0581283569336, + "y": 531.9148239120841, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "b7efe17a.65f42", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1144.714096069336, + "y": 497.71407413482666, + "z": "344982e2.7dca5e", + "wires": [ + [ + + ] + ] + }, + { + "id": "67cf0e71.e946f", + "type": "comment", + "name": "Delete Allotted Resource", + "info": "", + "comments": "", + "x": 687.0000457763672, + "y": 480.0000286102295, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "c1be7c26.8538e", + "type": "for", + "name": "for cidx..service-data.consumed-allotted-resources.consumed-allotted-resource[]", + "xml": "<for index='cidx' start='0' end='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`' >\n", + "comments": "", + "outputs": 1, + "x": 1637.00390625, + "y": 717.00390625, + "z": "344982e2.7dca5e", + "wires": [ + [ + "b702145d.d12dd8" + ] + ] + }, + { + "id": "4de78821.6f3c58", + "type": "switchNode", + "name": "switch service-data.consumed-allotted-resources_length", + "xml": "<switch test='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`'>\n", + "comments": "", + "outputs": 1, + "x": 790.0032920837402, + "y": 677.71790766716, + "z": "344982e2.7dca5e", + "wires": [ + [ + "9fcadeb2.7ddd3", + "f277a541.5d4da8" + ] + ] + }, + { + "id": "9fcadeb2.7ddd3", + "type": "other", + "name": "outcome Null", + "xml": "<outcome value=''>\n", + "comments": "", + "outputs": 1, + "x": 1114.1461563110352, + "y": 660.5753421783447, + "z": "344982e2.7dca5e", + "wires": [ + [ + "6ed5686.b9f1498" + ] + ] + }, + { + "id": "f277a541.5d4da8", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1100.1461791992188, + "y": 723.5753309726715, + "z": "344982e2.7dca5e", + "wires": [ + [ + "a167b159.d1f0a" + ] + ] + }, + { + "id": "a167b159.d1f0a", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1260.2732696533203, + "y": 721.7013075351715, + "z": "344982e2.7dca5e", + "wires": [ + [ + "c1be7c26.8538e", + "a14b9903.574488" + ] + ] + }, + { + "id": "bcd52af9.df1738", + "type": "set", + "name": "set consumed allotted resources for deletion", + "xml": "<set>\n<parameter name=\"service-data.consumed-allotted-resources.consumed-allotted-resource[$cidx].\" value=\"\" />\n<parameter name='service-data.consumed-allotted-resources.consumed-allotted-resource_length' value='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length - 1`' />\n\n", + "comments": "", + "x": 746.8606262207031, + "y": 748.28955078125, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "b702145d.d12dd8", + "type": "switchNode", + "name": "switch allotted-resource-id", + "xml": "<switch test=\"`$service-data.consumed-allotted-resources.consumed-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`\">\n\n", + "comments": "", + "outputs": 1, + "x": 2075.1155166625977, + "y": 713.0040283203125, + "z": "344982e2.7dca5e", + "wires": [ + [ + "5f8fbf17.00afa" + ] + ] + }, + { + "id": "5f8fbf17.00afa", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 2270.925338745117, + "y": 712.4683527946472, + "z": "344982e2.7dca5e", + "wires": [ + [ + "c51401e.55444" + ] + ] + }, + { + "id": "43e9034f.c4ea2c", + "type": "set", + "name": "set tmp.cidx", + "xml": "<set>\n<parameter name='tmp.cidx' value='`$cidx`' />\n", + "comments": "", + "x": 2582.26171875, + "y": 672.2246131896973, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "cdccd47e.bede38", + "type": "comment", + "name": "Delete consumed service consumed-allotted-resources in mdsal", + "info": "", + "comments": "", + "x": 801.0045623779297, + "y": 610.0038724095793, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "d296b738.04dcc8", + "type": "comment", + "name": "This set resource will be deleted in MDSAL by provider code", + "info": "", + "comments": "", + "x": 791.337345123291, + "y": 714.781964302063, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "8922e52b.01caf8", + "type": "comment", + "name": "Obtain the index of conusumed AR", + "info": "", + "comments": "", + "x": 713.7817535400391, + "y": 641.8927326202393, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "6ed5686.b9f1498", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Resource to be deleted doesn't exist in MDSAL.\" />\n", + "comments": "", + "x": 1276.00390625, + "y": 661.00390625, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "e0029499.0fe808", + "type": "break", + "name": "break", + "xml": "<break>\n", + "comments": "", + "x": 2574.003875732422, + "y": 732.2540216445923, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "c51401e.55444", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 2420.003936767578, + "y": 713.2539558410645, + "z": "344982e2.7dca5e", + "wires": [ + [ + "43e9034f.c4ea2c", + "e0029499.0fe808" + ] + ] + }, + { + "id": "f81fb204.590a8", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"resource to be deleted is not available in mdsal\" />\n", + "comments": "", + "x": 1730.25390625, + "y": 770.25390625, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "1a2d8fc2.146df", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>\n", + "comments": "", + "outputs": 1, + "x": 1592.75390625, + "y": 770.25390625, + "z": "344982e2.7dca5e", + "wires": [ + [ + "f81fb204.590a8" + ] + ] + }, + { + "id": "a14b9903.574488", + "type": "switchNode", + "name": "switch tmp.cidx ", + "xml": "<switch test=\"`$tmp.cidx`\">\n\n", + "comments": "", + "outputs": 1, + "x": 1438.75390625, + "y": 770.25390625, + "z": "344982e2.7dca5e", + "wires": [ + [ + "1a2d8fc2.146df" + ] + ] + }, + { + "id": "a2784c5c.f26de", + "type": "comment", + "name": "Delete provided service provided-allotted-resources in mdsal", + "info": "", + "comments": "", + "x": 787.5039215087891, + "y": 806.00390625, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "fc0125f.d3b43d8", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1081.5039596557617, + "y": 1054.7539730072021, + "z": "344982e2.7dca5e", + "wires": [ + [ + "97446eab.09441" + ] + ] + }, + { + "id": "af927d7b.49dce", + "type": "other", + "name": "outcome Null", + "xml": "<outcome value=''>\n", + "comments": "", + "outputs": 1, + "x": 1093.5038833618164, + "y": 991.7539174556732, + "z": "344982e2.7dca5e", + "wires": [ + [ + "29d2e8ba.860218" + ] + ] + }, + { + "id": "29d2e8ba.860218", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Resource to be deleted doesn't exist in MDSAL.\" />\n", + "comments": "", + "x": 1255.3616333007812, + "y": 992.1824815273285, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "8fbe7fb5.2044c", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"resource to be deleted is not available in mdsal\" />\n", + "comments": "", + "x": 1752.75390625, + "y": 1088.75390625, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "99d40761.083518", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>\n", + "comments": "", + "outputs": 1, + "x": 1615.25390625, + "y": 1088.75390625, + "z": "344982e2.7dca5e", + "wires": [ + [ + "8fbe7fb5.2044c" + ] + ] + }, + { + "id": "7aae58e1.7b18c8", + "type": "switchNode", + "name": "switch tmp.pidx ", + "xml": "<switch test=\"`$tmp.pidx`\">\n\n", + "comments": "", + "outputs": 1, + "x": 1461.25390625, + "y": 1088.75390625, + "z": "344982e2.7dca5e", + "wires": [ + [ + "99d40761.083518" + ] + ] + }, + { + "id": "637d9cfe.cdf994", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 2262.503963470459, + "y": 1014.7539739608765, + "z": "344982e2.7dca5e", + "wires": [ + [ + "240168eb.ef4528" + ] + ] + }, + { + "id": "fb4a1e64.0992d", + "type": "set", + "name": "set tmp.pidx", + "xml": "<set>\n<parameter name='tmp.pidx' value='`$pidx`' />\n", + "comments": "", + "x": 2580.8404235839844, + "y": 973.5101690292358, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "a63547e2.d5edc8", + "type": "break", + "name": "break", + "xml": "<break>\n", + "comments": "", + "x": 2572.5825805664062, + "y": 1033.5395774841309, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "240168eb.ef4528", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 2418.5826416015625, + "y": 1014.539511680603, + "z": "344982e2.7dca5e", + "wires": [ + [ + "fb4a1e64.0992d", + "a63547e2.d5edc8" + ] + ] + }, + { + "id": "9273699a.4d08c8", + "type": "set", + "name": "set provided allotted resources for deletion", + "xml": "<set>\n<parameter name=\"service-data.provided-allotted-resources.consumed-allotted-resource[$pidx].\" value=\"\" />\n<parameter name='service-data.provided-allotted-resources.consumed-allotted-resource_length' value='`$service-data.provided-allotted-resources.consumed-allotted-resource_length - 1`' />\n\n", + "comments": "", + "x": 741.0039215087891, + "y": 1052.003957748413, + "z": "344982e2.7dca5e", + "wires": [ + + ] + }, + { + "id": "85ce8a7e.f20d58", + "type": "update", + "name": "update AAI allotted-resource", + "xml": "<delete plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" resource='allotted-resource' \n\t\tkey=\"customer.global-customer-id = $connection-attachment-topology-operation-input.service-information.global-customer-id AND\n\t\t\tservice-subscription.service-type = $connection-attachment-topology-operation-input.service-information.subscription-service-type AND\n\t\t\tservice-instance.service-instance-id = $connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id AND\n\t\t\tallotted-resource.id = $tmp.ar.allotted-resource-id\">\n", + "comments": "", + "outputs": 1, + "x": 698.2226791381836, + "y": 1206.7543272972107, + "z": "344982e2.7dca5e", + "wires": [ + [ + "fd82a90d.c15198", + "399e5f25.1d673" + ] + ] + } +] diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-get-saved-ar-param.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-get-saved-ar-param.json new file mode 100644 index 00000000..f9a6bb1d --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-get-saved-ar-param.json @@ -0,0 +1,481 @@ +[ + { + "id": "78c3c512.2a5cfc", + "type": "dgstart", + "name": "DGSTART", + "outputs": 1, + "x": 113.03125, + "y": 43.03125, + "z": "be273250.67063", + "wires": [ + [ + "c8295f65.8fc4c" + ] + ] + }, + { + "id": "c8295f65.8fc4c", + "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": 325.03125381469727, + "y": 115.0312671661377, + "z": "be273250.67063", + "wires": [ + [ + "cb959304.88093" + ] + ] + }, + { + "id": "cb959304.88093", + "type": "method", + "name": "sotnt-get-saved-ar-param", + "xml": "<method rpc='sotn-get-saved-ar-param' mode='sync'>\n", + "comments": "", + "outputs": 1, + "x": 313.0313720703125, + "y": 203.03125, + "z": "be273250.67063", + "wires": [ + [ + "f53a4fe7.e10d8" + ] + ] + }, + { + "id": "f53a4fe7.e10d8", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 320.03126525878906, + "y": 289.0313081741333, + "z": "be273250.67063", + "wires": [ + [ + "cb3c00be.eadaf" + ] + ] + }, + { + "id": "cb3c00be.eadaf", + "type": "for", + "name": "for each sotn-get-request-input-param", + "xml": "<for index='idx' start='0' end='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param_length`' >\n", + "comments": "", + "outputs": 1, + "x": 356.6980285644531, + "y": 371.697904586792, + "z": "be273250.67063", + "wires": [ + [ + "9fceee94.c7352" + ] + ] + }, + { + "id": "9fceee94.c7352", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 621.5315322875977, + "y": 281.03129625320435, + "z": "be273250.67063", + "wires": [ + [ + "ac9e17c4.666db8", + "68c68212.dc993c", + "66615c8e.b750a4", + "4a64e3ec.0803bc", + "d49b138b.9b447", + "1f7b915.12bc26f", + "fcc00482.9d4728", + "be269c99.3195", + "d97ebcd8.acf64" + ] + ] + }, + { + "id": "ac9e17c4.666db8", + "type": "switchNode", + "name": "switch sotnVpnName", + "xml": "<switch test=\"`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'sotnVpnName'`\">", + "comments": "", + "outputs": 1, + "x": 848.53125, + "y": 79.03128051757812, + "z": "be273250.67063", + "wires": [ + [ + "4f0e4c80.dde4f4" + ] + ] + }, + { + "id": "4f0e4c80.dde4f4", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1035.53125, + "y": 75.03128051757812, + "z": "be273250.67063", + "wires": [ + [ + "ca00e2af.bb58d" + ] + ] + }, + { + "id": "ca00e2af.bb58d", + "type": "set", + "name": "set sotnVpnName", + "xml": "<set>\n<parameter name='prop.connection-attachment.sotnVpnName' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />\n", + "comments": "", + "x": 1203.53125, + "y": 75.63128662109375, + "z": "be273250.67063", + "wires": [ + + ] + }, + { + "id": "68c68212.dc993c", + "type": "switchNode", + "name": "switch access-provider-id", + "xml": "<switch test=\"`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'access-provider-id'`\">", + "comments": "", + "outputs": 1, + "x": 849.0416793823242, + "y": 138.03128051757812, + "z": "be273250.67063", + "wires": [ + [ + "a284600c.21032" + ] + ] + }, + { + "id": "a284600c.21032", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1036.0416793823242, + "y": 134.03128051757812, + "z": "be273250.67063", + "wires": [ + [ + "226a73cd.788cbc" + ] + ] + }, + { + "id": "226a73cd.788cbc", + "type": "set", + "name": "set access-provider-id", + "xml": "<set>\n<parameter name='prop.connection-attachment.access-provider-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />\n", + "comments": "", + "x": 1204.0416793823242, + "y": 134.63128662109375, + "z": "be273250.67063", + "wires": [ + + ] + }, + { + "id": "66615c8e.b750a4", + "type": "switchNode", + "name": "switch access-client-id", + "xml": "<switch test=\"`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'access-client-id'`\">", + "comments": "", + "outputs": 1, + "x": 851.0417404174805, + "y": 191.04170036315918, + "z": "be273250.67063", + "wires": [ + [ + "2b01edeb.bc12c2" + ] + ] + }, + { + "id": "2b01edeb.bc12c2", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1038.0417404174805, + "y": 187.04170036315918, + "z": "be273250.67063", + "wires": [ + [ + "ce9ed833.dd9e08" + ] + ] + }, + { + "id": "ce9ed833.dd9e08", + "type": "set", + "name": "set access-client-id", + "xml": "<set>\n<parameter name='prop.connection-attachment.access-client-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />\n", + "comments": "", + "x": 1206.0417404174805, + "y": 187.6417064666748, + "z": "be273250.67063", + "wires": [ + + ] + }, + { + "id": "4a64e3ec.0803bc", + "type": "switchNode", + "name": "switch access-topology-id", + "xml": "<switch test=\"`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'access-topology-id'`\">", + "comments": "", + "outputs": 1, + "x": 847.0417404174805, + "y": 257.0417003631592, + "z": "be273250.67063", + "wires": [ + [ + "cd0931d.fc24dd" + ] + ] + }, + { + "id": "cd0931d.fc24dd", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1034.0417404174805, + "y": 253.04170036315918, + "z": "be273250.67063", + "wires": [ + [ + "ae46664c.2ac008" + ] + ] + }, + { + "id": "ae46664c.2ac008", + "type": "set", + "name": "set access-topology-id", + "xml": "<set>\n<parameter name='prop.connection-attachment.access-topology-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />\n", + "comments": "", + "x": 1202.0417404174805, + "y": 253.6417064666748, + "z": "be273250.67063", + "wires": [ + + ] + }, + { + "id": "d49b138b.9b447", + "type": "switchNode", + "name": "switch access-node-id", + "xml": "<switch test=\"`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'access-node-id'`\">", + "comments": "", + "outputs": 1, + "x": 852.0417404174805, + "y": 311.04169845581055, + "z": "be273250.67063", + "wires": [ + [ + "c9b215fc.9adfd8" + ] + ] + }, + { + "id": "c9b215fc.9adfd8", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1039.0417404174805, + "y": 307.04169845581055, + "z": "be273250.67063", + "wires": [ + [ + "faf7a4cf.251418" + ] + ] + }, + { + "id": "faf7a4cf.251418", + "type": "set", + "name": "set access-node-id", + "xml": "<set>\n<parameter name='prop.connection-attachment.access-node-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />\n", + "comments": "", + "x": 1207.0417404174805, + "y": 307.6417045593262, + "z": "be273250.67063", + "wires": [ + + ] + }, + { + "id": "1f7b915.12bc26f", + "type": "switchNode", + "name": "switch access-ltp-id", + "xml": "<switch test=\"`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'access-ltp-id'`\">", + "comments": "", + "outputs": 1, + "x": 854.0417404174805, + "y": 373.04165840148926, + "z": "be273250.67063", + "wires": [ + [ + "672f4f35.c2cfa" + ] + ] + }, + { + "id": "672f4f35.c2cfa", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1041.0417404174805, + "y": 369.04165840148926, + "z": "be273250.67063", + "wires": [ + [ + "f006294d.d5f238" + ] + ] + }, + { + "id": "f006294d.d5f238", + "type": "set", + "name": "set access-ltp-id", + "xml": "<set>\n<parameter name='prop.connection-attachment.access-ltp-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />\n", + "comments": "", + "x": 1209.0417404174805, + "y": 369.6416645050049, + "z": "be273250.67063", + "wires": [ + + ] + }, + { + "id": "fcc00482.9d4728", + "type": "switchNode", + "name": "switch clientSignal", + "xml": "<switch test=\"`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'clientSignal'`\">", + "comments": "", + "outputs": 1, + "x": 858.0417404174805, + "y": 439.0416650772095, + "z": "be273250.67063", + "wires": [ + [ + "c5ace371.7d146" + ] + ] + }, + { + "id": "c5ace371.7d146", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1045.0417404174805, + "y": 435.0416650772095, + "z": "be273250.67063", + "wires": [ + [ + "6652e4bd.26a58c" + ] + ] + }, + { + "id": "6652e4bd.26a58c", + "type": "set", + "name": "set clientSignal", + "xml": "<set>\n<parameter name='prop.connection-attachment.clientSignal' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />\n", + "comments": "", + "x": 1213.0417404174805, + "y": 435.6416711807251, + "z": "be273250.67063", + "wires": [ + + ] + }, + { + "id": "be269c99.3195", + "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": 851.0313720703125, + "y": 553.031268119812, + "z": "be273250.67063", + "wires": [ + + ] + }, + { + "id": "d97ebcd8.acf64", + "type": "switchNode", + "name": "switch cVLAN", + "xml": "<switch test=\"`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'cVLAN'`\">", + "comments": "", + "outputs": 1, + "x": 857.03125, + "y": 491.0312194824219, + "z": "be273250.67063", + "wires": [ + [ + "b35b1b6b.cc2e38" + ] + ] + }, + { + "id": "b35b1b6b.cc2e38", + "type": "outcomeTrue", + "name": "true", + "xml": "<outcome value='true'>\n", + "comments": "", + "outputs": 1, + "x": 1044.03125, + "y": 487.0312194824219, + "z": "be273250.67063", + "wires": [ + [ + "d9b42ffa.b44df" + ] + ] + }, + { + "id": "d9b42ffa.b44df", + "type": "set", + "name": "set cVLAN", + "xml": "<set>\n<parameter name='prop.connection-attachment.cVLAN' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />\n", + "comments": "", + "x": 1212.03125, + "y": 487.6312255859375, + "z": "be273250.67063", + "wires": [ + + ] + } +]
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_validate-connection-attachment-input.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_validate-connection-attachment-input.json new file mode 100644 index 00000000..fa77c6f0 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_validate-connection-attachment-input.json @@ -0,0 +1,993 @@ +[ + { + "id": "193b8ebe.168931", + "type": "dgstart", + "name": "DGSTART", + "outputs": 1, + "x": 133.03125, + "y": 58.03125, + "z": "548da231.570f2c", + "wires": [ + [ + "516b96b5.f39508" + ] + ] + }, + { + "id": "516b96b5.f39508", + "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.3169708251953, + "y": 153.26932334899902, + "z": "548da231.570f2c", + "wires": [ + [ + "d1fe8042.cc5a4" + ] + ] + }, + { + "id": "d1fe8042.cc5a4", + "type": "method", + "name": "method validate-connection-attachment-input", + "xml": "<method rpc='validate-connection-attachment-input' mode='sync'>\n", + "comments": "", + "outputs": 1, + "x": 258.94793701171875, + "y": 249.28427839279175, + "z": "548da231.570f2c", + "wires": [ + [ + "b05ac558.fc0298" + ] + ] + }, + { + "id": "b05ac558.fc0298", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 265.94799041748047, + "y": 367.28428649902344, + "z": "548da231.570f2c", + "wires": [ + [ + "11b2d666.19a8fa", + "a0f1dfee.c1db9", + "57efdb7e.7de474", + "e66639cf.56aa48" + ] + ] + }, + { + "id": "11b2d666.19a8fa", + "type": "switchNode", + "name": "switch svc-action", + "xml": "<switch test='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`'>\n", + "comments": "", + "outputs": 1, + "x": 671.9479293823242, + "y": 24.28428077697754, + "z": "548da231.570f2c", + "wires": [ + [ + "563fe857.005428" + ] + ] + }, + { + "id": "563fe857.005428", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 883.6623001098633, + "y": 24.28429126739502, + "z": "548da231.570f2c", + "wires": [ + [ + "bf9c002.703e6" + ] + ] + }, + { + "id": "bf9c002.703e6", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"sdnc-request-header.svc-request-id is a required input\" />\n", + "comments": "", + "x": 1058.0908508300781, + "y": 23.28428363800049, + "z": "548da231.570f2c", + "wires": [ + + ] + }, + { + "id": "a0f1dfee.c1db9", + "type": "switchNode", + "name": "switch svc-action", + "xml": "<switch test='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`'>\n", + "comments": "", + "outputs": 1, + "x": 656.9478225708008, + "y": 366.2843084335327, + "z": "548da231.570f2c", + "wires": [ + [ + "6b1eefd1.a4726", + "517bdb12.579b84", + "352e24a0.788a7c", + "92374a0f.2f7d98", + "eb87ceea.db236" + ] + ] + }, + { + "id": "6b1eefd1.a4726", + "type": "outcome", + "name": "create", + "xml": "<outcome value='create'>\n", + "comments": "", + "outputs": 1, + "x": 882.4479789733887, + "y": 194.28435230255127, + "z": "548da231.570f2c", + "wires": [ + [ + "2f04939.a9b436c" + ] + ] + }, + { + "id": "517bdb12.579b84", + "type": "outcome", + "name": "delete", + "xml": "<outcome value='delete'>\n", + "comments": "", + "outputs": 1, + "x": 884.4599838256836, + "y": 772.1745042800903, + "z": "548da231.570f2c", + "wires": [ + [ + "c9b924ac.aa4418" + ] + ] + }, + { + "id": "352e24a0.788a7c", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 885.2218246459961, + "y": 958.6029243469238, + "z": "548da231.570f2c", + "wires": [ + [ + "313b0ba4.9277b4" + ] + ] + }, + { + "id": "313b0ba4.9277b4", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`\" />\n", + "comments": "", + "x": 1068.793357849121, + "y": 959.2220649719238, + "z": "548da231.570f2c", + "wires": [ + + ] + }, + { + "id": "c9b924ac.aa4418", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1066.6028099060059, + "y": 772.8409547805786, + "z": "548da231.570f2c", + "wires": [ + [ + "21ee0580.01132a" + ] + ] + }, + { + "id": "72eb1342.c73a6c", + "type": "other", + "name": "DeleteSOTNAttachmentInstance", + "xml": "<outcome value='DeleteSOTNAttachmentInstance'>", + "comments": "", + "outputs": 1, + "x": 1380.3171997070312, + "y": 786.8409357070923, + "z": "548da231.570f2c", + "wires": [ + [ + "a0b8065a.68d4e8" + ] + ] + }, + { + "id": "77510c5b.922da4", + "type": "other", + "name": "Other", + "xml": "<outcome value='Other'>", + "comments": "", + "outputs": 1, + "x": 1313.3174514770508, + "y": 875.8410797119141, + "z": "548da231.570f2c", + "wires": [ + [ + "69dd5310.b0e50c" + ] + ] + }, + { + "id": "69dd5310.b0e50c", + "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=\"request-information.request-action is required to be DeleteNetworkInstance for svc-action=delete\" />\n", + "comments": "", + "x": 1500.3174514770508, + "y": 876.8410797119141, + "z": "548da231.570f2c", + "wires": [ + + ] + }, + { + "id": "a0b8065a.68d4e8", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1743.3170852661133, + "y": 500.84095668792725, + "z": "548da231.570f2c", + "wires": [ + [ + "6c6e8419.13924c", + "d81b196b.de9bf8" + ] + ] + }, + { + "id": "6c6e8419.13924c", + "type": "switchNode", + "name": "switch allotted-resource-id", + "xml": "<switch test='`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`'>\n", + "comments": "", + "outputs": 1, + "x": 1994.3169059753418, + "y": 536.8409214019775, + "z": "548da231.570f2c", + "wires": [ + [ + "3455ba94.f30a46" + ] + ] + }, + { + "id": "3455ba94.f30a46", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 2005.3169212341309, + "y": 625.8409004211426, + "z": "548da231.570f2c", + "wires": [ + [ + "42c69ed2.4c6e3" + ] + ] + }, + { + "id": "42c69ed2.4c6e3", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"network-request-input.network-input-parameters.name is a required input\" />\n", + "comments": "", + "x": 2161.745632171631, + "y": 624.8409004211426, + "z": "548da231.570f2c", + "wires": [ + + ] + }, + { + "id": "d81b196b.de9bf8", + "type": "execute", + "name": "execute requiredParameter", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='requiredParameters' >\n<parameter name=\"connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id\" value=\"$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id\"/>\n\n", + "comments": "", + "outputs": 1, + "x": 1997.0313415527344, + "y": 464.98375606536865, + "z": "548da231.570f2c", + "wires": [ + [ + + ] + ] + }, + { + "id": "57efdb7e.7de474", + "type": "switchNode", + "name": "switch service-instance-id", + "xml": "<switch test='`$connection-attachment-topology-operation-input.service-information.service-instance-id`'>\n", + "comments": "", + "outputs": 1, + "x": 697.0312728881836, + "y": 67.99399757385254, + "z": "548da231.570f2c", + "wires": [ + [ + "85a4ddfa.563bf" + ] + ] + }, + { + "id": "85a4ddfa.563bf", + "type": "other", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 913.4598617553711, + "y": 68.99399757385254, + "z": "548da231.570f2c", + "wires": [ + [ + "e5b10c87.6dcab" + ] + ] + }, + { + "id": "e5b10c87.6dcab", + "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=\"service-information.service-instance-id is a required input\" />\n", + "comments": "", + "x": 1071.8883895874023, + "y": 67.99399757385254, + "z": "548da231.570f2c", + "wires": [ + + ] + }, + { + "id": "2f04939.a9b436c", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1047.253620147705, + "y": 191.9940309524536, + "z": "548da231.570f2c", + "wires": [ + [ + "99cb6d0f.faec9" + ] + ] + }, + { + "id": "99cb6d0f.faec9", + "type": "switchNode", + "name": "switch request-action", + "xml": "<switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>\n", + "comments": "", + "outputs": 1, + "x": 1142.4890975952148, + "y": 255.4991979598999, + "z": "548da231.570f2c", + "wires": [ + [ + "12b9b32c.a4b30d", + "46ff1495.b090cc" + ] + ] + }, + { + "id": "12b9b32c.a4b30d", + "type": "outcome", + "name": "CreateSOTNAttachmentInstance", + "xml": "<outcome value='CreateSOTNAttachmentInstance'>", + "comments": "", + "outputs": 1, + "x": 1397.8223190307617, + "y": 138.49896335601807, + "z": "548da231.570f2c", + "wires": [ + [ + "a1752dfc.73195" + ] + ] + }, + { + "id": "46ff1495.b090cc", + "type": "outcome", + "name": "other", + "xml": "<outcome value='other'>", + "comments": "", + "outputs": 1, + "x": 1330.8223152160645, + "y": 284.1656885147095, + "z": "548da231.570f2c", + "wires": [ + [ + "67468b53.41b5e4" + ] + ] + }, + { + "id": "67468b53.41b5e4", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"sdnc-request-header.request-action is invalid\" />\n", + "comments": "", + "x": 1529.3781509399414, + "y": 283.61034536361694, + "z": "548da231.570f2c", + "wires": [ + + ] + }, + { + "id": "a1752dfc.73195", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1653.6977615356445, + "y": 136.88288116455078, + "z": "548da231.570f2c", + "wires": [ + [ + "db455346.fe8d9" + ] + ] + }, + { + "id": "db455346.fe8d9", + "type": "for", + "name": "for loop i - Sotn input param", + "xml": "<for index=\"i\" start=\"0\" end=\"`$connection-attachment-topology-operation-input.connection-attachment-request-input.param_length`\">\n", + "comments": "", + "outputs": 1, + "x": 1735.3287467956543, + "y": 197.18352508544922, + "z": "548da231.570f2c", + "wires": [ + [ + "250dfbd6.f87e24" + ] + ] + }, + { + "id": "250dfbd6.f87e24", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1929.4120750427246, + "y": 161.93047618865967, + "z": "548da231.570f2c", + "wires": [ + [ + "6411a252.efa3dc", + "bd70a50a.f57aa8", + "bce7ba47.627aa8" + ] + ] + }, + { + "id": "6411a252.efa3dc", + "type": "set", + "name": "clear tmp-data", + "xml": "<set>\n<parameter name='tmp.name' value='' />\n<parameter name='tmp.value' value='' />\n", + "comments": "", + "x": 2121.412136077881, + "y": 116.16857433319092, + "z": "548da231.570f2c", + "wires": [ + + ] + }, + { + "id": "bd70a50a.f57aa8", + "type": "set", + "name": "set tmp-data", + "xml": "<set>\n<parameter name='tmp.name' value=\"`$connection-attachment-topology-operation-input.connection-attachment-request-input.param[$i].name`\"/>\n<parameter name='tmp.value' value=\"`$connection-attachment-topology-operation-input.connection-attachment-request-input.param[$i].value`\"/>\n", + "comments": "", + "x": 2110.4121322631836, + "y": 193.16857862472534, + "z": "548da231.570f2c", + "wires": [ + + ] + }, + { + "id": "bce7ba47.627aa8", + "type": "switchNode", + "name": "switch name", + "xml": "<switch test=\"`$tmp.name`\">\n", + "comments": "", + "outputs": 1, + "x": 2110.4122161865234, + "y": 275.16857862472534, + "z": "548da231.570f2c", + "wires": [ + [ + "9a3c6ac9.101328", + "b44b4e5e.93a68", + "c46018d4.cde2f8", + "bf279f01.56146", + "2718b920.5086d6", + "9dec1793.d77e58", + "6b903ba1.e89184", + "9610c6b4.d4b598" + ] + ] + }, + { + "id": "9a3c6ac9.101328", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 2312.4763164520264, + "y": 618.9942054748535, + "z": "548da231.570f2c", + "wires": [ + [ + "75de126c.4ad7cc" + ] + ] + }, + { + "id": "75de126c.4ad7cc", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'network-topology-operation-input.network-request-input.network-input-parameters.param[' + $i + ']' + '.name is a required input'`\" />\n", + "comments": "", + "x": 2487.476665496826, + "y": 614.9942588806152, + "z": "548da231.570f2c", + "wires": [ + + ] + }, + { + "id": "21ee0580.01132a", + "type": "switchNode", + "name": "switch request-action", + "xml": "<switch test='`$sotn-topology-operation-input.request-information.request-action`'>\n", + "comments": "", + "outputs": 1, + "x": 1088.6980628967285, + "y": 851.994065284729, + "z": "548da231.570f2c", + "wires": [ + [ + "72eb1342.c73a6c", + "77510c5b.922da4" + ] + ] + }, + { + "id": "b44b4e5e.93a68", + "type": "other", + "name": "sotnVpnName", + "xml": "<outcome value='sotnVpnName'>", + "comments": "", + "outputs": 1, + "x": 2327.4757356643677, + "y": 144.19395065307617, + "z": "548da231.570f2c", + "wires": [ + [ + "b99955f0.4e5fc8" + ] + ] + }, + { + "id": "b99955f0.4e5fc8", + "type": "switchNode", + "name": "switch value", + "xml": "<switch test=\"`$tmp.value`\">\n", + "comments": "", + "outputs": 1, + "x": 2558.3922157287598, + "y": 333.20887565612793, + "z": "548da231.570f2c", + "wires": [ + [ + "79ab6adb.1f2014" + ] + ] + }, + { + "id": "79ab6adb.1f2014", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 2742.3921394348145, + "y": 329.208890914917, + "z": "548da231.570f2c", + "wires": [ + [ + "cf098d97.55fb" + ] + ] + }, + { + "id": "cf098d97.55fb", + "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=\"`'$tmp.name +' is a required input'`\" />\n", + "comments": "", + "x": 2750.821060180664, + "y": 403.2088851928711, + "z": "548da231.570f2c", + "wires": [ + + ] + }, + { + "id": "c46018d4.cde2f8", + "type": "other", + "name": "clientSignal", + "xml": "<outcome value='clientSignal'>", + "comments": "", + "outputs": 1, + "x": 2333.475742340088, + "y": 213.19396114349365, + "z": "548da231.570f2c", + "wires": [ + [ + "b99955f0.4e5fc8" + ] + ] + }, + { + "id": "bf279f01.56146", + "type": "other", + "name": "access-provider-id", + "xml": "<outcome value='access-provider-id'>", + "comments": "", + "outputs": 1, + "x": 2335.3646812438965, + "y": 289.1939239501953, + "z": "548da231.570f2c", + "wires": [ + [ + "b99955f0.4e5fc8" + ] + ] + }, + { + "id": "2718b920.5086d6", + "type": "other", + "name": "access-client-id", + "xml": "<outcome value='access-client-id'>", + "comments": "", + "outputs": 1, + "x": 2332.3646812438965, + "y": 361.19392371177673, + "z": "548da231.570f2c", + "wires": [ + [ + "b99955f0.4e5fc8" + ] + ] + }, + { + "id": "9dec1793.d77e58", + "type": "other", + "name": "access-topology-id", + "xml": "<outcome value='access-topology-id'>", + "comments": "", + "outputs": 1, + "x": 2336.3646812438965, + "y": 423.1939239501953, + "z": "548da231.570f2c", + "wires": [ + [ + + ] + ] + }, + { + "id": "6b903ba1.e89184", + "type": "other", + "name": "access-node-id", + "xml": "<outcome value='access-node-id'>", + "comments": "", + "outputs": 1, + "x": 2338.3648529052734, + "y": 488.19395637512207, + "z": "548da231.570f2c", + "wires": [ + [ + "b99955f0.4e5fc8" + ] + ] + }, + { + "id": "9610c6b4.d4b598", + "type": "other", + "name": "cVLAN", + "xml": "<outcome value='cVLAN'>", + "comments": "", + "outputs": 1, + "x": 2316.3651542663574, + "y": 552.7496566772461, + "z": "548da231.570f2c", + "wires": [ + [ + "b99955f0.4e5fc8" + ] + ] + }, + { + "id": "92374a0f.2f7d98", + "type": "outcome", + "name": "activate", + "xml": "<outcome value='activate'>\n", + "comments": "", + "outputs": 1, + "x": 883.5312347412109, + "y": 364.53126430511475, + "z": "548da231.570f2c", + "wires": [ + [ + "40ca4bfa.dde754" + ] + ] + }, + { + "id": "40ca4bfa.dde754", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1064.3369064331055, + "y": 365.24098110198975, + "z": "548da231.570f2c", + "wires": [ + [ + "38d46ef5.2515a2" + ] + ] + }, + { + "id": "38d46ef5.2515a2", + "type": "switchNode", + "name": "switch request-action", + "xml": "<switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>\n", + "comments": "", + "outputs": 1, + "x": 1137.5723876953125, + "y": 445.74612522125244, + "z": "548da231.570f2c", + "wires": [ + [ + "bc03657f.d968f8", + "c7a46845.a20028" + ] + ] + }, + { + "id": "bc03657f.d968f8", + "type": "outcome", + "name": "ActivateSOTNAttachmentInstance", + "xml": "<outcome value='ActivateSOTNAttachmentInstance'>", + "comments": "", + "outputs": 1, + "x": 1393.9055290222168, + "y": 375.7458610534668, + "z": "548da231.570f2c", + "wires": [ + [ + "a0b8065a.68d4e8" + ] + ] + }, + { + "id": "c7a46845.a20028", + "type": "outcome", + "name": "other", + "xml": "<outcome value='other'>", + "comments": "", + "outputs": 1, + "x": 1310.905445098877, + "y": 484.41266107559204, + "z": "548da231.570f2c", + "wires": [ + [ + "62ba5aa1.e5bf54" + ] + ] + }, + { + "id": "62ba5aa1.e5bf54", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"sdnc-request-header.request-action is invalid\" />\n", + "comments": "", + "x": 1509.461280822754, + "y": 483.8573179244995, + "z": "548da231.570f2c", + "wires": [ + + ] + }, + { + "id": "eb87ceea.db236", + "type": "outcome", + "name": "deactivate", + "xml": "<outcome value='deactivate'>\n", + "comments": "", + "outputs": 1, + "x": 881.5311889648438, + "y": 584.53125, + "z": "548da231.570f2c", + "wires": [ + [ + "10580d5c.7277e3" + ] + ] + }, + { + "id": "10580d5c.7277e3", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1063.674015045166, + "y": 585.1977005004883, + "z": "548da231.570f2c", + "wires": [ + [ + "97009550.34e988" + ] + ] + }, + { + "id": "a7478b0d.ac1368", + "type": "other", + "name": "DeactivateSOTNAttachmentInstance", + "xml": "<outcome value='DeactivateSOTNAttachmentInstance'>", + "comments": "", + "outputs": 1, + "x": 1377.3884048461914, + "y": 599.197681427002, + "z": "548da231.570f2c", + "wires": [ + [ + "a0b8065a.68d4e8" + ] + ] + }, + { + "id": "f5f85a41.420a68", + "type": "other", + "name": "Other", + "xml": "<outcome value='Other'>", + "comments": "", + "outputs": 1, + "x": 1310.388656616211, + "y": 688.1978254318237, + "z": "548da231.570f2c", + "wires": [ + [ + "e751aaad.be4338" + ] + ] + }, + { + "id": "e751aaad.be4338", + "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=\"request-information.request-action is required to be DeleteNetworkInstance for svc-action=delete\" />\n", + "comments": "", + "x": 1497.388656616211, + "y": 689.1978254318237, + "z": "548da231.570f2c", + "wires": [ + + ] + }, + { + "id": "97009550.34e988", + "type": "switchNode", + "name": "switch request-action", + "xml": "<switch test='`$sotn-topology-operation-input.request-information.request-action`'>\n", + "comments": "", + "outputs": 1, + "x": 1085.7692680358887, + "y": 664.3508110046387, + "z": "548da231.570f2c", + "wires": [ + [ + "a7478b0d.ac1368", + "f5f85a41.420a68" + ] + ] + }, + { + "id": "e66639cf.56aa48", + "type": "switchNode", + "name": "switch parent-service-instance-id", + "xml": "<switch test='`$connection-attachment-topology-operation-input.service-information.parent-service-instance-id`'>\n", + "comments": "", + "outputs": 1, + "x": 713.0103988647461, + "y": 114.01042175292969, + "z": "548da231.570f2c", + "wires": [ + [ + "2f054da9.55b662" + ] + ] + }, + { + "id": "2f054da9.55b662", + "type": "other", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 919.43896484375, + "y": 118.01041412353516, + "z": "548da231.570f2c", + "wires": [ + [ + "271d7aba.ca1876" + ] + ] + }, + { + "id": "271d7aba.ca1876", + "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=\"service-information.parent-service-instance-id is a required input\" />\n", + "comments": "", + "x": 1077.8674926757812, + "y": 117.01041412353516, + "z": "548da231.570f2c", + "wires": [ + + ] + } +]
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_validate-vnf-input.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_validate-vnf-input.json index 548017d5..3ebab100 100644 --- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_validate-vnf-input.json +++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_validate-vnf-input.json @@ -1,487 +1,461 @@ [ - { - "id": "b38b0b37.4fbba8", - "type": "block", - "name": "block : atomic", - "xml": "<block atomic=\"true\">", - "atomic": "true", - "outputs": 1, - "x": 156.66665649414062, - "y": 414.16667597634455, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "52d79f98.236c9", - "db0b2c04.23c78", - "2090c272.2f2dae", - "f3ec5636.aa7578", - "de04dcb6.e0093", - "286a5aeb.cd2826" - ] - ] - }, - { - "id": "52d79f98.236c9", - "type": "switchNode", - "name": "switch svc-request-id", - "xml": "<switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-request-id`'>\n", - "comments": "", - "outputs": 1, - "x": 439.4285659790039, - "y": 297.24701404571533, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "f9ab1dd1.ac849" - ] - ] - }, - { - "id": "f9ab1dd1.ac849", - "type": "outcome", - "name": "NULL", - "xml": "<outcome value=''>", - "comments": "", - "outputs": 1, - "x": 665.1428604125977, - "y": 297.2470178604126, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "a08153b.30607b" - ] - ] - }, - { - "id": "a08153b.30607b", - "type": "returnFailure", - "name": "return failure", - "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"sdnc-request-header.svc-request-id is a required input\" />\n", - "comments": "", - "x": 816.5714263916016, - "y": 297.24701595306396, - "z": "19ac43dc.b5de6c", - "wires": [] - }, - { - "id": "db0b2c04.23c78", - "type": "switchNode", - "name": "switch svc-action", - "xml": "<switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-action`'>\n", - "comments": "", - "outputs": 1, - "x": 427.99992915562234, - "y": 255.81844561440607, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "eeea9033.66cb9" - ] - ] - }, - { - "id": "eeea9033.66cb9", - "type": "outcome", - "name": "NULL", - "xml": "<outcome value=''>", - "comments": "", - "outputs": 1, - "x": 663.7142808096751, - "y": 254.38984339577814, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "d8278276.52076" - ] - ] - }, - { - "id": "d8278276.52076", - "type": "returnFailure", - "name": "return failure", - "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"sdnc-request-header.svc-action is a required input\" />\n", - "comments": "", - "x": 813.7142541067942, - "y": 254.3898529325213, - "z": "19ac43dc.b5de6c", - "wires": [] - }, - { - "id": "2090c272.2f2dae", - "type": "switchNode", - "name": "switch request-action", - "xml": "<switch test='`$vnf-topology-operation-input.request-information.request-action`'>\n", - "comments": "", - "outputs": 1, - "x": 437.99998256138406, - "y": 340.1041607175555, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "3462c626.b9b84a" - ] - ] - }, - { - "id": "3462c626.b9b84a", - "type": "outcome", - "name": "NULL", - "xml": "<outcome value=''>", - "comments": "", - "outputs": 1, - "x": 665.1428560529439, - "y": 340.10417161669056, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "b3d88cc6.52ff2" - ] - ] - }, - { - "id": "b3d88cc6.52ff2", - "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=\"request-information.request-action is a required input\" />\n", - "comments": "", - "x": 816.5714220319478, - "y": 340.10416970934193, - "z": "19ac43dc.b5de6c", - "wires": [] - }, - { - "id": "e6d8c21d.71c1c", - "type": "switchNode", - "name": "switch model-customization-id", - "xml": "<switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`'>\n", - "comments": "", - "outputs": 1, - "x": 972.4645347595215, - "y": 486.53292655944824, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "de43bd69.67fda" - ] - ] - }, - { - "id": "de43bd69.67fda", - "type": "outcome", - "name": "NULL", - "xml": "<outcome value=''>", - "comments": "", - "outputs": 1, - "x": 1177.4645347595215, - "y": 486.53290939331055, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "4575d060.3b037" - ] - ] - }, - { - "id": "4575d060.3b037", - "type": "returnFailure", - "name": "return failure", - "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-information.onap-model-information.model-customization-uuid is a required input\" />\n", - "comments": "", - "x": 1328.8931007385254, - "y": 486.5329074859619, - "z": "19ac43dc.b5de6c", - "wires": [] - }, - { - "id": "689a33f6.b4cc9c", - "type": "switchNode", - "name": "switch tenant", - "xml": "<switch test='`$vnf-topology-operation-input.vnf-request-input.tenant`'>\n", - "comments": "", - "outputs": 1, - "x": 918.3216133117676, - "y": 527.9614372253418, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "238e5ffc.d0317" - ] - ] - }, - { - "id": "238e5ffc.d0317", - "type": "outcome", - "name": "NULL", - "xml": "<outcome value=''>", - "comments": "", - "outputs": 1, - "x": 1176.035930633545, - "y": 527.9614715576172, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "bcaf5c05.49c86" - ] - ] - }, - { - "id": "bcaf5c05.49c86", - "type": "returnFailure", - "name": "return failure", - "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-information.vnf-request-input.tenant is a required input\" />\n", - "comments": "", - "x": 1327.4644966125488, - "y": 527.9614696502686, - "z": "19ac43dc.b5de6c", - "wires": [] - }, - { - "id": "c2b4e8d1.4fcae8", - "type": "comment", - "name": "Validation of required fields", - "info": "", - "comments": "", - "x": 587.9999389648438, - "y": 211.53272819519043, - "z": "19ac43dc.b5de6c", - "wires": [] - }, - { - "id": "f3ec5636.aa7578", - "type": "switchNode", - "name": "switch svc-action", - "xml": "<switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-action`'>\n", - "comments": "", - "outputs": 1, - "x": 423.238037109375, - "y": 528.7947521209717, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "2acfd81d.e2f408" - ] - ] - }, - { - "id": "2acfd81d.e2f408", - "type": "outcome", - "name": "assign", - "xml": "<outcome value='assign'>\n", - "comments": "", - "outputs": 1, - "x": 585.738037109375, - "y": 528.7947521209717, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "5a45a048.95a1d" - ] - ] - }, - { - "id": "5a45a048.95a1d", - "type": "block", - "name": "block : atomic", - "xml": "<block atomic=\"true\">", - "atomic": "true", - "outputs": 1, - "x": 740.738037109375, - "y": 528.7947521209717, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "e6d8c21d.71c1c", - "689a33f6.b4cc9c", - "217fcc81.9f4ba4" - ] - ] - }, - { - "id": "a37f14a8.387e78", - "type": "dgstart", - "name": "DGSTART", - "outputs": 1, - "x": 100.41666630336204, - "y": 84.0803279876709, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "b399deb4.255d6" - ] - ] - }, - { - "id": "b399deb4.255d6", - "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": 175.70237186976829, - "y": 124.31843948364258, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "869696da.e07a18" - ] - ] - }, - { - "id": "869696da.e07a18", - "type": "method", - "name": "method validate-vnf-input", - "xml": "<method rpc='validate-vnf-input' mode='sync'>\n", - "comments": "", - "outputs": 1, - "x": 151.0952933175222, - "y": 165.33032417297363, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "b38b0b37.4fbba8" - ] - ] - }, - { - "id": "9789ee81.07f95", - "type": "comment", - "name": "validate-vnf-input", - "info": "", - "comments": "", - "x": 494.76152256556907, - "y": 31.666671752929688, - "z": "19ac43dc.b5de6c", - "wires": [] - }, - { - "id": "de04dcb6.e0093", - "type": "switchNode", - "name": "switch service-instance-id", - "xml": "<switch test='`$vnf-topology-operation-input.service-information.service-instance-id`'>\n", - "comments": "", - "outputs": 1, - "x": 451.0238135201589, - "y": 384.16668701171875, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "54e9ea0e.6ae744" - ] - ] - }, - { - "id": "54e9ea0e.6ae744", - "type": "outcome", - "name": "NULL", - "xml": "<outcome value=''>", - "comments": "", - "outputs": 1, - "x": 663.4523947579519, - "y": 384.1666831970215, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "d1e3ee4b.ceb14" - ] - ] - }, - { - "id": "d1e3ee4b.ceb14", - "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=\"service-information.service-instance-id is a required input\" />\n", - "comments": "", - "x": 814.8809607369558, - "y": 384.16668128967285, - "z": "19ac43dc.b5de6c", - "wires": [] - }, - { - "id": "286a5aeb.cd2826", - "type": "switchNode", - "name": "switch vnf-id", - "xml": "<switch test='`$vnf-topology-operation-input.vnf-information.vnf-id`'>\n", - "comments": "", - "outputs": 1, - "x": 408.5238227844238, - "y": 427.6666774749756, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "bb28e2bc.36c43" - ] - ] - }, - { - "id": "bb28e2bc.36c43", - "type": "outcome", - "name": "NULL", - "xml": "<outcome value=''>", - "comments": "", - "outputs": 1, - "x": 663.8095321655273, - "y": 426.23810958862305, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "9c9ba7cb.f1d4b8" - ] - ] - }, - { - "id": "9c9ba7cb.f1d4b8", - "type": "returnFailure", - "name": "return failure", - "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-information.vnf-id is a required input\" />\n", - "comments": "", - "x": 815.2380981445312, - "y": 426.2381076812744, - "z": "19ac43dc.b5de6c", - "wires": [] - }, - { - "id": "217fcc81.9f4ba4", - "type": "switchNode", - "name": "switch aic-cloud-region", - "xml": "<switch test='`$vnf-topology-operation-input.vnf-request-input.aic-cloud-region`'>\n", - "comments": "", - "outputs": 1, - "x": 947.6666946411133, - "y": 570.238094329834, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "30f287b7.9d1118" - ] - ] - }, - { - "id": "30f287b7.9d1118", - "type": "outcome", - "name": "NULL", - "xml": "<outcome value=''>", - "comments": "", - "outputs": 1, - "x": 1174.3810119628906, - "y": 570.2381286621094, - "z": "19ac43dc.b5de6c", - "wires": [ - [ - "44a324d9.932adc" - ] - ] - }, - { - "id": "44a324d9.932adc", - "type": "returnFailure", - "name": "return failure", - "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-request-input.aic-cloud-region is a required input\" />\n", - "comments": "", - "x": 1325.8095779418945, - "y": 570.2381267547607, - "z": "19ac43dc.b5de6c", - "wires": [] - } + { + "id": "c428e8d.27cce18", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 189, + "y": 416.50000422341486, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "3ab2d225.c8f26e", + "f97f4e94.92985", + "99754530.a920a8", + "77ab2ae3.a31c54", + "c2bc3d2d.6fb7d" + ] + ] + }, + { + "id": "3ab2d225.c8f26e", + "type": "switchNode", + "name": "switch svc-request-id", + "xml": "<switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-request-id`'>\n", + "comments": "", + "outputs": 1, + "x": 471.7619094848633, + "y": 299.58034229278564, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "a9a2f3f.7cb551" + ] + ] + }, + { + "id": "a9a2f3f.7cb551", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 697.476203918457, + "y": 299.5803461074829, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "cb1db5f9.619c48" + ] + ] + }, + { + "id": "cb1db5f9.619c48", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"sdnc-request-header.svc-request-id is a required input\" />\n", + "comments": "", + "x": 848.9047698974609, + "y": 299.5803442001343, + "z": "a20f7f20.3dd04", + "wires": [ + + ] + }, + { + "id": "f97f4e94.92985", + "type": "switchNode", + "name": "switch svc-action", + "xml": "<switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-action`'>\n", + "comments": "", + "outputs": 1, + "x": 460.3332726614817, + "y": 258.1517738614764, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "4bce0fc2.589ce" + ] + ] + }, + { + "id": "4bce0fc2.589ce", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 696.0476243155344, + "y": 256.72317164284846, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "8b6ba872.3b8a98" + ] + ] + }, + { + "id": "8b6ba872.3b8a98", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"sdnc-request-header.svc-action is a required input\" />\n", + "comments": "", + "x": 846.0475976126536, + "y": 256.7231811795916, + "z": "a20f7f20.3dd04", + "wires": [ + + ] + }, + { + "id": "99754530.a920a8", + "type": "switchNode", + "name": "switch request-action", + "xml": "<switch test='`$vnf-topology-operation-input.request-information.request-action`'>\n", + "comments": "", + "outputs": 1, + "x": 470.33332606724343, + "y": 342.4374889646258, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "1356b9d1.f1abc6" + ] + ] + }, + { + "id": "1356b9d1.f1abc6", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 697.4761995588033, + "y": 342.4374998637609, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "9bdd0c3e.f5034" + ] + ] + }, + { + "id": "9bdd0c3e.f5034", + "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=\"request-information.request-action is a required input\" />\n", + "comments": "", + "x": 848.9047655378072, + "y": 342.43749795641224, + "z": "a20f7f20.3dd04", + "wires": [ + + ] + }, + { + "id": "77407e17.13aa", + "type": "switchNode", + "name": "switch model-customization-id", + "xml": "<switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`'>\n", + "comments": "", + "outputs": 1, + "x": 1004.7978782653809, + "y": 488.86625480651855, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "c78e5862.3ed2f8" + ] + ] + }, + { + "id": "c78e5862.3ed2f8", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 1209.7978782653809, + "y": 488.86623764038086, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "a0bae35d.bd0f3" + ] + ] + }, + { + "id": "a0bae35d.bd0f3", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-information.onap-model-information.model-customization-uuid is a required input\" />\n", + "comments": "", + "x": 1361.2264442443848, + "y": 488.8662357330322, + "z": "a20f7f20.3dd04", + "wires": [ + + ] + }, + { + "id": "9b39e778.02f938", + "type": "switchNode", + "name": "switch tenant", + "xml": "<switch test='`$vnf-topology-operation-input.vnf-request-input.tenant`'>\n", + "comments": "", + "outputs": 1, + "x": 950.654956817627, + "y": 530.2947654724121, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "204bc24c.52717e" + ] + ] + }, + { + "id": "204bc24c.52717e", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 1208.3692741394043, + "y": 530.2947998046875, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "cd515ce9.de34" + ] + ] + }, + { + "id": "cd515ce9.de34", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-information.vnf-request-input.tenant is a required input\" />\n", + "comments": "", + "x": 1359.7978401184082, + "y": 530.2947978973389, + "z": "a20f7f20.3dd04", + "wires": [ + + ] + }, + { + "id": "38ecaf2a.7759a", + "type": "comment", + "name": "Validation of required fields", + "info": "", + "comments": "", + "x": 620.3332824707031, + "y": 213.86605644226074, + "z": "a20f7f20.3dd04", + "wires": [ + + ] + }, + { + "id": "77ab2ae3.a31c54", + "type": "switchNode", + "name": "switch svc-action", + "xml": "<switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-action`'>\n", + "comments": "", + "outputs": 1, + "x": 455.5713806152344, + "y": 531.128080368042, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "8e972969.bb2dd8" + ] + ] + }, + { + "id": "8e972969.bb2dd8", + "type": "outcome", + "name": "assign", + "xml": "<outcome value='assign'>\n", + "comments": "", + "outputs": 1, + "x": 618.0713806152344, + "y": 531.128080368042, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "f91647c8.1d72f8" + ] + ] + }, + { + "id": "f91647c8.1d72f8", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 773.0713806152344, + "y": 531.128080368042, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "77407e17.13aa", + "9b39e778.02f938", + "4108c244.bc563c" + ] + ] + }, + { + "id": "bfe21f2e.7dff3", + "type": "dgstart", + "name": "DGSTART", + "outputs": 1, + "x": 132.7500098092214, + "y": 86.41365623474121, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "d64c66df.cad6c8" + ] + ] + }, + { + "id": "d64c66df.cad6c8", + "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": 208.03571537562766, + "y": 126.65176773071289, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "2e84fc71.260244" + ] + ] + }, + { + "id": "2e84fc71.260244", + "type": "method", + "name": "method validate-vnf-input", + "xml": "<method rpc='validate-vnf-input' mode='sync'>\n", + "comments": "", + "outputs": 1, + "x": 183.42863682338157, + "y": 167.66365242004395, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "c428e8d.27cce18" + ] + ] + }, + { + "id": "580b25f3.b0273c", + "type": "comment", + "name": "validate-vnf-input", + "info": "", + "comments": "", + "x": 527.0948660714284, + "y": 34, + "z": "a20f7f20.3dd04", + "wires": [ + + ] + }, + { + "id": "c2bc3d2d.6fb7d", + "type": "switchNode", + "name": "switch service-instance-id", + "xml": "<switch test='`$vnf-topology-operation-input.service-information.service-instance-id`'>\n", + "comments": "", + "outputs": 1, + "x": 483.3571570260183, + "y": 386.50001525878906, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "4f2dc133.3331a" + ] + ] + }, + { + "id": "4f2dc133.3331a", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 695.7857382638113, + "y": 386.5000114440918, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "46f09548.364bec" + ] + ] + }, + { + "id": "46f09548.364bec", + "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=\"service-information.service-instance-id is a required input\" />\n", + "comments": "", + "x": 847.2143042428152, + "y": 386.50000953674316, + "z": "a20f7f20.3dd04", + "wires": [ + + ] + }, + { + "id": "4108c244.bc563c", + "type": "switchNode", + "name": "switch aic-cloud-region", + "xml": "<switch test='`$vnf-topology-operation-input.vnf-request-input.aic-cloud-region`'>\n", + "comments": "", + "outputs": 1, + "x": 980.0000381469727, + "y": 572.5714225769043, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "c4c6b560.de5ab8" + ] + ] + }, + { + "id": "c4c6b560.de5ab8", + "type": "outcome", + "name": "NULL", + "xml": "<outcome value=''>", + "comments": "", + "outputs": 1, + "x": 1206.71435546875, + "y": 572.5714569091797, + "z": "a20f7f20.3dd04", + "wires": [ + [ + "c4c87ecd.ccad2" + ] + ] + }, + { + "id": "c4c87ecd.ccad2", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-request-input.aic-cloud-region is a required input\" />\n", + "comments": "", + "x": 1358.142921447754, + "y": 572.571455001831, + "z": "a20f7f20.3dd04", + "wires": [ + + ] + } ] diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_vnf-topology-operation.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_vnf-topology-operation.json index bfb38e5c..dcdfbec8 100644 --- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_vnf-topology-operation.json +++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_vnf-topology-operation.json @@ -1,271 +1,679 @@ [ - { - "id": "7fb1a187.9549f", - "type": "dgstart", - "name": "DGSTART", - "outputs": 1, - "x": 96.66666412353516, - "y": 86.66666412353516, - "z": "dcb795e3.12ddb8", - "wires": [ - [ - "c2b8a7b8.a5e428" - ] - ] - }, - { - "id": "c2b8a7b8.a5e428", - "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": 171.9523696899414, - "y": 126.90477561950684, - "z": "dcb795e3.12ddb8", - "wires": [ - [ - "89a5ce6c.8a947" - ] - ] - }, - { - "id": "89a5ce6c.8a947", - "type": "method", - "name": "method vnf-topology-operation", - "xml": "<method rpc='vnf-topology-operation' mode='sync'>\n", - "comments": "", - "outputs": 1, - "x": 165.0952911376953, - "y": 166.66665840148926, - "z": "dcb795e3.12ddb8", - "wires": [ - [ - "baea3ff6.bd225" - ] - ] - }, - { - "id": "435f3efd.64ab3", - "type": "comment", - "name": "vnf-topology-operation", - "info": "", - "comments": "", - "x": 491.0115203857422, - "y": 34.253007888793945, - "z": "dcb795e3.12ddb8", - "wires": [] - }, - { - "id": "baea3ff6.bd225", - "type": "block", - "name": "block : atomic", - "xml": "<block atomic=\"true\">", - "atomic": "true", - "outputs": 1, - "x": 177.8333740234375, - "y": 334.36017417907715, - "z": "dcb795e3.12ddb8", - "wires": [ - [ - "f2687cfc.01d4c", - "b4265d07.b24f2", - "b14b13c7.baa14" - ] - ] - }, - { - "id": "f2687cfc.01d4c", - "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": 470.3333282470703, - "y": 484.52420711517334, - "z": "dcb795e3.12ddb8", - "wires": [] - }, - { - "id": "b4265d07.b24f2", - "type": "switchNode", - "name": "switch svc-action", - "xml": "<switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-action`'>\n", - "comments": "", - "outputs": 1, - "x": 473.23804473876953, - "y": 332.5714178085327, - "z": "dcb795e3.12ddb8", - "wires": [ - [ - "76164f7d.903b1", - "117347a9.8b7218", - "e07500fb.cff53", - "9b91fc07.60be4", - "bc77aaba.4aabe8" - ] - ] - }, - { - "id": "76164f7d.903b1", - "type": "outcome", - "name": "assign", - "xml": "<outcome value='assign'>\n", - "comments": "", - "outputs": 1, - "x": 672.0475540161133, - "y": 265.1905632019043, - "z": "dcb795e3.12ddb8", - "wires": [ - [ - "5ec13553.7c0efc" - ] - ] - }, - { - "id": "117347a9.8b7218", - "type": "outcome", - "name": "unassign", - "xml": "<outcome value='unassign'>\n", - "comments": "", - "outputs": 1, - "x": 676.0951766967773, - "y": 395.38128662109375, - "z": "dcb795e3.12ddb8", - "wires": [ - [ - "9d96816e.64ca5" - ] - ] - }, - { - "id": "9b91fc07.60be4", - "type": "other", - "name": "other", - "xml": "<outcome value='Other'>\n", - "comments": "", - "outputs": 1, - "x": 670.8094024658203, - "y": 439.57136249542236, - "z": "dcb795e3.12ddb8", - "wires": [ - [ - "2717cc4c.7bccc4" - ] - ] - }, - { - "id": "2717cc4c.7bccc4", - "type": "returnFailure", - "name": "return failure", - "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`$vnf-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`\" />\n", - "comments": "", - "x": 856.9998474121094, - "y": 439.5714273452759, - "z": "dcb795e3.12ddb8", - "wires": [] - }, - { - "id": "b14b13c7.baa14", - "type": "call", - "name": "call GENERIC-RESOURCE-API:validate-vnf-input", - "xml": "<call module='GENERIC-RESOURCE-API' rpc='validate-vnf-input' mode='sync' >\n", - "comments": "", - "outputs": 1, - "x": 579.0832977294922, - "y": 224.04770278930664, - "z": "dcb795e3.12ddb8", - "wires": [ - [] - ] - }, - { - "id": "5ec13553.7c0efc", - "type": "call", - "name": "call GENERIC-RESOURCE-API:vnf-topology-operation-assign", - "xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-assign' mode='sync' >\n", - "comments": "", - "outputs": 1, - "x": 1014.1904067993164, - "y": 264.76202392578125, - "z": "dcb795e3.12ddb8", - "wires": [ - [] - ] - }, - { - "id": "3e660d10.204032", - "type": "call", - "name": "call GENERIC-RESOURCE-API:vnf-topology-operation-deactivate", - "xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-deactivate' mode='sync' >\n", - "comments": "", - "outputs": 1, - "x": 1025.5236740112305, - "y": 349.0953722000122, - "z": "dcb795e3.12ddb8", - "wires": [ - [] - ] - }, - { - "id": "9d96816e.64ca5", - "type": "call", - "name": "call GENERIC-RESOURCE-API:vnf-topology-operation-unassign", - "xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-unassign' mode='sync' >\n", - "comments": "", - "outputs": 1, - "x": 1021.1902732849121, - "y": 395.0954179763794, - "z": "dcb795e3.12ddb8", - "wires": [ - [] - ] - }, - { - "id": "e07500fb.cff53", - "type": "outcome", - "name": "deactivate", - "xml": "<outcome value='deactivate'>\n", - "comments": "", - "outputs": 1, - "x": 681.190315246582, - "y": 349.76204776763916, - "z": "dcb795e3.12ddb8", - "wires": [ - [ - "3e660d10.204032" - ] - ] - }, - { - "id": "1d805763.8f6c79", - "type": "call", - "name": "call GENERIC-RESOURCE-API:vnf-topology-operation-activate", - "xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-activate' mode='sync' >\n", - "comments": "", - "outputs": 1, - "x": 1018.333251953125, - "y": 306.6666555404663, - "z": "dcb795e3.12ddb8", - "wires": [ - [] - ] - }, - { - "id": "bc77aaba.4aabe8", - "type": "outcome", - "name": "activate", - "xml": "<outcome value='activate'>\n", - "comments": "", - "outputs": 1, - "x": 674.9998931884766, - "y": 307.33333110809326, - "z": "dcb795e3.12ddb8", - "wires": [ - [ - "1d805763.8f6c79" - ] - ] - } + { + "id": "1b5f4355.88b3ed", + "type": "dgstart", + "name": "DGSTART", + "outputs": 1, + "x": 136, + "y": 81.41365623474121, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "92410749.e30c28" + ] + ] + }, + { + "id": "92410749.e30c28", + "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": 211.28570556640625, + "y": 121.65176773071289, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "de7a7cf0.2991d" + ] + ] + }, + { + "id": "de7a7cf0.2991d", + "type": "method", + "name": "method vnf-topology-operation", + "xml": "<method rpc='vnf-topology-operation' mode='sync'>\n", + "comments": "", + "outputs": 1, + "x": 204.42862701416016, + "y": 161.4136505126953, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "867be286.94ccc" + ] + ] + }, + { + "id": "281a9dd6.337dd2", + "type": "comment", + "name": "vnf-topology-operation", + "info": "", + "comments": "", + "x": 530.344856262207, + "y": 29, + "z": "c9c2af7b.65cd3", + "wires": [ + + ] + }, + { + "id": "867be286.94ccc", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 220.16676330566406, + "y": 348.10718727111816, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "fe43f540.d09078", + "15193abc.c22c05", + "fc3ae627.2d5b18" + ] + ] + }, + { + "id": "fe43f540.d09078", + "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": 512.6667175292969, + "y": 498.27122020721436, + "z": "c9c2af7b.65cd3", + "wires": [ + + ] + }, + { + "id": "15193abc.c22c05", + "type": "switchNode", + "name": "switch svc-action", + "xml": "<switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-action`'>\n", + "comments": "", + "outputs": 1, + "x": 515.5714340209961, + "y": 346.31843090057373, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "a43184a6.086e28", + "7b06cbd3.e89e84", + "dae5d288.e7a92", + "7acf72d2.60660c", + "2e7ef9bc.356346", + "d945d7c6.11f878", + "bd3763ee.b90e6" + ] + ] + }, + { + "id": "a43184a6.086e28", + "type": "outcome", + "name": "assign", + "xml": "<outcome value='assign'>\n", + "comments": "", + "outputs": 1, + "x": 927.3809661865234, + "y": 56.937567710876465, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "19bbb0d.1420e4f" + ] + ] + }, + { + "id": "7b06cbd3.e89e84", + "type": "outcome", + "name": "unassign", + "xml": "<outcome value='unassign'>\n", + "comments": "", + "outputs": 1, + "x": 943.4286308288574, + "y": 487.12828254699707, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "c0267b56.9f8598" + ] + ] + }, + { + "id": "7acf72d2.60660c", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 932.1428680419922, + "y": 867.3183660507202, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "7fb1d50a.a61dfc" + ] + ] + }, + { + "id": "7fb1d50a.a61dfc", + "type": "returnFailure", + "name": "return failure", + "xml": "<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`$vnf-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`\" />\n", + "comments": "", + "x": 1165.3332977294922, + "y": 867.3184270858765, + "z": "c9c2af7b.65cd3", + "wires": [ + + ] + }, + { + "id": "fc3ae627.2d5b18", + "type": "call", + "name": "call GENERIC-RESOURCE-API:validate-vnf-input", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='validate-vnf-input' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 621.4166870117188, + "y": 237.79471588134766, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + + ] + ] + }, + { + "id": "19bbb0d.1420e4f", + "type": "call", + "name": "call GENERIC-RESOURCE-API:vnf-topology-operation-assign", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-assign' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 1269.5238189697266, + "y": 56.50902843475342, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + + ] + ] + }, + { + "id": "989adce1.617b6", + "type": "call", + "name": "call GENERIC-RESOURCE-API:vnf-topology-operation-deactivate", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-deactivate' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 1750.8571319580078, + "y": 399.84235858917236, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + + ] + ] + }, + { + "id": "c0267b56.9f8598", + "type": "call", + "name": "call GENERIC-RESOURCE-API:vnf-topology-operation-unassign", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-unassign' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 1288.5237274169922, + "y": 486.8424139022827, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + + ] + ] + }, + { + "id": "dae5d288.e7a92", + "type": "outcome", + "name": "deactivate", + "xml": "<outcome value='deactivate'>\n", + "comments": "", + "outputs": 1, + "x": 950.5237579345703, + "y": 342.5090456008911, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "d35c6654.dff7f8" + ] + ] + }, + { + "id": "b233aed1.7cc8b", + "type": "call", + "name": "call GENERIC-RESOURCE-API:vnf-topology-operation-activate", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-activate' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 1692.6665802001953, + "y": 221.41364765167236, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + + ] + ] + }, + { + "id": "2e7ef9bc.356346", + "type": "outcome", + "name": "activate", + "xml": "<outcome value='activate'>\n", + "comments": "", + "outputs": 1, + "x": 930.3333053588867, + "y": 148.08033561706543, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "b8b2367a.dc9308" + ] + ] + }, + { + "id": "d945d7c6.11f878", + "type": "outcome", + "name": "create", + "xml": "<outcome value='create'>\n", + "comments": "", + "outputs": 1, + "x": 945.0001182556152, + "y": 587.5000038146973, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "11cfb10a.0c9b2f" + ] + ] + }, + { + "id": "bd3763ee.b90e6", + "type": "outcome", + "name": "delete", + "xml": "<outcome value='delete'>\n", + "comments": "", + "outputs": 1, + "x": 943.0001068115234, + "y": 730.5000066757202, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "b6227308.758fb" + ] + ] + }, + { + "id": "3b079f6f.6575e", + "type": "switchNode", + "name": "switch request-action", + "xml": "<switch test='`$vnf-topology-operation-input.request-information.request-action`'>\n", + "comments": "", + "outputs": 1, + "x": 1172.0000762939453, + "y": 198.5000123977661, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "91e1f35b.e83e1", + "9ab20bbe.72bfe8" + ] + ] + }, + { + "id": "9ab20bbe.72bfe8", + "type": "outcome", + "name": "ActivateSiteInstance", + "xml": "<outcome value='ActivateSiteInstance'>", + "comments": "", + "outputs": 1, + "x": 1385.4762725830078, + "y": 129.979229927063, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "cc08e8cd.1386a8" + ] + ] + }, + { + "id": "91e1f35b.e83e1", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1354.381004333496, + "y": 221.3572244644165, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "b233aed1.7cc8b" + ] + ] + }, + { + "id": "b8b2367a.dc9308", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1111.0000762939453, + "y": 143.5000123977661, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "3b079f6f.6575e" + ] + ] + }, + { + "id": "cc08e8cd.1386a8", + "type": "call", + "name": "call GENERIC-RESOURCE-API:sotn-vnf-topology-operation-activate", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-activate' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 1759.0000762939453, + "y": 128.5000123977661, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + + ] + ] + }, + { + "id": "c5b71763.802b68", + "type": "switchNode", + "name": "switch request-action", + "xml": "<switch test='`$vnf-topology-operation-input.request-information.request-action`'>\n", + "comments": "", + "outputs": 1, + "x": 1213.0000762939453, + "y": 375.5000123977661, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "68410e70.ad006", + "bb394983.2aedd8" + ] + ] + }, + { + "id": "bb394983.2aedd8", + "type": "outcome", + "name": "DeActivateSiteInstance", + "xml": "<outcome value='DeActivateSiteInstance'>", + "comments": "", + "outputs": 1, + "x": 1426.4762725830078, + "y": 306.979229927063, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "91176b7.7e10a98" + ] + ] + }, + { + "id": "68410e70.ad006", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1395.381004333496, + "y": 398.3572244644165, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "989adce1.617b6" + ] + ] + }, + { + "id": "d35c6654.dff7f8", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1152.0000762939453, + "y": 320.5000123977661, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "c5b71763.802b68" + ] + ] + }, + { + "id": "91176b7.7e10a98", + "type": "call", + "name": "call GENERIC-RESOURCE-API:sotn-vnf-topology-operation-deactivate", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-deactivate' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 1796.0000762939453, + "y": 304.5000123977661, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + + ] + ] + }, + { + "id": "2493a0e1.8557e", + "type": "switchNode", + "name": "switch request-action", + "xml": "<switch test='`$vnf-topology-operation-input.request-information.request-action`'>\n", + "comments": "", + "outputs": 1, + "x": 1188.3336029052734, + "y": 640.086371421814, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "83563263.c6fd7", + "db1508ed.23aba8" + ] + ] + }, + { + "id": "db1508ed.23aba8", + "type": "outcome", + "name": "CreateSiteInstance", + "xml": "<outcome value='CreateSiteInstance'>", + "comments": "", + "outputs": 1, + "x": 1401.809799194336, + "y": 571.5655889511108, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "614f2a06.d13b14" + ] + ] + }, + { + "id": "83563263.c6fd7", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1370.7145309448242, + "y": 662.9435834884644, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "b50447b1.828c48" + ] + ] + }, + { + "id": "11cfb10a.0c9b2f", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1127.3336029052734, + "y": 585.086371421814, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "2493a0e1.8557e" + ] + ] + }, + { + "id": "614f2a06.d13b14", + "type": "call", + "name": "call GENERIC-RESOURCE-API:sotn-vnf-topology-operation-create", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-create' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 1775.3336029052734, + "y": 570.086371421814, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + + ] + ] + }, + { + "id": "b50447b1.828c48", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1511.0001068115234, + "y": 664.0000066757202, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + + ] + ] + }, + { + "id": "ae568733.43d4f8", + "type": "switchNode", + "name": "switch request-action", + "xml": "<switch test='`$vnf-topology-operation-input.request-information.request-action`'>\n", + "comments": "", + "outputs": 1, + "x": 1189.0001068115234, + "y": 783.0000066757202, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "7dcf461f.f62e18", + "3e92266c.ac902a" + ] + ] + }, + { + "id": "3e92266c.ac902a", + "type": "outcome", + "name": "DeleteSiteInstance", + "xml": "<outcome value='DeleteSiteInstance'>", + "comments": "", + "outputs": 1, + "x": 1402.476303100586, + "y": 714.4792242050171, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "bb58fef3.31757" + ] + ] + }, + { + "id": "7dcf461f.f62e18", + "type": "other", + "name": "other", + "xml": "<outcome value='Other'>\n", + "comments": "", + "outputs": 1, + "x": 1371.3810348510742, + "y": 805.8572187423706, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "efc8c613.2b0088" + ] + ] + }, + { + "id": "b6227308.758fb", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic=\"true\">", + "atomic": "true", + "outputs": 1, + "x": 1128.0001068115234, + "y": 728.0000066757202, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + "ae568733.43d4f8" + ] + ] + }, + { + "id": "bb58fef3.31757", + "type": "call", + "name": "call GENERIC-RESOURCE-API:sotn-vnf-topology-operation-delete", + "xml": "<call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-delete' mode='sync' >\n", + "comments": "", + "outputs": 1, + "x": 1776.0001068115234, + "y": 713.0000066757202, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + + ] + ] + }, + { + "id": "efc8c613.2b0088", + "type": "block", + "name": "block", + "xml": "<block>\n", + "atomic": "false", + "comments": "", + "outputs": 1, + "x": 1511.6666107177734, + "y": 806.9136419296265, + "z": "c9c2af7b.65cd3", + "wires": [ + [ + + ] + ] + } ] diff --git a/platform-logic/generic-resource-api/src/main/resources/graph.versions b/platform-logic/generic-resource-api/src/main/resources/graph.versions index 73e4f7c1..d0e98086 100644 --- a/platform-logic/generic-resource-api/src/main/resources/graph.versions +++ b/platform-logic/generic-resource-api/src/main/resources/graph.versions @@ -80,4 +80,8 @@ GENERIC-RESOURCE-API sotn-network-topology-operation-create ${project.version} s GENERIC-RESOURCE-API sotn-network-topology-operation-delete ${project.version} sync GENERIC-RESOURCE-API sotn-network-topology-operation-activate ${project.version} sync GENERIC-RESOURCE-API sotn-network-topology-operation-deactivate ${project.version} sync -GENERIC-RESOURCE-API validate-sotn-network-input-parameters ${project.version} sync
\ No newline at end of file +GENERIC-RESOURCE-API validate-sotn-network-input-parameters ${project.version} sync +GENERIC-RESOURCE-API site-vnf-topology-operation-create ${project.version} sync +GENERIC-RESOURCE-API site-vnf-topology-operation-delete ${project.version} sync +GENERIC-RESOURCE-API site-vnf-topology-operation-activate ${project.version} sync +GENERIC-RESOURCE-API site-vnf-topology-operation-deactivate ${project.version} sync
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_connection-attachment-topology-operation.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_connection-attachment-topology-operation.xml new file mode 100644 index 00000000..c5d13775 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_connection-attachment-topology-operation.xml @@ -0,0 +1,82 @@ +<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='connection-attachment-topology-operation' mode='sync'>
+ <block atomic="true">
+ <call module='GENERIC-RESOURCE-API' rpc='validate-connection-attachment-input' mode='sync' ></call>
+ <switch test='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`'>
+ <outcome value='create'>
+ <switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>
+ <outcome value='CreateSOTNAttachmentInstance'>
+ <call module='GENERIC-RESOURCE-API' rpc='sotn-attachment-topology-operation-create' mode='sync' ></call>
+ </outcome>
+ <outcome value='other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'Provided request-action=' + $connection-attachment-topology-operation-input.request-information.request-action + ' is not supported.'`" />
+ </return>
+ </outcome>
+ </switch>
+ </outcome>
+ <outcome value='activate'>
+ <switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>
+ <outcome value='ActivateSOTNAttachmentInstance'>
+ <call module='GENERIC-RESOURCE-API' rpc='sotn-attachment-topology-operation-activate' mode='sync' ></call>
+ </outcome>
+ <outcome value='other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'Provided request-action=' + $connection-attachment-topology-operation-input.request-information.request-action + ' is not supported.'`" />
+ </return>
+ </outcome>
+ </switch>
+ </outcome>
+ <outcome value='delete'>
+ <switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>
+ <outcome value='DeactivateSOTNAttachmentInstance'>
+ <call module='GENERIC-RESOURCE-API' rpc='sotn-attachment-topology-operation-deactivate' mode='sync' ></call>
+ </outcome>
+ <outcome value='other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'Provided request-action=' + $connection-attachment-topology-operation-input.request-information.request-action + ' is not supported.'`" />
+ </return>
+ </outcome>
+ </switch>
+ </outcome>
+ <outcome value='deactivate'>
+ <switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>
+ <outcome value='DeleteSOTNAttachmentInstance'>
+ <call module='GENERIC-RESOURCE-API' rpc='sotn-attachment-topology-operation-delete' mode='sync' ></call>
+ </outcome>
+ <outcome value='other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'Provided request-action=' + $connection-attachment-topology-operation-input.request-information.request-action + ' is not supported.'`" />
+ </return>
+ </outcome>
+ </switch>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="sdnc-request-header.svc-action is invalid" />
+ </return>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name="ack-final" value="Y"/>
+ </set>
+ <return status='success'>
+ <parameter name="ack-final-indicator" value="Y" />
+ <parameter name="error-code" value="200" />
+ <parameter name="error-message" value="`$error-message`" />
+ </return>
+ </block>
+ </method>
+</service-logic>
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.xml new file mode 100644 index 00000000..0078f07d --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.xml @@ -0,0 +1,149 @@ +<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='site-vnf-topology-operation-activate' mode='sync'> + <block atomic="true"> + <switch test='`$service-data.vnfs.vnf_length`'> + <outcome value='0'> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data" /> + </return> + </outcome> + <outcome value=''> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data" /> + </return> + </outcome> + <outcome value='Other'> + <block atomic="true"> + <for index='vidx' start='0' end='`$service-data.vnfs.vnf_length`' > + <switch test="`$service-data.vnfs.vnf[$vidx].vnf-id == $vnf-topology-operation-input.vnf-information.vnf-id`"> + <outcome value='true'> + <set> + <parameter name='tmp.vidx' value='`$vidx`' /> + <parameter name='ctx.vnf-data.' value='`$service-data.vnfs.vnf[$vidx].`' /> + </set> + </outcome> + </switch> + </for> + <switch test="`$tmp.vidx`"> + <outcome value=''> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data" /> + </return> + </outcome> + </switch> + </block> + </outcome> + </switch> + <set> + <parameter name='tmp.sdwan.site' value='false' /> + </set> + <for index='idx' start='0' end='`$ctx.vnf-data.vnf-request-input.vnf-input-parameters.param_length`' > + <block> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'id'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.id' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + </set> + </outcome> + </switch> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'name'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.name' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + </set> + </outcome> + </switch> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'description'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.description' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + </set> + </outcome> + </switch> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'location'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.location' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + </set> + </outcome> + </switch> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'type'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.type' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + <parameter name='tmp.sdwan.site' value='true' /> + </set> + </outcome> + </switch> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'role'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.role' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + <parameter name='tmp.sdwan.site' value='true' /> + </set> + </outcome> + </switch> + </block> + </for> + <switch test="`$tmp.sdwan.site`"> + <outcome value='false'> + <block></block> + </outcome> + <outcome value='true'> + <block atomic="true"></block> + </outcome> + </switch> + <set> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-id' value='`$prop.vnf-index`' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.sdnc-request-header.' value='$vnf-topology-operation-input.sdnc-request-header.' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.request-information.' value='$vnf-topology-operation-input.request-information.' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.' value='$vnf-topology-operation-input.service-information.' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.' value='$vnf-topology-operation-input.vnf-information.' /> + </set> + <set> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status' value='Active' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-rpc-action' value='`$vnf-topology-operation-input.sdnc-request-header.svc-action`' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-action' value='`$vnf-topology-operation-input.request-information.request-action`' /> + </set> + <set> + <parameter name='vnfId' value='`$prop.vnf-index`' /> + <parameter name="vnf-object-path" value="`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vnf-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $prop.vnf-index + '/vnf-data/'` " /> + </set> + <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='generic-vnf' + key='generic-vnf.vnf-id = $prop.vnf-index' > + <parameter name='vnf-id' value='`$prop.vnf-index`' /> + <parameter name='in-maint' value='true' /> + <parameter name='is-closed-loop-disabled' value='false' /> + <parameter name='orchestration-status' value='Active' /> + <parameter name='operational-status' value='Active' /> + <parameter name='model-customization-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`' /> + <parameter name='model-invariant-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`' /> + <parameter name='model-version-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`' /> + <parameter name='selflink' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vnf-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $prop.vnf-index + '/vnf-data/'` " /> + </update> + <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.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' + force="true" pfx="tmp.AnAI-data"> + <parameter name="relationship-list.relationship[0].related-to" value="generic-vnf" /> + <parameter name="relationship-list.relationship[0].related-link" value="`'/network/generic-vnfs/generic-vnf/' + $prop.vnf-index`" /> + <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="generic-vnf.vnf-id" /> + <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$prop.vnf-index`" /> + </save> + <return status='success'> + <parameter name="ack-final-indicator" value="Y" /> + <parameter name="error-code" value="200" /> + <parameter name="error-message" value="`$error-message`" /> + </return> + </block> + </method> +</service-logic> diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-create.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-create.xml new file mode 100644 index 00000000..ab728d7c --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-create.xml @@ -0,0 +1,137 @@ +<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='site-vnf-topology-operation-create' mode='sync'> + <block atomic="true"> + <for index="idx" start="0" end="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param_length`"> + <block> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'id'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.id' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + </set> + </outcome> + </switch> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'name'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.name' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + </set> + </outcome> + </switch> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'description'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.description' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + </set> + </outcome> + </switch> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'location'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.location' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + </set> + </outcome> + </switch> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'type'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.type' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + </set> + </outcome> + </switch> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'role'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.role' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + </set> + </outcome> + </switch> + </block> + </for> + <switch test='`$service-data.vnfs.vnf_length`'> + <outcome value=''> + <set> + <parameter name='vnf-index' value='0' /> + </set> + </outcome> + <outcome value='Other'> + <block> + <set> + <parameter name='vnf-index' value='`$service-data.vnfs.vnf_length`' /> + </set> + <for index='idx' start='0' end='`$service-data.vnfs.vnf_length`' > + <switch test='`$vnf-topology-operation-input.vnf-information.vnf-id == $service-data.vnfs.vnf[$idx].vnf-id`'> + <outcome value='true'> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="`'VNF id ' + $service-data.vnfs.vnf[$idx].vnf-id + + ' already exists, and has order status ' + $service-data.vnfs.vnf[$idx].vnf-data.vnf-level-oper-status.order-status`" /> + </return> + </outcome> + </switch> + </for> + </block> + </outcome> + </switch> + <set> + <parameter name='service-data.vnfs.vnf_length' value='`$vnf-index + 1`' /> + </set> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' > + <parameter name="ctx-destination" value="prop.vnf-index"/> + </execute> + <set> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-id' value='`$prop.vnf-index`' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.sdnc-request-header.' value='$vnf-topology-operation-input.sdnc-request-header.' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.request-information.' value='$vnf-topology-operation-input.request-information.' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.' value='$vnf-topology-operation-input.service-information.' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.' value='$vnf-topology-operation-input.vnf-information.' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-request-input.' value='$vnf-topology-operation-input.vnf-request-input.' /> + </set> + <set> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.vnf-id' value='`$prop.vnf-index`' /> + </set> + <set> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status' value='Created' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-rpc-action' value='`$vnf-topology-operation-input.sdnc-request-header.svc-action`' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-action' value='`$vnf-topology-operation-input.request-information.request-action`' /> + </set> + <set> + <parameter name='vnfId' value='`$prop.vnf-index`' /> + <parameter name="vnf-object-path" value="`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vnf-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $prop.vnf-index + '/vnf-data/'` " /> + </set> + <save plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='generic-vnf' + key='generic-vnf.vnf-id = $prop.vnf-index' > + <parameter name='vnf-id' value='`$prop.vnf-index`' /> + <parameter name='vnf-name' value='`$prop.site.name`' /> + <parameter name='vnf-name2' value='`$prop.site.description`' /> + <parameter name='regional-resource-zone' value='`$prop.site.location`' /> + <parameter name='vnf-type' value='prop.site.type' /> + <parameter name='in-maint' value='true' /> + <parameter name='is-closed-loop-disabled' value='false' /> + <parameter name='orchestration-status' value='Created' /> + <parameter name='operational-status' value='Created' /> + <parameter name='model-customization-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`' /> + <parameter name='model-invariant-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`' /> + <parameter name='model-version-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`' /> + <parameter name='selflink' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vnf-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $prop.vnf-index + '/vnf-data/'` " /> + </save> + <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.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' + force="true" pfx="tmp.AnAI-data"> + <parameter name="relationship-list.relationship[0].related-to" value="generic-vnf" /> + <parameter name="relationship-list.relationship[0].related-link" value="`'/network/generic-vnfs/generic-vnf/' + $prop.vnf-index`" /> + <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="generic-vnf.vnf-id" /> + <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$prop.vnf-index`" /> + </save> + <return status='success'> + <parameter name="ack-final-indicator" value="Y" /> + <parameter name="error-code" value="200" /> + <parameter name="error-message" value="`$error-message`" /> + </return> + </block> + </method> +</service-logic> diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.xml new file mode 100644 index 00000000..373706fd --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.xml @@ -0,0 +1,149 @@ +<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='site-vnf-topology-operation-deactivate' mode='sync'> + <block atomic="true"> + <switch test='`$service-data.vnfs.vnf_length`'> + <outcome value='0'> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data" /> + </return> + </outcome> + <outcome value=''> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data" /> + </return> + </outcome> + <outcome value='Other'> + <block atomic="true"> + <for index='vidx' start='0' end='`$service-data.vnfs.vnf_length`' > + <switch test="`$service-data.vnfs.vnf[$vidx].vnf-id == $vnf-topology-operation-input.vnf-information.vnf-id`"> + <outcome value='true'> + <set> + <parameter name='tmp.vidx' value='`$vidx`' /> + <parameter name='ctx.vnf-data.' value='`$service-data.vnfs.vnf[$vidx].`' /> + </set> + </outcome> + </switch> + </for> + <switch test="`$tmp.vidx`"> + <outcome value=''> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data" /> + </return> + </outcome> + </switch> + </block> + </outcome> + </switch> + <set> + <parameter name='tmp.sdwan.site' value='false' /> + </set> + <for index='idx' start='0' end='`$ctx.vnf-data.vnf-request-input.vnf-input-parameters.param_length`' > + <block> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'id'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.id' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + </set> + </outcome> + </switch> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'name'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.name' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + </set> + </outcome> + </switch> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'description'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.description' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + </set> + </outcome> + </switch> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'location'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.location' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + </set> + </outcome> + </switch> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'type'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.type' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + <parameter name='tmp.sdwan.site' value='true' /> + </set> + </outcome> + </switch> + <switch test="`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].name == 'role'`"> + <outcome value='true'> + <set> + <parameter name='prop.site.role' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$idx].value`' /> + <parameter name='tmp.sdwan.site' value='true' /> + </set> + </outcome> + </switch> + </block> + </for> + <switch test="`$tmp.sdwan.site`"> + <outcome value='false'> + <block></block> + </outcome> + <outcome value='true'> + <block atomic="true"></block> + </outcome> + </switch> + <set> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-id' value='`$prop.vnf-index`' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.sdnc-request-header.' value='$vnf-topology-operation-input.sdnc-request-header.' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.request-information.' value='$vnf-topology-operation-input.request-information.' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.' value='$vnf-topology-operation-input.service-information.' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.' value='$vnf-topology-operation-input.vnf-information.' /> + </set> + <set> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status' value='PendingDelete' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-rpc-action' value='`$vnf-topology-operation-input.sdnc-request-header.svc-action`' /> + <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.last-action' value='`$vnf-topology-operation-input.request-information.request-action`' /> + </set> + <set> + <parameter name='vnfId' value='`$prop.vnf-index`' /> + <parameter name="vnf-object-path" value="`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vnf-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $prop.vnf-index + '/vnf-data/'` " /> + </set> + <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='generic-vnf' + key='generic-vnf.vnf-id = $prop.vnf-index' > + <parameter name='vnf-id' value='`$prop.vnf-index`' /> + <parameter name='in-maint' value='true' /> + <parameter name='is-closed-loop-disabled' value='false' /> + <parameter name='orchestration-status' value='PendingDelete' /> + <parameter name='operational-status' value='PendingDelete' /> + <parameter name='model-customization-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`' /> + <parameter name='model-invariant-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`' /> + <parameter name='model-version-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`' /> + <parameter name='selflink' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vnf-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $prop.vnf-index + '/vnf-data/'` " /> + </update> + <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.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' + force="true" pfx="tmp.AnAI-data"> + <parameter name="relationship-list.relationship[0].related-to" value="generic-vnf" /> + <parameter name="relationship-list.relationship[0].related-link" value="`'/network/generic-vnfs/generic-vnf/' + $prop.vnf-index`" /> + <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="generic-vnf.vnf-id" /> + <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$prop.vnf-index`" /> + </save> + <return status='success'> + <parameter name="ack-final-indicator" value="Y" /> + <parameter name="error-code" value="200" /> + <parameter name="error-message" value="`$error-message`" /> + </return> + </block> + </method> +</service-logic> diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-delete.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-delete.xml new file mode 100644 index 00000000..2bba7f30 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-delete.xml @@ -0,0 +1,101 @@ +<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='site-vnf-topology-operation-delete' mode='sync'> + <block atomic="true"> + <switch test='`$service-data.vnfs.vnf_length`'> + <outcome value='0'> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data" /> + </return> + </outcome> + <outcome value=''> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data" /> + </return> + </outcome> + <outcome value='Other'> + <block atomic="true"> + <for index='vidx' start='0' end='`$service-data.vnfs.vnf_length`' > + <switch test="`$service-data.vnfs.vnf[$vidx].vnf-id == $vnf-topology-operation-input.vnf-information.vnf-id`"> + <outcome value='true'> + <set> + <parameter name='tmp.vidx' value='`$vidx`' /> + <parameter name='ctx.vnf-data.' value='`$service-data.vnfs.vnf[$vidx].`' /> + </set> + </outcome> + </switch> + </for> + <switch test="`$tmp.vidx`"> + <outcome value=''> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data" /> + </return> + </outcome> + </switch> + </block> + </outcome> + </switch> + <switch test="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.order-status == 'PendingDelete'`"> + <outcome value='false'> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Cannot delete a VNF in a Created state" /> + </return> + </outcome> + </switch> + <switch test="`$ctx.vnf-data.vf-modules.vf-module_length`"> + <outcome value='0'> + <block></block> + </outcome> + <outcome value=''> + <block></block> + </outcome> + <outcome value='Other'> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Cannot delete the VNF because there are VFs defined" /> + </return> + </outcome> + </switch> + <switch test='`$service-data.vnfs.vnf_length`'> + <outcome value='1'> + <set> + <parameter name="service-data.vnfs." value=""/> + </set> + </outcome> + <outcome value='Other'> + <block atomic="true"> + <for index='idx' start='`$vnf-index + 1`' end='`$service-data.vnfs.vnf_length`' > + <set> + <parameter name="$tmpidx" value="`$idx - 1`"/> + <parameter name="service-data.vnfs.vnf[$tmpidx]." value="$service-data.vnfs.vnf[$idx]." /> + </set> + </for> + <set> + <parameter name="service-data.vnfs.vnf[$service-data.vnfs.vnf_length-1]." value=""/> + </set> + <set> + <parameter name="service-data.vnfs.vnf_length" value="`$service-data.vnfs.vnf_length - 1`"/> + </set> + </block> + </outcome> + </switch> + <delete plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='generic-vnf' + key='generic-vnf.vnf-id = $prop.vnf-index' ></delete> + <return status='success'> + <parameter name="ack-final-indicator" value="Y" /> + <parameter name="error-code" value="200" /> + <parameter name="error-message" value="`$error-message`" /> + </return> + </block> + </method> +</service-logic> diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.xml new file mode 100644 index 00000000..a8935d83 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.xml @@ -0,0 +1,521 @@ +<service-logic
+ xmlns='http://www.onap.org/sdnc/svclogic'
+ xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>
+ <method rpc='sotn-attachment-topology-operation-activate' mode='sync'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.ar.allotted-resource-id' value='`connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`' />
+ <parameter name='tmp.ar.parent-service-instance-id' value='`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id`' />
+ </set>
+ <set>
+ <parameter name='tmp.ar.self-link' value="`'restconf/config/GENERIC-RESOURCE-API:connection-attachment-allotted-resources/connection-attachment-allotted-resource/'
+ + $tmp.ar.allotted-resource-id
+ + '/allotted-resource-data/connection-attachment-topology/'` " />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
+ <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />
+ <parameter name='contextPrefix' value='prop' />
+ </execute>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+ <parameter name="source" value="`$prop.restapi.connection-attachment-allottedresource`"/>
+ <parameter name="outputPath" value="tmp.ar-url"/>
+ <parameter name="target" value="{allotted-resource-id}"/>
+ <parameter name="replacement" value="`$tmp.ar.allotted-resource-id`"/>
+ </execute>
+ <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='connection-attachment-allotted-resources/connection-attachment-allotted-resource/$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id/' pfx='mdsal-ar' >
+ <outcome value='success'>
+ <block atomic="true">
+ <switch test='`$mdsal-ar.connection-attachment-allotted-resource_length`'>
+ <outcome value='1'>
+ <block atomic='true'>
+ <set>
+ <parameter name='connection-attachment-ar.' value='$mdsal-ar.connection-attachment-allotted-resource[0].' />
+ </set>
+ <switch test='`$connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status`'>
+ <outcome value='Created'>
+ <block></block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message"
+ value="`'Existing connection-attachment-allotted-resource with order status of ' + $connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status + '.'`" />
+ </return>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.request-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-ar.allotted-resource-status.rpc-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.svc-request-id`' />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="404" />
+ <parameter name="error-message" value="Error: SOTN resource not found" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <block atomic="true">
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="404" />
+ <parameter name="error-message" value="Error: SOTN resource not found" />
+ </return>
+ </block>
+ </outcome>
+ </get-resource>
+ <block atomic="true">
+ <call module='GENERIC-RESOURCE-API' rpc='connection-attachment-get-request-input-param' mode='sync' ></call>
+ </block>
+ <set>
+ <parameter name='tmp.ar.parent-service-instance-id' value="`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` " />
+ </set>
+ <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='services/service/$tmp.ar.parent-service-instance-id/service-data' pfx='mdsal-psd' >
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="404" />
+ <parameter name="error-message" value="Error: SOTN resource not found" />
+ </return>
+ </outcome>
+ </get-resource>
+ <set>
+ <parameter name='tmp.found-in-ar' value='false' />
+ <parameter name='tmp.found-in-network' value='false' />
+ <parameter name='tmp.ep-available' value='false' />
+ </set>
+ <switch test='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`'>
+ <outcome value='2'>
+ <block atomic="true">
+ <for index='pidx' start='0' end='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`' >
+ <switch test="`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`">
+ <outcome value='true'>
+ <block></block>
+ </outcome>
+ <outcome value='false'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.pidx' value='`$pidx`' />
+ <parameter name='tmp.provided-ar.' value='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$pidx].`' />
+ <parameter name='tmp.found-in-ar' value='true' />
+ <parameter name='tmp.ep-available' value='true' />
+ </set>
+ <break></break>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ <switch test='`$tmp.found-in-ar`'>
+ <outcome value='true'>
+ <block atomic="true">
+ <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='connection-attachment-allotted-resources/connection-attachment-allotted-resource/$tmp.provided-ar.allotted-resource-id/' pfx='mdsal-other-ar' >
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="404" />
+ <parameter name="error-message" value="Error: SOTN provided attachment resource not found" />
+ </return>
+ </outcome>
+ </get-resource>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='1'>
+ <block atomic="true">
+ <switch test='`$mdsal-psd.networks.network_length`'>
+ <outcome value='1'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.network.' value='`$mdsal-psd.networks.network[0].`' />
+ </set>
+ <for index='nidx' start='0' end='`$tmp.network.network-data.network-request-input.network-input-parameters.param_length`' >
+ <block>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$nidx].name == 'access-node-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='tmp.found-in-network' value='true' />
+ <parameter name='tmp.ep-available' value='true' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'name'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.global.sotn.etht-svc-name' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ <parameter name='prop.global.sotn.bandwidth-profile-name' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'description'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.global.sotn.etht-svc-descr' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'tenantId'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.global.sotn.tenantId' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'vpnType'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.global.sotn.vpnType' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'CIR'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.sotn.cir' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'EIR'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.global.sotn.eir' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'color-aware'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.global.sotn.colorAware' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].name == 'coupling-flag'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.global.sotn.couplingFlag' value='`$tmp.network.network-data.network-request-input.network-input-parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <return status='success'>
+ <parameter name="ack-final-indicator" value="Y" />
+ <parameter name="error-code" value="200" />
+ <parameter name="error-message" value="`$error-message`" />
+ </return>
+ </block>
+ </for>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="404" />
+ <parameter name="error-message" value="Error: Incorrect state found more then 1 network" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="404" />
+ <parameter name="error-message" value="Error: SOTN resource not found" />
+ </return>
+ </outcome>
+ </switch>
+ <switch test='`$tmp.ep-available`'>
+ <outcome value='false'>
+ <block></block>
+ </outcome>
+ <outcome value='true'>
+ <block atomic="true">
+ <switch test='`$tmp.found-in-ar`'>
+ <outcome value='true'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.ep.parameters' value='`$mdsal-other-ar.allotted-resource-data.connection-attachment-topology.connection-attachment-parameters`' />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='false'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.ep.parameters' value='`$tmp.network.network-data.network-request-input.network-input-parameters`' />
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ <for index='idx' start='0' end='`$tmp.ep.parameters.param_length`' >
+ <block>
+ <switch test="`$tmp.ep.parameters.param[$idx].name == 'access-node-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.remote.connection-attachment.access-node-id' value='`$tmp.ep.parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.ep.parameters.param[$idx].name == 'access-ltp-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.remote.connection-attachment.access-ltp-id' value='`$tmp.ep.parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.ep.parameters.param[$idx].name == 'clientSignal'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.remote.connection-attachment.clientSignal' value='`$tmp.ep.parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.ep.parameters.param[$idx].name == 'cVLAN'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.remote.connection-attachment.cVLAN' value='`$tmp.ep.parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.ep.parameters.param[$idx].name == 'access-provider-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.remote.connection-attachment.access-provider-id' value='`$tmp.ep.parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.ep.parameters.param[$idx].name == 'access-client-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.remote.connection-attachment.access-client-id' value='`$tmp.ep.parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$tmp.ep.parameters.param[$idx].name == 'access-topology-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.remote.connection-attachment.access-topology-id' value='`$tmp.ep.parameters.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <return status='success'>
+ <parameter name="ack-final-indicator" value="Y" />
+ <parameter name="error-code" value="200" />
+ <parameter name="error-message" value="`$error-message`" />
+ </return>
+ </block>
+ </for>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/' + $prop.restapi.oof-getpath.templatefile`" />
+ <parameter name="restapiUrl" value="`$prop.restapi.connection-oof-url'`" />
+ <parameter name="restapiUser" value="`$prop.oof.user`" />
+ <parameter name="restapiPassword" value="`$prop.oof.password`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="post"/>
+ <parameter name="responsePrefix" value="oof"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStorePassword" value="adminadmin"/>
+ <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
+ <parameter name="keyStorePassword" value="adminadmin"/>
+ <parameter name='customHttpHeaders' value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error executing Create vpn rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ </execute>
+ <for index='vidx' start='0' end='`$oof.vpns_length`' >
+ <block atomic="true">
+ <set>
+ <parameter name='oof.vpn.' value='`$oof.vpns[$vidx].`' />
+ </set>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="pnf"
+ key="pnf.pnf-name = $oof.vpn.access-node-id AND
+ depth = '0'"
+ pfx='tmp.aai.pnf' local-only='false' >
+ <outcome value='success'>
+ <set>
+ <parameter name='tmp.thirdparty-sdnc-id' value="`$tmp.aai.pnf.relationship-list.relationship[0].relationship-data[0].relationship-value`" />
+ </set>
+ </outcome>
+ <outcome value='not-found'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
+ </return>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
+ </return>
+ </outcome>
+ </get-resource>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="esr-thirdparty-sdnc"
+ key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND
+ depth = '1'"
+ pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >
+ <outcome value='success'>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.url' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.user' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.password' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
+ </set>
+ </outcome>
+ <outcome value='not-found'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'An error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`" />
+ </return>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'Unexpected error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`" />
+ </return>
+ </outcome>
+ </get-resource>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/sotn-ethernet-service.json'`" />
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + 'restconf/data/ietf-eth-tran-service:etht-svc'`" />
+ <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />
+ <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="patch"/>
+ <parameter name="responsePrefix" value="vpn-result"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStorePassword" value="adminadmin"/>
+ <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
+ <parameter name="keyStorePassword" value="adminadmin"/>
+ <parameter name='customHttpHeaders' value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error executing Create vpn rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ </execute>
+ </block>
+ </for>
+ </block>
+ </block>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-status.action' value="`$connection-attachment-topology-operation-input.request-information.request-action` " />
+ <parameter name='connection-attachment-ar.allotted-resource-status.rpc-name' value="connection-attachment-topology-operation" />
+ <parameter name='connection-attachment-ar.allotted-resource-status.rpc-action' value="`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.' value="`$connection-attachment-topology-operation-input.request-information.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.' value="`$connection-attachment-topology-operation-input.sdnc-request-header.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.service-information.' value="`$connection-attachment-topology-operation-input.service-information.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.' value="`$connection-attachment-topology-operation-input.allotted-resource-information.` " />
+ </set>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-data.connection-attachment-topology.onap-model-information.' value="`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.` " />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setTime' >
+ <parameter name="outputPath" value="tmp.current-time" />
+ </execute>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status' value='Active' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-topology-operation-input.request-information.request-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-request-id`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.create-timestamp' value='`$tmp.current-time`' />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.sotn-attachment.templatefile`" />
+ <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url`' />
+ <parameter name='restapiUser' value='`$prop.controller.user`' />
+ <parameter name='restapiPassword' value='`$prop.controller.pwd`' />
+ <parameter name='format' value='json' />
+ <parameter name='httpMethod' value='PUT' />
+ <parameter name="responsePrefix" value="mdsal-ar" />
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error updating md-sal for connection-attachment-allotted-resource" />
+ </return>
+ </outcome>
+ <outcome value='not-found'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error updating md-sal for connection-attachment-allotted-resource" />
+ </return>
+ </outcome>
+ </execute>
+ <set>
+ <parameter name='allotted-resource-id' value='`$tmp.ar.allotted-resource-id`' />
+ <parameter name='connection-attachment-object-path' value="`$tmp.ar.self-link`"/>
+ <parameter name='service-object-path' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/'
+ + $connection-attachment-topology-operation-input.service-information.service-instance-id
+ + '/service-data/service-topology/'`"/>
+ </set>
+ <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="allotted-resource"
+ key="customer.global-customer-id = $connection-attachment-topology-operation-input.service-information.global-customer-id AND
+ service-subscription.service-type = $connection-attachment-topology-operation-input.service-information.subscription-service-type AND
+ service-instance.service-instance-id = $connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id AND
+ allotted-resource.id = $tmp.ar.allotted-resource-id"
+ pfx='pfx' local-only='false' force='false'>
+ <parameter name="description" value="`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type`" />
+ <parameter name="selflink" value="`$tmp.ar.self-link`" />
+ <parameter name="model-invariant-id" value="`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-invariant-uuid`" />
+ <parameter name="model-version-id" value="`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-uuid`" />
+ <parameter name="operational-status" value="Active" />
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="AAI failed" />
+ </return>
+ </outcome>
+ <outcome value='not-found'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="AAI failed" />
+ </return>
+ </outcome>
+ </update>
+ <return status='success'>
+ <parameter name="ack-final-indicator" value="Y" />
+ <parameter name="error-code" value="200" />
+ <parameter name="error-message" value="`$error-message`" />
+ </return>
+ </block>
+ </method>
+</service-logic>
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-create.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-create.xml new file mode 100644 index 00000000..50ab2493 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-create.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='sotn-attachment-topology-operation-create' mode='sync'>
+ <block atomic="true">
+ <switch test='`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`'>
+ <outcome value=''>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
+ <parameter name="ctx-destination" value="tmp.ar.allotted-resource-id"/>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='error-code' value='' />
+ <parameter name='error-message' value="An error occured while generation allotted resource ID" />
+ </return>
+ </outcome>
+ </execute>
+ </outcome>
+ <outcome value='Other'>
+ <set>
+ <parameter name='tmp.ar.allotted-resource-id' value='`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test='`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type`'>
+ <outcome value=''>
+ <set>
+ <parameter name='tmp.ar.allotted-resource-type' value="SOTNAttachmentInstance" />
+ </set>
+ </outcome>
+ <outcome value='Other'>
+ <set>
+ <parameter name='tmp.ar.allotted-resource-type' value='`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type`' />
+ </set>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name='tmp.ar.self-link' value="`'restconf/config/GENERIC-RESOURCE-API:connection-attachment-allotted-resources/connection-attachment-allotted-resource/'
+ + $tmp.ar.allotted-resource-id
+ + '/allotted-resource-data/connection-attachment-topology/'` " />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
+ <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />
+ <parameter name='contextPrefix' value='prop' />
+ </execute>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+ <parameter name="source" value="`$prop.restapi.connection-attachment-allottedresource`"/>
+ <parameter name="outputPath" value="tmp.ar-url"/>
+ <parameter name="target" value="{allotted-resource-id}"/>
+ <parameter name="replacement" value="`$tmp.ar.allotted-resource-id`"/>
+ </execute>
+ <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='connection-attachment-allotted-resources/connection-attachment-allotted-resource/$tmp.ar.allotted-resource-id/' pfx='mdsal-ar' >
+ <outcome value='success'>
+ <block atomic="true">
+ <switch test='`$mdsal-ar.connection-attachment-allotted-resource_length`'>
+ <outcome value='1'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error: Existing connection attachment allotted resource" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </get-resource>
+ <switch test='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`'>
+ <outcome value=''>
+ <set>
+ <parameter name='tmp.cidx' value="`0`" />
+ <parameter name='service-data.consumed-allotted-resources.consumed-allotted-resource_length' value="1" />
+ </set>
+ </outcome>
+ <outcome value='Other'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.found-cidx' value="`false`" />
+ </set>
+ <for index='cidx' start='0' end='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`' >
+ <switch test="`$service-data.consumed-allotted-resources.consumed-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`">
+ <outcome value='true'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error updating md-sal for connection-attachment-allotted-resource as cosumed allotted resource already exists." />
+ </return>
+ </outcome>
+ </switch>
+ </for>
+ <switch test='`$tmp.found-cidx`'>
+ <outcome value='false'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.cidx' value='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`' />
+ </set>
+ </block>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name='service-data.consumed-allotted-resources.consumed-allotted-resource[$tmp.cidx].allotted-resource-id' value="`$tmp.ar.allotted-resource-id` " />
+ <parameter name='service-data.consumed-allotted-resources.consumed-allotted-resource[$tmp.cidx].allotted-resource-type' value="`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type` " />
+ <parameter name='service-data.consumed-allotted-resources.consumed-allotted-resource[$tmp.cidx].allotted-resource-pointer' value="`$tmp.ar.self-link` " />
+ <parameter name='service-data.consumed-allotted-resources.consumed-allotted-resource_length' value='`$tmp.cidx + 1`' />
+ </set>
+ <set>
+ <parameter name='tmp.ar.parent-service-instance-id' value="`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` " />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+ <parameter name="source" value="`$prop.restapi.parent-provided-resource`"/>
+ <parameter name="outputPath" value="tmp.parent-ar-url"/>
+ <parameter name="target" value="{service-instance-id}"/>
+ <parameter name="replacement" value="`$tmp.ar.parent-service-instance-id`"/>
+ </execute>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+ <parameter name="source" value="`$tmp.parent-ar-url`"/>
+ <parameter name="outputPath" value="tmp.parent-ar-url"/>
+ <parameter name="target" value="{allotted-resource-id}"/>
+ <parameter name="replacement" value="`$tmp.ar.allotted-resource-id`"/>
+ </execute>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.parentsvc.templatefile`" />
+ <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.parent-ar-url`' />
+ <parameter name='restapiUser' value='`$prop.controller.user`' />
+ <parameter name='restapiPassword' value='`$prop.controller.pwd`' />
+ <parameter name='format' value='json' />
+ <parameter name='httpMethod' value='PUT' />
+ <parameter name="responsePrefix" value="parent" />
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error updating md-sal for connection-attachment-allotted-resource" />
+ </return>
+ </outcome>
+ <outcome value='not-found'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error updating md-sal for connection-attachment-allotted-resource" />
+ </return>
+ </outcome>
+ </execute>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-id' value="`$tmp.ar.allotted-resource-id` " />
+ <parameter name='connection-attachment-ar.allotted-resource-status.action' value="`$connection-attachment-topology-operation-input.request-information.request-action` " />
+ <parameter name='connection-attachment-ar.allotted-resource-status.rpc-name' value="connection-attachment-topology-operation" />
+ <parameter name='connection-attachment-ar.allotted-resource-status.rpc-action' value="`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.' value="`$connection-attachment-topology-operation-input.request-information.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.' value="`$connection-attachment-topology-operation-input.sdnc-request-header.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.service-information.' value="`$connection-attachment-topology-operation-input.service-information.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.' value="`$connection-attachment-topology-operation-input.allotted-resource-information.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.' value="`$connection-attachment-topology-operation-input.connection-attachment-request-input.` " />
+ </set>
+ <set>
+ <parameter name='connection-attachment-ar-identifiers.consuming-service-instance-id' value="`$connection-attachment-topology-operation-input.service-information.service-instance-id` " />
+ <parameter name='connection-attachment-ar-identifiers.parent-service-instance-id' value="`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` " />
+ <parameter name='connection-attachment-ar-identifiers.allotted-resource-type' value="`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type` " />
+ <parameter name='connection-attachment-ar-identifiers.allotted-resource-id' value="`$tmp.ar.allotted-resource-id` " />
+ </set>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-data.connection-attachment-topology.allotted-resource-identifiers.'
+ value="`$connection-attachment-ar-identifiers.`" />
+ </set>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-data.connection-attachment-topology.onap-model-information.' value="`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.` " />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setTime' >
+ <parameter name="outputPath" value="tmp.current-time" />
+ </execute>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status' value='Created' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-topology-operation-input.request-information.request-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-request-id`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.create-timestamp' value='`$tmp.current-time`' />
+ </set>
+ <call module='GENERIC-RESOURCE-API' rpc='connection-attachment-get-request-input-param' mode='sync' ></call>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.sotn-attachment.templatefile`" />
+ <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url`' />
+ <parameter name='restapiUser' value='`$prop.controller.user`' />
+ <parameter name='restapiPassword' value='`$prop.controller.pwd`' />
+ <parameter name='format' value='json' />
+ <parameter name='httpMethod' value='PUT' />
+ <parameter name="responsePrefix" value="mdsal-ar" />
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error updating md-sal for connection-attachment-allotted-resource" />
+ </return>
+ </outcome>
+ <outcome value='not-found'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error updating md-sal for connection-attachment-allotted-resource" />
+ </return>
+ </outcome>
+ </execute>
+ <set>
+ <parameter name='allotted-resource-id' value='`$tmp.ar.allotted-resource-id`' />
+ <parameter name='connection-attachment-object-path' value="`$tmp.ar.self-link`"/>
+ <parameter name='service-object-path' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/'
+ + $connection-attachment-topology-operation-input.service-information.service-instance-id
+ + '/service-data/service-topology/'`"/>
+ </set>
+ <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="allotted-resource"
+ key="customer.global-customer-id = $connection-attachment-topology-operation-input.service-information.global-customer-id AND
+ service-subscription.service-type = $connection-attachment-topology-operation-input.service-information.subscription-service-type AND
+ service-instance.service-instance-id = $connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id AND
+ allotted-resource.id = $tmp.ar.allotted-resource-id"
+ pfx='pfx' local-only='false' force='false'>
+ <parameter name="description" value="`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type`" />
+ <parameter name="selflink" value="`$tmp.ar.self-link`" />
+ <parameter name="model-invariant-id" value="`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-invariant-uuid`" />
+ <parameter name="model-version-id" value="`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-uuid`" />
+ <parameter name="operational-status" value="Created" />
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="AAI failed" />
+ </return>
+ </outcome>
+ <outcome value='not-found'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="AAI failed" />
+ </return>
+ </outcome>
+ </update>
+ <return status='success'>
+ <parameter name="ack-final-indicator" value="Y" />
+ <parameter name="error-code" value="200" />
+ <parameter name="error-message" value="`$error-message`" />
+ </return>
+ </block>
+ </method>
+</service-logic>
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.xml new file mode 100644 index 00000000..5df10857 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.xml @@ -0,0 +1,338 @@ +<service-logic
+ xmlns='http://www.onap.org/sdnc/svclogic'
+ xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>
+ <method rpc='sotn-attachment-topology-operation-deactivate' mode='sync'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.ar.allotted-resource-id' value='`connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`' />
+ <parameter name='tmp.ar.parent-service-instance-id' value='`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id`' />
+ </set>
+ <set>
+ <parameter name='tmp.ar.self-link' value="`'restconf/config/GENERIC-RESOURCE-API:connection-attachment-allotted-resources/connection-attachment-allotted-resource/'
+ + $tmp.ar.allotted-resource-id
+ + '/allotted-resource-data/connection-attachment-topology/'` " />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
+ <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />
+ <parameter name='contextPrefix' value='prop' />
+ </execute>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+ <parameter name="source" value="`$prop.restapi.connection-attachment-allottedresource`"/>
+ <parameter name="outputPath" value="tmp.ar-url"/>
+ <parameter name="target" value="{allotted-resource-id}"/>
+ <parameter name="replacement" value="`$tmp.ar.allotted-resource-id`"/>
+ </execute>
+ <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='connection-attachment-allotted-resources/connection-attachment-allotted-resource/$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id/' pfx='mdsal-ar' >
+ <outcome value='success'>
+ <block atomic="true">
+ <switch test='`$mdsal-ar.connection-attachment-allotted-resource_length`'>
+ <outcome value='1'>
+ <block atomic='true'>
+ <set>
+ <parameter name='connection-attachment-ar.' value='$mdsal-ar.connection-attachment-allotted-resource[0].' />
+ </set>
+ <switch test='`$connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status`'>
+ <outcome value='Active'>
+ <block></block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message"
+ value="`'Existing connection-attachment-allotted-resource with order status of ' + $connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status + '.'`" />
+ </return>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.request-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-ar.allotted-resource-status.rpc-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.svc-request-id`' />
+ </set>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="404" />
+ <parameter name="error-message" value="Error: SOTN resource not found" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <block atomic="true">
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="404" />
+ <parameter name="error-message" value="Error: SOTN resource not found" />
+ </return>
+ </block>
+ </outcome>
+ </get-resource>
+ <block atomic="true">
+ <call module='GENERIC-RESOURCE-API' rpc='connection-attachment-get-request-input-param' mode='sync' ></call>
+ </block>
+ <set>
+ <parameter name='tmp.ar.parent-service-instance-id' value="`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` " />
+ </set>
+ <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='services/service/$tmp.ar.parent-service-instance-id/service-data' pfx='mdsal-psd' >
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="404" />
+ <parameter name="error-message" value="Error: SOTN resource not found" />
+ </return>
+ </outcome>
+ </get-resource>
+ <set>
+ <parameter name='tmp.found-in-ar' value='false' />
+ <parameter name='tmp.found-in-network' value='false' />
+ <parameter name='tmp.ep-available' value='false' />
+ </set>
+ <switch test='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`'>
+ <outcome value='2'>
+ <block atomic="true">
+ <for index='pidx' start='0' end='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`' >
+ <switch test="`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`">
+ <outcome value='true'>
+ <block></block>
+ </outcome>
+ <outcome value='false'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.pidx' value='`$pidx`' />
+ <parameter name='tmp.provided-ar.' value='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$pidx].`' />
+ <parameter name='tmp.found-in-ar' value='true' />
+ <parameter name='tmp.ep-available' value='true' />
+ </set>
+ <break></break>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ </block>
+ </outcome>
+ <outcome value='1'>
+ <block atomic="true">
+ <switch test='`$mdsal-psd.networks.network_length`'>
+ <outcome value='1'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.network.' value='`$mdsal-psd.networks.network[0].`' />
+ </set>
+ <for index='nidx' start='0' end='`$tmp.network.network-data.network-request-input.network-input-parameters.param_length`' >
+ <block>
+ <switch test="`$tmp.network.network-data.network-request-input.network-input-parameters.param[$nidx].name == 'access-node-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='tmp.found-in-network' value='true' />
+ <parameter name='tmp.ep-available' value='true' />
+ </set>
+ </outcome>
+ </switch>
+ <return status='success'>
+ <parameter name="ack-final-indicator" value="Y" />
+ <parameter name="error-code" value="200" />
+ <parameter name="error-message" value="`$error-message`" />
+ </return>
+ </block>
+ </for>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="404" />
+ <parameter name="error-message" value="Error: Incorrect state found more then 1 network" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="404" />
+ <parameter name="error-message" value="Error: SOTN resource not found" />
+ </return>
+ </outcome>
+ </switch>
+ <switch test='`$tmp.ep-available`'>
+ <outcome value='false'>
+ <block></block>
+ </outcome>
+ <outcome value='true'>
+ <block atomic="true">
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="pnf"
+ key="pnf.pnf-name = $prop.connection-attachement.access-node-id AND
+ depth = '0'"
+ pfx='tmp.aai.pnf' local-only='false' >
+ <outcome value='success'>
+ <set>
+ <parameter name='tmp.thirdparty-sdnc-id' value="`$tmp.aai.pnf.relationship-list.relationship[0].relationship-data[0].relationship-value`" />
+ </set>
+ </outcome>
+ <outcome value='not-found'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'An error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
+ </return>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'Unexpected error occurred while querying pnf from AnAI with pnf-name = ' + $prop.connection-attachement.access-node-id`" />
+ </return>
+ </outcome>
+ </get-resource>
+ <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="esr-thirdparty-sdnc"
+ key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.thirdparty-sdnc-id AND
+ depth = '1'"
+ pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >
+ <outcome value='success'>
+ <set>
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.url' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.user' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />
+ <parameter name='prop.sdncRestApi.thirdpartySdnc.password' value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />
+ </set>
+ </outcome>
+ <outcome value='not-found'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'An error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`" />
+ </return>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'Unexpected error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`" />
+ </return>
+ </outcome>
+ </get-resource>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + 'restconf/data/ietf-eth-tran-service:etht-svc/etht-svc-instances=' + $prop.connection-attachment.sotnVpnName`" />
+ <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />
+ <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />
+ <parameter name="format" value="json"/>
+ <parameter name="httpMethod" value="delete"/>
+ <parameter name="responsePrefix" value="vpn-result"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStorePassword" value="adminadmin"/>
+ <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
+ <parameter name="keyStorePassword" value="adminadmin"/>
+ <parameter name='customHttpHeaders' value="`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`" />
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error executing Create vpn rest api" />
+ </return>
+ </outcome>
+ <outcome value='success'>
+ <block atomic="true"></block>
+ </outcome>
+ </execute>
+ </block>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-status.action' value="`$connection-attachment-topology-operation-input.request-information.request-action` " />
+ <parameter name='connection-attachment-ar.allotted-resource-status.rpc-name' value="connection-attachment-topology-operation" />
+ <parameter name='connection-attachment-ar.allotted-resource-status.rpc-action' value="`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.' value="`$connection-attachment-topology-operation-input.request-information.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.' value="`$connection-attachment-topology-operation-input.sdnc-request-header.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.service-information.' value="`$connection-attachment-topology-operation-input.service-information.` " />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.' value="`$connection-attachment-topology-operation-input.allotted-resource-information.` " />
+ </set>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-data.connection-attachment-topology.onap-model-information.' value="`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.` " />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setTime' >
+ <parameter name="outputPath" value="tmp.current-time" />
+ </execute>
+ <set>
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status' value='PendingDelete' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action' value='`$connection-attachment-topology-operation-input.request-information.request-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id' value='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-request-id`' />
+ <parameter name='connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.create-timestamp' value='`$tmp.current-time`' />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.sotn-attachment.templatefile`" />
+ <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url`' />
+ <parameter name='restapiUser' value='`$prop.controller.user`' />
+ <parameter name='restapiPassword' value='`$prop.controller.pwd`' />
+ <parameter name='format' value='json' />
+ <parameter name='httpMethod' value='PUT' />
+ <parameter name="responsePrefix" value="mdsal-ar" />
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error updating md-sal for connection-attachment-allotted-resource" />
+ </return>
+ </outcome>
+ <outcome value='not-found'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error updating md-sal for connection-attachment-allotted-resource" />
+ </return>
+ </outcome>
+ </execute>
+ <set>
+ <parameter name='allotted-resource-id' value='`$tmp.ar.allotted-resource-id`' />
+ <parameter name='connection-attachment-object-path' value="`$tmp.ar.self-link`"/>
+ <parameter name='service-object-path' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/'
+ + $connection-attachment-topology-operation-input.service-information.service-instance-id
+ + '/service-data/service-topology/'`"/>
+ </set>
+ <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
+ resource="allotted-resource"
+ key="customer.global-customer-id = $connection-attachment-topology-operation-input.service-information.global-customer-id AND
+ service-subscription.service-type = $connection-attachment-topology-operation-input.service-information.subscription-service-type AND
+ service-instance.service-instance-id = $connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id AND
+ allotted-resource.id = $tmp.ar.allotted-resource-id"
+ pfx='pfx' local-only='false' force='false'>
+ <parameter name="description" value="`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-type`" />
+ <parameter name="selflink" value="`$tmp.ar.self-link`" />
+ <parameter name="model-invariant-id" value="`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-invariant-uuid`" />
+ <parameter name="model-version-id" value="`$connection-attachment-topology-operation-input.allotted-resource-information.onap-model-information.model-uuid`" />
+ <parameter name="operational-status" value="PendingDelete" />
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="AAI failed" />
+ </return>
+ </outcome>
+ <outcome value='not-found'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="AAI failed" />
+ </return>
+ </outcome>
+ </update>
+ <return status='success'>
+ <parameter name="ack-final-indicator" value="Y" />
+ <parameter name="error-code" value="200" />
+ <parameter name="error-message" value="`$error-message`" />
+ </return>
+ </block>
+ </method>
+</service-logic>
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-delete.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-delete.xml new file mode 100644 index 00000000..1dd02a90 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-delete.xml @@ -0,0 +1,175 @@ +<service-logic
+ xmlns='http://www.onap.org/sdnc/svclogic'
+ xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>
+ <method rpc='sotn-attachment-topology-operation-delete' mode='sync'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.ar.allotted-resource-id' value='`connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`' />
+ <parameter name='tmp.ar.parent-service-instance-id' value='`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id`' />
+ </set>
+ <set>
+ <parameter name='tmp.ar.self-link' value="`'restconf/config/GENERIC-RESOURCE-API:connection-attachment-allotted-resources/connection-attachment-allotted-resource/'
+ + $tmp.ar.allotted-resource-id
+ + '/allotted-resource-data/connection-attachment-topology/'` " />
+ </set>
+ <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
+ <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />
+ <parameter name='contextPrefix' value='prop' />
+ </execute>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+ <parameter name="source" value="`$prop.restapi.connection-attachment-allottedresource`"/>
+ <parameter name="outputPath" value="tmp.ar-url"/>
+ <parameter name="target" value="{allotted-resource-id}"/>
+ <parameter name="replacement" value="`$tmp.ar.allotted-resource-id`"/>
+ </execute>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url`' />
+ <parameter name='restapiUser' value='`$prop.controller.user`' />
+ <parameter name='restapiPassword' value='`$prop.controller.pwd`' />
+ <parameter name='format' value='json' />
+ <parameter name='httpMethod' value='Delete' />
+ <parameter name="responsePrefix" value="mdsal-ar" />
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error updating md-sal for connection-attachment-allotted-resource" />
+ </return>
+ </outcome>
+ <outcome value='not-found'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Error updating md-sal for connection-attachment-allotted-resource" />
+ </return>
+ </outcome>
+ </execute>
+ <switch test='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`'>
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Resource to be deleted doesn't exist in MDSAL." />
+ </return>
+ </outcome>
+ <outcome value='Other'>
+ <block atomic="true">
+ <for index='cidx' start='0' end='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`' >
+ <switch test="`$service-data.consumed-allotted-resources.consumed-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`">
+ <outcome value='true'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.cidx' value='`$cidx`' />
+ </set>
+ <break></break>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ <switch test="`$tmp.cidx`">
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="resource to be deleted is not available in mdsal" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name="service-data.consumed-allotted-resources.consumed-allotted-resource[$cidx]." value="" />
+ <parameter name='service-data.consumed-allotted-resources.consumed-allotted-resource_length' value='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length - 1`' />
+ </set>
+ <set>
+ <parameter name='tmp.ar.parent-service-instance-id' value="`$connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id` " />
+ </set>
+ <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.mdsal.ConfigResource' resource='GENERIC-RESOURCE-API' key='services/service/$tmp.ar.parent-service-instance-id/service-data' pfx='mdsal-psd' >
+ <outcome value='success'>
+ <block></block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="404" />
+ <parameter name="error-message" value="Error: SOTN resource not found" />
+ </return>
+ </outcome>
+ </get-resource>
+ <switch test='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`'>
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="Resource to be deleted doesn't exist in MDSAL." />
+ </return>
+ </outcome>
+ <outcome value='Other'>
+ <block atomic="true">
+ <for index='pidx' start='0' end='`$mdsal-psd.provided-allotted-resources.provided-allotted-resource_length`' >
+ <switch test="`$mdsal-psd.provided-allotted-resources.provided-allotted-resource[$cidx].allotted-resource-id == $tmp.ar.allotted-resource-id`">
+ <outcome value='true'>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.pidx' value='`$pidx`' />
+ </set>
+ <break></break>
+ </block>
+ </outcome>
+ </switch>
+ </for>
+ <switch test="`$tmp.pidx`">
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="resource to be deleted is not available in mdsal" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ </switch>
+ <set>
+ <parameter name="service-data.provided-allotted-resources.consumed-allotted-resource[$pidx]." value="" />
+ <parameter name='service-data.provided-allotted-resources.consumed-allotted-resource_length' value='`$service-data.provided-allotted-resources.consumed-allotted-resource_length - 1`' />
+ </set>
+ <set>
+ <parameter name='allotted-resource-id' value='`$tmp.ar.allotted-resource-id`' />
+ <parameter name='connection-attachment-object-path' value="`$tmp.ar.self-link`"/>
+ <parameter name='service-object-path' value="`'restconf/config/GENERIC-RESOURCE-API:services/service/'
+ + $connection-attachment-topology-operation-input.service-information.service-instance-id
+ + '/service-data/service-topology/'`"/>
+ </set>
+ <delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource='allotted-resource'
+ key="customer.global-customer-id = $connection-attachment-topology-operation-input.service-information.global-customer-id AND
+ service-subscription.service-type = $connection-attachment-topology-operation-input.service-information.subscription-service-type AND
+ service-instance.service-instance-id = $connection-attachment-topology-operation-input.allotted-resource-information.parent-service-instance-id AND
+ allotted-resource.id = $tmp.ar.allotted-resource-id">
+ <outcome value='failure'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="AAI failed" />
+ </return>
+ </outcome>
+ <outcome value='not-found'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="AAI failed" />
+ </return>
+ </outcome>
+ </delete>
+ <return status='success'>
+ <parameter name="ack-final-indicator" value="Y" />
+ <parameter name="error-code" value="200" />
+ <parameter name="error-message" value="`$error-message`" />
+ </return>
+ </block>
+ </method>
+</service-logic>
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-get-saved-ar-param.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-get-saved-ar-param.xml new file mode 100644 index 00000000..0aa82b73 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-get-saved-ar-param.xml @@ -0,0 +1,73 @@ +<service-logic
+ xmlns='http://www.onap.org/sdnc/svclogic'
+ xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>
+ <method rpc='sotn-get-saved-ar-param' mode='sync'>
+ <block atomic="true">
+ <for index='idx' start='0' end='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param_length`' >
+ <block>
+ <switch test="`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'sotnVpnName'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.connection-attachment.sotnVpnName' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'access-provider-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.connection-attachment.access-provider-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'access-client-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.connection-attachment.access-client-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'access-topology-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.connection-attachment.access-topology-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'access-node-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.connection-attachment.access-node-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'access-ltp-id'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.connection-attachment.access-ltp-id' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'clientSignal'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.connection-attachment.clientSignal' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <switch test="`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].name == 'cVLAN'`">
+ <outcome value='true'>
+ <set>
+ <parameter name='prop.connection-attachment.cVLAN' value='`$connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$idx].value`' />
+ </set>
+ </outcome>
+ </switch>
+ <return status='success'>
+ <parameter name="ack-final-indicator" value="Y" />
+ <parameter name="error-code" value="200" />
+ <parameter name="error-message" value="`$error-message`" />
+ </return>
+ </block>
+ </for>
+ </block>
+ </method>
+</service-logic>
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_validate-connection-attachment-input.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_validate-connection-attachment-input.xml new file mode 100644 index 00000000..98762e99 --- /dev/null +++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_validate-connection-attachment-input.xml @@ -0,0 +1,236 @@ +<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='validate-connection-attachment-input' mode='sync'>
+ <block atomic="true">
+ <switch test='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`'>
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="sdnc-request-header.svc-request-id is a required input" />
+ </return>
+ </outcome>
+ </switch>
+ <switch test='`$connection-attachment-topology-operation-input.service-information.service-instance-id`'>
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="service-information.service-instance-id is a required input" />
+ </return>
+ </outcome>
+ </switch>
+ <switch test='`$connection-attachment-topology-operation-input.service-information.parent-service-instance-id`'>
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="service-information.parent-service-instance-id is a required input" />
+ </return>
+ </outcome>
+ </switch>
+ <switch test='`$connection-attachment-topology-operation-input.sdnc-request-header.svc-action`'>
+ <outcome value='create'>
+ <block atomic="true">
+ <switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>
+ <outcome value='CreateSOTNAttachmentInstance'>
+ <block atomic="true">
+ <for index="i" start="0" end="`$connection-attachment-topology-operation-input.connection-attachment-request-input.param_length`">
+ <block>
+ <set>
+ <parameter name='tmp.name' value='' />
+ <parameter name='tmp.value' value='' />
+ </set>
+ <set>
+ <parameter name='tmp.name' value="`$connection-attachment-topology-operation-input.connection-attachment-request-input.param[$i].name`"/>
+ <parameter name='tmp.value' value="`$connection-attachment-topology-operation-input.connection-attachment-request-input.param[$i].value`"/>
+ </set>
+ <switch test="`$tmp.name`">
+ <outcome value='sotnVpnName'>
+ <switch test="`$tmp.value`">
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'$tmp.name +' is a required input'`" />
+ </return>
+ </outcome>
+ </switch>
+ </outcome>
+ <outcome value='clientSignal'>
+ <switch test="`$tmp.value`">
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'$tmp.name +' is a required input'`" />
+ </return>
+ </outcome>
+ </switch>
+ </outcome>
+ <outcome value='access-provider-id'>
+ <switch test="`$tmp.value`">
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'$tmp.name +' is a required input'`" />
+ </return>
+ </outcome>
+ </switch>
+ </outcome>
+ <outcome value='access-client-id'>
+ <switch test="`$tmp.value`">
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'$tmp.name +' is a required input'`" />
+ </return>
+ </outcome>
+ </switch>
+ </outcome>
+ <outcome value='access-topology-id'></outcome>
+ <outcome value='access-node-id'>
+ <switch test="`$tmp.value`">
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'$tmp.name +' is a required input'`" />
+ </return>
+ </outcome>
+ </switch>
+ </outcome>
+ <outcome value='cVLAN'>
+ <switch test="`$tmp.value`">
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'$tmp.name +' is a required input'`" />
+ </return>
+ </outcome>
+ </switch>
+ </outcome>
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`'network-topology-operation-input.network-request-input.network-input-parameters.param[' + $i + ']' + '.name is a required input'`" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </for>
+ </block>
+ </outcome>
+ <outcome value='other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="sdnc-request-header.request-action is invalid" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='activate'>
+ <block atomic="true">
+ <switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>
+ <outcome value='ActivateSOTNAttachmentInstance'>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='requiredParameters' >
+ <parameter name="connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id" value="$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id"/>
+ </execute>
+ <switch test='`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`'>
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="sdnc-request-header.request-action is invalid" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='deactivate'>
+ <block atomic="true">
+ <switch test='`$sotn-topology-operation-input.request-information.request-action`'>
+ <outcome value='DeactivateSOTNAttachmentInstance'>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='requiredParameters' >
+ <parameter name="connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id" value="$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id"/>
+ </execute>
+ <switch test='`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`'>
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="request-information.request-action is required to be DeleteNetworkInstance for svc-action=delete" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='delete'>
+ <block atomic="true">
+ <switch test='`$sotn-topology-operation-input.request-information.request-action`'>
+ <outcome value='DeleteSOTNAttachmentInstance'>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='requiredParameters' >
+ <parameter name="connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id" value="$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id"/>
+ </execute>
+ <switch test='`$connection-attachment-topology-operation-input.allotted-resource-information.allotted-resource-id`'>
+ <outcome value=''>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="request-information.request-action is required to be DeleteNetworkInstance for svc-action=delete" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </outcome>
+ <outcome value='Other'>
+ <return status='failure'>
+ <parameter name='ack-final' value='Y'/>
+ <parameter name="error-code" value="500" />
+ <parameter name="error-message" value="`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" />
+ </return>
+ </outcome>
+ </switch>
+ </block>
+ </method>
+</service-logic>
\ No newline at end of file diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_validate-vnf-input.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_validate-vnf-input.xml index c9515f24..744ab373 100755..100644 --- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_validate-vnf-input.xml +++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_validate-vnf-input.xml @@ -1,44 +1,77 @@ -<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='validate-vnf-input' mode='sync'>
-<block atomic="true"><switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-action`'>
-<outcome value=''><return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="sdnc-request-header.svc-action is a required input" />
-</return></outcome></switch><switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-request-id`'>
-<outcome value=''><return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="sdnc-request-header.svc-request-id is a required input" />
-</return></outcome></switch><switch test='`$vnf-topology-operation-input.request-information.request-action`'>
-<outcome value=''><return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="request-information.request-action is a required input" />
-</return></outcome></switch><switch test='`$vnf-topology-operation-input.service-information.service-instance-id`'>
-<outcome value=''><return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="service-information.service-instance-id is a required input" />
-</return></outcome></switch><switch test='`$vnf-topology-operation-input.vnf-information.vnf-id`'>
-<outcome value=''><return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="vnf-information.vnf-id is a required input" />
-</return></outcome></switch><switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-action`'>
-<outcome value='assign'>
-<block atomic="true"><switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`'>
-<outcome value=''><return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="vnf-information.onap-model-information.model-customization-uuid is a required input" />
-</return></outcome></switch><switch test='`$vnf-topology-operation-input.vnf-request-input.tenant`'>
-<outcome value=''><return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="vnf-information.vnf-request-input.tenant is a required input" />
-</return></outcome></switch><switch test='`$vnf-topology-operation-input.vnf-request-input.aic-cloud-region`'>
-<outcome value=''><return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="vnf-request-input.aic-cloud-region is a required input" />
-</return></outcome></switch></block></outcome></switch></block></method></service-logic> +<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='validate-vnf-input' mode='sync'> + <block atomic="true"> + <switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-action`'> + <outcome value=''> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="sdnc-request-header.svc-action is a required input" /> + </return> + </outcome> + </switch> + <switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-request-id`'> + <outcome value=''> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="sdnc-request-header.svc-request-id is a required input" /> + </return> + </outcome> + </switch> + <switch test='`$vnf-topology-operation-input.request-information.request-action`'> + <outcome value=''> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="request-information.request-action is a required input" /> + </return> + </outcome> + </switch> + <switch test='`$vnf-topology-operation-input.service-information.service-instance-id`'> + <outcome value=''> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="service-information.service-instance-id is a required input" /> + </return> + </outcome> + </switch> + <switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-action`'> + <outcome value='assign'> + <block atomic="true"> + <switch test='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`'> + <outcome value=''> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="vnf-information.onap-model-information.model-customization-uuid is a required input" /> + </return> + </outcome> + </switch> + <switch test='`$vnf-topology-operation-input.vnf-request-input.tenant`'> + <outcome value=''> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="vnf-information.vnf-request-input.tenant is a required input" /> + </return> + </outcome> + </switch> + <switch test='`$vnf-topology-operation-input.vnf-request-input.aic-cloud-region`'> + <outcome value=''> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="vnf-request-input.aic-cloud-region is a required input" /> + </return> + </outcome> + </switch> + </block> + </outcome> + </switch> + </block> + </method> +</service-logic> diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_vnf-topology-operation.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_vnf-topology-operation.xml index 9f4ee0e6..669ed75d 100755..100644 --- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_vnf-topology-operation.xml +++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_vnf-topology-operation.xml @@ -1,21 +1,77 @@ -<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='vnf-topology-operation' mode='sync'>
-<block atomic="true"><call module='GENERIC-RESOURCE-API' rpc='validate-vnf-input' mode='sync' >
-</call><switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-action`'>
-<outcome value='assign'>
-<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-assign' mode='sync' >
-</call></outcome><outcome value='activate'>
-<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-activate' mode='sync' >
-</call></outcome><outcome value='deactivate'>
-<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-deactivate' mode='sync' >
-</call></outcome><outcome value='unassign'>
-<call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-unassign' mode='sync' >
-</call></outcome><outcome value='Other'>
-<return status='failure'>
- <parameter name='ack-final' value='Y'/>
- <parameter name="error-code" value="500" />
- <parameter name="error-message" value="`$vnf-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" />
-</return></outcome></switch><return status='success'>
-<parameter name="ack-final-indicator" value="Y" />
-<parameter name="error-code" value="200" />
-<parameter name="error-message" value="`$error-message`" />
-</return></block></method></service-logic> +<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='vnf-topology-operation' mode='sync'> + <block atomic="true"> + <call module='GENERIC-RESOURCE-API' rpc='validate-vnf-input' mode='sync' ></call> + <switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-action`'> + <outcome value='assign'> + <call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-assign' mode='sync' ></call> + </outcome> + <outcome value='activate'> + <block atomic="true"> + <switch test='`$vnf-topology-operation-input.request-information.request-action`'> + <outcome value='ActivateSiteInstance'> + <call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-activate' mode='sync' ></call> + </outcome> + <outcome value='Other'> + <call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-activate' mode='sync' ></call> + </outcome> + </switch> + </block> + </outcome> + <outcome value='deactivate'> + <block atomic="true"> + <switch test='`$vnf-topology-operation-input.request-information.request-action`'> + <outcome value='DeActivateSiteInstance'> + <call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-deactivate' mode='sync' ></call> + </outcome> + <outcome value='Other'> + <call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-deactivate' mode='sync' ></call> + </outcome> + </switch> + </block> + </outcome> + <outcome value='unassign'> + <call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-unassign' mode='sync' ></call> + </outcome> + <outcome value='create'> + <block atomic="true"> + <switch test='`$vnf-topology-operation-input.request-information.request-action`'> + <outcome value='CreateSiteInstance'> + <call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-create' mode='sync' ></call> + </outcome> + <outcome value='Other'> + <block></block> + </outcome> + </switch> + </block> + </outcome> + <outcome value='delete'> + <block atomic="true"> + <switch test='`$vnf-topology-operation-input.request-information.request-action`'> + <outcome value='DeleteSiteInstance'> + <call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-delete' mode='sync' ></call> + </outcome> + <outcome value='Other'> + <block></block> + </outcome> + </switch> + </block> + </outcome> + <outcome value='Other'> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="`$vnf-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" /> + </return> + </outcome> + </switch> + <return status='success'> + <parameter name="ack-final-indicator" value="Y" /> + <parameter name="error-code" value="200" /> + <parameter name="error-message" value="`$error-message`" /> + </return> + </block> + </method> +</service-logic> diff --git a/platform-logic/restapi-templates/src/main/json/oof-getpath.json b/platform-logic/restapi-templates/src/main/json/oof-getpath.json new file mode 100644 index 00000000..f407f64b --- /dev/null +++ b/platform-logic/restapi-templates/src/main/json/oof-getpath.json @@ -0,0 +1,36 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP - CCSDK + * ================================================================================ + * Copyright (C) 2018 Huawei Technologies Co., Ltd. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + */ + +{ + "srcPort": { + "src-access-topology-id": ${prop.connection-attachment.access-topology-id}, + "src-access-client-id": ${prop.connection-attachment.access-client-id}, + "src-access-provider-id": ${prop.connection-attachment.access-provider-id}, + "src-access-node-id": ${prop.connection-attachment.access-node-id}, + "src-access-ltp-id": ${prop.connection-attachment.access-ltp-id} + }, + "dstPort": { + "dst-access-topology-id": ${prop.remote.connection-attachment.access-topology-id}, + "dst-access-client-id": ${prop.remote.connection-attachment.access-client-id}, + "dst-access-provider-id": ${prop.remote.connection-attachment.access-provider-id}, + "dst-access-node-id": ${prop.remote.connection-attachment.access-node-id}, + "dst-access-ltp-id": ${prop.remote.connection-attachment.access-ltp-id} + } +} diff --git a/platform-logic/restapi-templates/src/main/json/sotn-attachment-allotted-resource.json b/platform-logic/restapi-templates/src/main/json/sotn-attachment-allotted-resource.json new file mode 100644 index 00000000..59ff8a41 --- /dev/null +++ b/platform-logic/restapi-templates/src/main/json/sotn-attachment-allotted-resource.json @@ -0,0 +1,153 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP - CCSDK + * ================================================================================ + * Copyright (C) 2018 Huawei Technologies Co., Ltd. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + */ + +{ + "connection-attachment-allotted-resource": [{ + "allotted-resource-id": ${connection-attachment-ar.allotted-resource-id}, + "allotted-resource-data": { + "connection-attachment-topology": { + "allotted-resource-identifiers": { + "consuming-service-instance-id": ${connection-attachment-ar.allotted-resource-data.connection-attachment-topology.allotted-resource-identifiers.consuming-service-instance-id}, + "allotted-resource-name": ${connection-attachment-ar.allotted-resource-data.connection-attachment-topology.allotted-resource-identifiers.allotted-resource-name}, + "allotted-resource-id": ${connection-attachment-ar.allotted-resource-data.connection-attachment-topology.allotted-resource-identifiers.allotted-resource-id}, + "parent-service-instance-id": ${connection-attachment-ar.allotted-resource-data.connection-attachment-topology.allotted-resource-identifiers.parent-service-instance-id}, + "allotted-resource-type": ${connection-attachment-ar.allotted-resource-data.connection-attachment-topology.allotted-resource-identifiers.allotted-resource-type} + }, + "onap-model-information": { + "model-invariant-uuid": ${connection-attachment-ar.allotted-resource-data.connection-attachment-topology.onap-model-information.model-invariant-uuid}, + "model-customization-uuid": ${connection-attachment-ar.allotted-resource-data.connection-attachment-topology.onap-model-information.model-customization-uuid}, + "model-uuid": ${connection-attachment-ar.allotted-resource-data.connection-attachment-topology.onap-model-information.model-uuid}, + "model-version": ${connection-attachment-ar.allotted-resource-data.connection-attachment-topology.onap-model-information.model-version} + }, + "connection-attachment-parameters": { + "param": [ + { + "name": "sotnVpnName", + "value": ${prop.connection-attachment.sotnVpnName} + }, + { + "name": "access-provider-id", + "value": ${prop.connection-attachment.access-provider-id} + }, + { + "name": "access-client-id", + "value": ${prop.connection-attachment.access-client-id} + }, + { + "name": "access-topology-id", + "value": ${prop.connection-attachment.access-topology-id} + }, + { + "name": "access-node-id", + "value": ${prop.connection-attachment.access-node-id} + }, + { + "name": "access-ltp-id", + "value": ${prop.connection-attachment.access-ltp-id} + }, + { + "name": "clientSignal", + "value": ${prop.connection-attachment.clientSignal} + }, + { + "name": "cVLAN", + "value": ${prop.connection-attachment.cVLAN} + } + ] + } + }, + "allotted-resource-operation-information": { + "allotted-resource-information": { + "allotted-resource-id": ${connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.allotted-resource-id}, + "allotted-resource-type": ${connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.allotted-resource-type}, + "parent-service-instance-id": ${connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.parent-service-instance-id}, + "onap-model-information": { + "model-invariant-uuid": ${connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.onap-model-information.model-invariant-uuid}, + "model-customization-uuid": ${connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.onap-model-information.model-customization-uuid}, + "model-uuid": ${connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.onap-model-information.model-uuid}, + "model-version": ${connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.onap-model-information.model-version} + } + }, + "sdnc-request-header": { + "svc-request-id": ${connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.svc-request-id}, + "svc-action": ${connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.sdnc-request-header.svc-action} + }, + "request-information": { + "request-id": ${connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.request-id}, + "source": ${connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.source}, + "order-version": ${connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.order-version}, + "order-number": ${connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.order-number}, + "notification-url": ${connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.notification-url}, + "request-action": ${connection-attachment-ar.allotted-resource-data.allotted-resource-operation-information.request-information.request-action} + }, + "connection-attachment-request-input": { + "param": [ + { + "name": "sotnVpnName", + "value": ${prop.connection-attachment.sotnVpnName} + }, + { + "name": "access-provider-id", + "value": ${prop.connection-attachment.access-provider-id} + }, + { + "name": "access-client-id", + "value": ${prop.connection-attachment.access-client-id} + }, + { + "name": "access-topology-id", + "value": ${prop.connection-attachment.access-topology-id} + }, + { + "name": "access-node-id", + "value": ${prop.connection-attachment.access-node-id} + }, + { + "name": "access-ltp-id", + "value": ${prop.connection-attachment.access-ltp-id} + }, + { + "name": "clientSignal", + "value": ${prop.connection-attachment.clientSignal} + }, + { + "name": "cVLAN", + "value": ${prop.connection-attachment.cVLAN} + } + ] + }, + "allotted-resource-oper-status": { + "last-action": ${connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-action}, + "modify-timestamp": ${connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.modify-timestamp}, + "last-order-status": ${connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-order-status}, + "create-timestamp": ${connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.create-timestamp}, + "order-status": ${connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.order-status}, + "last-rpc-action": ${connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-rpc-action}, + "last-svc-request-id": ${connection-attachment-ar.allotted-resource-data.allotted-resource-oper-status.last-svc-request-id} + } + }, + "allotted-resource-status" : { + "action": ${connection-attachment-ar.allotted-resource-status.action}, + "rpc-name": ${connection-attachment-ar.allotted-resource-status.rpc-name}, + "rpc-action": ${connection-attachment-ar.allotted-resource-status.rpc-action} + } + } + }] +} diff --git a/platform-logic/restapi-templates/src/main/json/sotn-ethernet-service.json b/platform-logic/restapi-templates/src/main/json/sotn-ethernet-service.json new file mode 100644 index 00000000..b5a371a3 --- /dev/null +++ b/platform-logic/restapi-templates/src/main/json/sotn-ethernet-service.json @@ -0,0 +1,70 @@ +/*- + * ============LICENSE_START======================================================= + * ONAP - CCSDK + * ================================================================================ + * Copyright (C) 2018 Huawei Technologies Co., Ltd. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + */ + +{ + "ietf-eth-tran-service:etht-svc": { + "globals": { + "etht-svc-bandwidth-profiles": [ + { + "bandwidth-profile-name": ${prop.global.sotn.bandwidth-profile-name}, + "bandwidth-profile-type": "mef-10-bwp", + "CIR": ${prop.global.sotn.cir}, + "EIR": ${prop.global.sotn.eir}, + "color-aware": ${prop.global.sotn.colorAware}, + "coupling-flag": ${prop.global.sotn.couplingFlag} + } + ] + }, + "etht-svc-instances": [ + { + "etht-svc-name": ${prop.global.sotn.etht-svc-name}, + "access-provider-id": ${oof.vpn.access-provider-id}, + "access-client-id": ${oof.vpn.access-client-id}, + "access-topology-id": ${oof.vpn.access-topology-id}, + "etht-svc-type": "p2p-svc", + "admin-status": "tunnel-state-up", + "etht-svc-access-ports": [ + { + "access-port-id": 0, + "access-node-id": ${oof.vpn.access-node-id}, + "access-ltp-id": ${oof.vpn.src-access-ltp-id}, + "service-classification-type": "vlan-classification", + "outer-tag": { + "tag-type": "classify-c-vlan", + "vlan-value": ${prop.connection-attachment.cVLAN} + }, + "ingress-egress-bandwidth-profile-name": ${prop.global.sotn.bandwidth-profile-name} + }, + { + "access-port-id": 1, + "access-node-id": ${oof.vpn.access-node-id}, + "access-ltp-id": ${oof.vpn.dst-access-ltp-id}, + "service-classification-type": "vlan-classification", + "outer-tag": { + "tag-type": "classify-c-vlan", + "vlan-value": ${prop.connection-attachment.cVLAN} + }, + "ingress-egress-bandwidth-profile-name": ${prop.global.sotn.bandwidth-profile-name} + } + ] + } + ] + } +}
\ No newline at end of file |