diff options
author | Ahila <ahila.pandaram@wipro.com> | 2021-04-13 21:47:01 +0530 |
---|---|---|
committer | Ahila <ahila.pandaram@wipro.com> | 2021-04-13 21:50:51 +0530 |
commit | d530376a63dd3b20a416d908cec395716a62914a (patch) | |
tree | 55aa3cf35710f2615090d6258460d17d3eafae82 /platform-logic | |
parent | c418b3b687063a5f75ffef9782d4111449c11f32 (diff) |
RAN Slice DG - Honolulu updates - coverageAreaTAList
Issue-ID: CCSDK-3244
Signed-off-by: Ahila <ahila.pandaram@wipro.com>
Change-Id: Icc038d68f5fb5fbccc63e95131ca3936ad8938eb
Diffstat (limited to 'platform-logic')
4 files changed, 2383 insertions, 2070 deletions
diff --git a/platform-logic/ran-slice-api/src/main/json/ran-slice-api_instantiateRANSliceAllocate.json b/platform-logic/ran-slice-api/src/main/json/ran-slice-api_instantiateRANSliceAllocate.json index b598cd00..2073e5a2 100644 --- a/platform-logic/ran-slice-api/src/main/json/ran-slice-api_instantiateRANSliceAllocate.json +++ b/platform-logic/ran-slice-api/src/main/json/ran-slice-api_instantiateRANSliceAllocate.json @@ -53,8 +53,8 @@ "name": "return success", "xml": "<return status='success'>\n<parameter name=\"ack-final\" value=\"N\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"SUCCESSFUL Execution\" />", "comments": "", - "x": 434.48983097076416, - "y": 2724.5283212661743, + "x": 324.4898452758789, + "y": 2784.5286865234375, "z": "a2c243d0.ad36e", "wires": [] }, @@ -77,8 +77,8 @@ "atomic": "true", "comments": "", "outputs": 1, - "x": 1776.055576324463, - "y": 265.90970039367676, + "x": 1650.4999542236328, + "y": 340.3541946411133, "z": "a2c243d0.ad36e", "wires": [ [ @@ -123,8 +123,8 @@ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.configdb.url + $tmp.configdb.getNearRTRICsFromTrackingArea.url`\"/>\n<parameter name=\"httpMethod\" value=\"GET\"/>\n<parameter name=\"responsePrefix\" value=\"getRIC-configdb-response\"/>\n<parameter name='contentType' value='application/json' /> \n<parameter name='format' value='json' />\n<parameter name='accept' value='application/json' />\n<parameter name=\"convertResponse\" value=\"true\"/>", "comments": "", "outputs": 1, - "x": 2103.055767059326, - "y": 354.90972900390625, + "x": 2108.6114501953125, + "y": 314.9097480773926, "z": "a2c243d0.ad36e", "wires": [ [ @@ -302,8 +302,11 @@ "z": "a2c243d0.ad36e", "wires": [ [ - "8e4a2db8.c53ca", - "bd377d99.e91fd" + "add03b35.2459c8", + "3f7470f5.37976", + "e89fecb2.b5374", + "eedce730.f46188", + "8e31db94.e70678" ] ] }, @@ -315,17 +318,15 @@ "atomic": "true", "comments": "", "outputs": 1, - "x": 1287.055461883545, - "y": 638.01043176651, + "x": 1075.9444122314453, + "y": 540.2326898574829, "z": "a2c243d0.ad36e", "wires": [ [ "a97a496a.e7a168", - "adc8ef28.065cf", - "eedce730.f46188", - "8e31db94.e70678", "afcd8575.ce5a88", - "946e6c1f.7bb9d" + "946e6c1f.7bb9d", + "adc8ef28.065cf" ] ] }, @@ -2135,14 +2136,12 @@ "atomic": "true", "comments": "", "outputs": 1, - "x": 1560.035011291504, - "y": 557.3441619873047, + "x": 1513.3684043884277, + "y": 568.4552726745605, "z": "a2c243d0.ad36e", "wires": [ [ - "31f24c7a.033584", - "8282f63d.edb3e8", - "e13282a4.a3907" + "8fb0f823.745438" ] ] }, @@ -2153,8 +2152,8 @@ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$prop.restapi.configdb.getListOfCells`\"/>\n <parameter name=\"outputPath\" value=\"tmp.configdb.getListOfCells.url\"/>\n <parameter name=\"target\" value=\"{trackingArea}\"/>\n <parameter name=\"replacement\" value=\"`$tmp.payload.trackingArea`\"/>", "comments": "", "outputs": 1, - "x": 1816.0351333618164, - "y": 417.34410095214844, + "x": 2109.3683013916016, + "y": 434.010799407959, "z": "a2c243d0.ad36e", "wires": [ [] @@ -2167,8 +2166,8 @@ "xml": "<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.FileRecorder\">\n<parameter name=\"file\" value=\"/opt/opendaylight/current/data/log/instantiateRANSlice.log\" />\n<parameter name=\"level\" value=\"info\" />\n<parameter name=\"field1\" value=\"URL for configDB Get getListOfCells for tracking area\"/>\n<parameter name='field2' value=\"`$prop.configdb.url + $tmp.configdb.getListOfCells.url`\" />\n<parameter name='field3' value=\"`$tmp.payload.trackingArea`\" />", "comments": "", "outputs": 1, - "x": 1841.0351333618164, - "y": 519.3443145751953, + "x": 2108.8130645751953, + "y": 483.7887592315674, "z": "a2c243d0.ad36e", "wires": [ [] @@ -2181,8 +2180,8 @@ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.configdb.url + $tmp.configdb.getListOfCells.url`\"/>\n<parameter name=\"httpMethod\" value=\"GET\"/>\n<parameter name=\"responsePrefix\" value=\"getListofCells-configdb-response\"/>\n<parameter name='contentType' value='application/json' /> \n<parameter name='format' value='json' />\n<parameter name='accept' value='application/json' />", "comments": "", "outputs": 1, - "x": 1843.0351333618164, - "y": 602.3442153930664, + "x": 2004.1461486816406, + "y": 532.3442220687866, "z": "a2c243d0.ad36e", "wires": [ [ @@ -2198,8 +2197,8 @@ "xml": "<outcome value='failure'>\n", "comments": "", "outputs": 1, - "x": 2120.034828186035, - "y": 536.3442993164062, + "x": 2320.0348224639893, + "y": 503.0109806060791, "z": "a2c243d0.ad36e", "wires": [ [ @@ -2214,8 +2213,8 @@ "xml": "<outcome value='success'>\n", "comments": "", "outputs": 1, - "x": 2069.034736633301, - "y": 682.3442153930664, + "x": 2230.146026611328, + "y": 550.122091293335, "z": "a2c243d0.ad36e", "wires": [ [ @@ -3634,17 +3633,6 @@ ] }, { - "id": "19ed9e08.dbfce2", - "type": "comment", - "name": "TO DO", - "info": "- Use \"List of Cells for Tracking Area\" everywhere list\nof cells are sequenced for Restconf transactions...\nNo need to go through all cells as captured in the configDB\nresponse....localID will be the actual value returned \nin \n<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\n\t<parameter name='outputPath' value='tmp.trackingarea.cell' />\n\t<parameter name='source' value=\"`'getListofCells-configdb-response.[' + $ids + ']'`\" />\n\t\n\ttmp.trackingarea.cell would be cellLocalID", - "comments": "", - "x": 849.0555686950684, - "y": 241.01039123535156, - "z": "a2c243d0.ad36e", - "wires": [] - }, - { "id": "6f40dd43.c32694", "type": "execute", "name": "cellLocalID", @@ -3666,8 +3654,8 @@ "atomic": "true", "comments": "", "outputs": 1, - "x": 477.0494775772095, - "y": 2630.764775276184, + "x": 352.04947662353516, + "y": 2560.7651081085205, "z": "a2c243d0.ad36e", "wires": [ [ @@ -5206,8 +5194,8 @@ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\n\t<parameter name='outputPath' value='tmp.gNBDUList.cellLocalId' />\n\t<parameter name='source' value=\"`'getListofCells-configdb-response.[' + $id3 + ']'`\" />", "comments": "", "outputs": 1, - "x": 2898.300163269043, - "y": 6228.014333724976, + "x": 2899.4110794067383, + "y": 6238.014590680599, "z": "a2c243d0.ad36e", "wires": [ [] @@ -6215,7 +6203,7 @@ "id": "c89590a8.227f1", "type": "set", "name": "set resourceID", - "xml": "<set>\n<parameter name='tmp.resourceID-DU' value='`$tmp.cellLocalId`'/>", + "xml": "<set>\n<parameter name='tmp.resourceID' value='`$tmp.gNBDUList.cellLocalId`'/>", "comments": "", "x": 2369.0555381774902, "y": 7184.74999332428, @@ -6356,5 +6344,116 @@ "wires": [ [] ] + }, + { + "id": "8fb0f823.745438", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic='true'>", + "atomic": "true", + "comments": "", + "outputs": 1, + "x": 1848.8888320922852, + "y": 441.6666898727417, + "z": "a2c243d0.ad36e", + "wires": [ + [ + "31f24c7a.033584", + "8282f63d.edb3e8", + "e13282a4.a3907" + ] + ] + }, + { + "id": "5a6dbfd5.a48f5", + "type": "execute", + "name": "set trackingArea", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\n\t<parameter name='outputPath' value='tmp.payload.trackingArea' />\n\t<parameter name='source' value=\"`'payloadJson.input.sliceProfile.coverageAreaList[' + $ta + ']'`\"/>", + "comments": "", + "outputs": 1, + "x": 1365.631492614746, + "y": 288.48922061920166, + "z": "a2c243d0.ad36e", + "wires": [ + [] + ] + }, + { + "id": "2bb85138.bdd50e", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic='true'>", + "atomic": "true", + "comments": "", + "outputs": 1, + "x": 977.0205383300781, + "y": 449.60031175613403, + "z": "a2c243d0.ad36e", + "wires": [ + [ + "5a6dbfd5.a48f5", + "1c0164dc.8d644b", + "8e4a2db8.c53ca", + "bd377d99.e91fd" + ] + ] + }, + { + "id": "1c0164dc.8d644b", + "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/instantiateRANSlice.log\" />\n<parameter name=\"level\" value=\"info\" />\n<parameter name=\"field1\" value=\"Tracking Area\"/>\n<parameter name=\"field2\" value=\"`$tmp.payload.trackingArea`\"/>", + "comments": "", + "outputs": 1, + "x": 1349.2426452636719, + "y": 338.489200592041, + "z": "a2c243d0.ad36e", + "wires": [ + [] + ] + }, + { + "id": "add03b35.2459c8", + "type": "for", + "name": "For coverageAreaTAList", + "xml": "<for index='ta' start='0' end='`$tmp.trackingAreaListEntries`'>", + "comments": "", + "outputs": 1, + "x": 743.0555191040039, + "y": 500.83333015441895, + "z": "a2c243d0.ad36e", + "wires": [ + [ + "2bb85138.bdd50e" + ] + ] + }, + { + "id": "e89fecb2.b5374", + "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/instantiateRANSlice.log\" />\n<parameter name=\"level\" value=\"info\" />\n<parameter name=\"field1\" value=\"Tracking Area size\"/>\n<parameter name=\"field2\" value=\"`$tmp.trackingAreaListEntries`\"/>", + "comments": "", + "outputs": 1, + "x": 715.2777709960938, + "y": 445.5555419921875, + "z": "a2c243d0.ad36e", + "wires": [ + [] + ] + }, + { + "id": "3f7470f5.37976", + "type": "execute", + "name": "set trackingArea size", + "xml": "<set>\n\t<parameter name='tmp.trackingAreaListEntries' value=\"`$payloadJson.input.sliceProfile.coverageAreaList_length`\"/>\n\t", + "comments": "", + "outputs": 1, + "x": 746.3888549804688, + "y": 395.5555419921875, + "z": "a2c243d0.ad36e", + "wires": [ + [] + ] } ]
\ No newline at end of file diff --git a/platform-logic/ran-slice-api/src/main/json/ran-slice-api_instantiateRANSliceModifyAllocate.json b/platform-logic/ran-slice-api/src/main/json/ran-slice-api_instantiateRANSliceModifyAllocate.json index 046c963f..242d276e 100644 --- a/platform-logic/ran-slice-api/src/main/json/ran-slice-api_instantiateRANSliceModifyAllocate.json +++ b/platform-logic/ran-slice-api/src/main/json/ran-slice-api_instantiateRANSliceModifyAllocate.json @@ -64,9 +64,9 @@ "df01ad79.7438a", "1801c640.1eb6aa", "ed3c9a78.956f38", - "51b41b66.216574", "ade269f7.3d78c8", - "d0d24863.8121f8" + "d0d24863.8121f8", + "963ff2bf.d8e52" ] ] }, @@ -5124,8 +5124,8 @@ "atomic": "true", "comments": "", "outputs": 1, - "x": 482.27777099609375, - "y": 872.0000157356262, + "x": 502.2777404785156, + "y": 1002.0000991821289, "z": "ecab9296.c8bb5", "wires": [ [ @@ -6758,8 +6758,8 @@ "atomic": "true", "comments": "", "outputs": 1, - "x": 496.27777099609375, - "y": 700.7499809265137, + "x": 491.83331298828125, + "y": 638.5278072357178, "z": "ecab9296.c8bb5", "wires": [ [ @@ -6769,7 +6769,8 @@ "70150931.91cfa8", "c28b4d37.26d9", "b4a6eeb6.15b65", - "e507ae6f.0ca78" + "abc69ccc.b8816", + "facbc015.91451" ] ] }, @@ -6822,8 +6823,8 @@ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$tmp.aai.fetchSliceProfile.url`\"/>\n <parameter name=\"outputPath\" value=\"tmp.aai.fetchSliceProfile.url\"/>\n <parameter name=\"target\" value=\"{service-instance-id}\"/>\n <parameter name=\"replacement\" value=\"`$tmp.payload.RANNFNSSIId`\"/>\n", "comments": "", "outputs": 1, - "x": 782.7777709960938, - "y": 763.4999942779541, + "x": 812.7777709960938, + "y": 764.6111183166504, "z": "ecab9296.c8bb5", "wires": [ [] @@ -6923,8 +6924,8 @@ "xml": "<outcome value='success'>\n", "comments": "", "outputs": 1, - "x": 1058.5278015136719, - "y": 673.2500448226929, + "x": 974.0834159851074, + "y": 795.472339630127, "z": "ecab9296.c8bb5", "wires": [ [ @@ -6940,13 +6941,18 @@ "atomic": "true", "comments": "", "outputs": 1, - "x": 1226.5275421142578, - "y": 665.2502279281616, + "x": 1133.1940898895264, + "y": 786.3613233566284, "z": "ecab9296.c8bb5", "wires": [ [ "8de7df6e.15597", - "3f2fbfdf.2aa34" + "3f2fbfdf.2aa34", + "71818c2.be80c74", + "699af871.c57d28", + "6b78e53.3ea641c", + "a67af35e.5f654", + "1c1677de.c69718" ] ] }, @@ -6954,11 +6960,11 @@ "id": "8de7df6e.15597", "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/instantiateRANSliceModifyAllocate.log\" />\n<parameter name=\"level\" value=\"info\" />\n<parameter name=\"field1\" value=\"Successfully Retrieved coverageAreaTAList\"/>\n<parameter name=\"field2\" value=\"`$get-coverageAreaTAList-response`\"/>", + "xml": "<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.FileRecorder\">\n<parameter name=\"file\" value=\"/opt/opendaylight/current/data/log/instantiateRANSliceModifyAllocate.log\" />\n<parameter name=\"level\" value=\"info\" />\n<parameter name=\"field1\" value=\"Successfully Retrieved coverageAreaTAList\"/>\n<parameter name=\"field2\" value=\"`$get-coverageAreaTAList-response.coverage-area-TA-list`\"/>", "comments": "", "outputs": 1, - "x": 1398.2772979736328, - "y": 666.0001964569092, + "x": 1238.2774810791016, + "y": 547.1113529205322, "z": "ecab9296.c8bb5", "wires": [ [] @@ -6971,8 +6977,8 @@ "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\n<parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' />\n\n\n", "comments": "", "outputs": 1, - "x": 1426.0554809570312, - "y": 707.2501668930054, + "x": 1269.3889999389648, + "y": 590.5835800170898, "z": "ecab9296.c8bb5", "wires": [ [] @@ -6984,8 +6990,8 @@ "name": "set", "xml": "<set>\n<parameter name='error-code' value='500'/>\n<parameter name='error-message' value='Error Getting Info from AAI. Aborting RPC executiopn'/>", "comments": "", - "x": 1394.0907592773438, - "y": 747.9235363006592, + "x": 1230.7574729919434, + "y": 822.3680152893066, "z": "ecab9296.c8bb5", "wires": [] }, @@ -6995,8 +7001,8 @@ "name": "return failure", "xml": "<return status='failure'>\n<parameter name='ack-final' value='Y'/>\n<parameter name='error-code' value='500'/>\n<parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>", "comments": "", - "x": 1340.0904235839844, - "y": 792.8125143051147, + "x": 1267.8683700561523, + "y": 856.1458129882812, "z": "ecab9296.c8bb5", "wires": [] }, @@ -7008,8 +7014,8 @@ "atomic": "false", "comments": "", "outputs": 1, - "x": 1217.0903778076172, - "y": 719.8124837875366, + "x": 1125.9793224334717, + "y": 857.5903253555298, "z": "ecab9296.c8bb5", "wires": [ [ @@ -7025,8 +7031,8 @@ "xml": "<outcome value='failure'>\n", "comments": "", "outputs": 1, - "x": 1068.0905456542969, - "y": 718.8125286102295, + "x": 1000.312801361084, + "y": 856.5903720855713, "z": "ecab9296.c8bb5", "wires": [ [ @@ -7063,20 +7069,6 @@ ] }, { - "id": "e507ae6f.0ca78", - "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/instantiateRANSliceModifyAllocate.log\" />\n<parameter name=\"level\" value=\"info\" />\n<parameter name=\"field1\" value=\"`$tmp.pLMNId`\"/>\n<parameter name=\"field2\" value=\"`$tmp.mcc`\"/>\n<parameter name=\"field3\" value=\"`$tmp.mnc`\"/>", - "comments": "", - "outputs": 1, - "x": 782.2777709960938, - "y": 929.4999942779541, - "z": "ecab9296.c8bb5", - "wires": [ - [] - ] - }, - { "id": "7d0cab41.5d62e4", "type": "execute", "name": "Update RAN Inventory ConfigDB", @@ -7263,5 +7255,163 @@ "wires": [ [] ] + }, + { + "id": "963ff2bf.d8e52", + "type": "for", + "name": "For coverageAreaTAList", + "xml": "<for index='ta' start='0' end='`$tmp.trackingAreaListEntries`'>", + "comments": "", + "outputs": 1, + "x": 492.2222442626953, + "y": 756.6666660308838, + "z": "ecab9296.c8bb5", + "wires": [ + [ + "5bcb2c99.0378c4" + ] + ] + }, + { + "id": "5bcb2c99.0378c4", + "type": "block", + "name": "block : atomic", + "xml": "<block atomic='true'>", + "atomic": "true", + "comments": "", + "outputs": 1, + "x": 508.4094543457031, + "y": 810.9892473220825, + "z": "ecab9296.c8bb5", + "wires": [ + [ + "c16418c0.4be368", + "51b41b66.216574", + "338340aa.07add" + ] + ] + }, + { + "id": "abc69ccc.b8816", + "type": "execute", + "name": "set trackingArea size", + "xml": "<set>\n\t<parameter name='tmp.trackingAreaListEntries' value=\"`$tmp.coverageAreaTAList_length`\"/>\n\t", + "comments": "", + "outputs": 1, + "x": 847.7777709960938, + "y": 913.0555419921875, + "z": "ecab9296.c8bb5", + "wires": [ + [] + ] + }, + { + "id": "facbc015.91451", + "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/instantiateRANSliceModifyAllocate.log\" />\n<parameter name=\"level\" value=\"info\" />\n<parameter name=\"field1\" value=\"Tracking Area size\"/>\n<parameter name=\"field2\" value=\"`$tmp.trackingAreaListEntries`\"/>", + "comments": "", + "outputs": 1, + "x": 811.111083984375, + "y": 944.1666259765625, + "z": "ecab9296.c8bb5", + "wires": [ + [] + ] + }, + { + "id": "699af871.c57d28", + "type": "execute", + "name": "SliStringUtils - split", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>\n <parameter name=\"original_string\" value=\"`$tmp.aai.coverageAreaTAList`\" />\n <parameter name=\"regex\" value=\",\"/>\n <parameter name=\"ctx_memory_result_key\" value=\"tmp.coverageAreaTAList\"/>\n ", + "comments": "", + "outputs": 1, + "x": 1334.1668701171875, + "y": 758.3334369659424, + "z": "ecab9296.c8bb5", + "wires": [ + [] + ] + }, + { + "id": "71818c2.be80c74", + "type": "set", + "name": "set", + "xml": "<set>\n<parameter name='tmp.aai.coverageAreaTAList' value=\"`$get-coverageAreaTAList-response.coverage-area-TA-list`\"/>\n", + "comments": "", + "x": 1262.5000801086426, + "y": 629.1667566299438, + "z": "ecab9296.c8bb5", + "wires": [] + }, + { + "id": "a67af35e.5f654", + "type": "execute", + "name": "printContext", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\n<parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' />\n\n\n", + "comments": "", + "outputs": 1, + "x": 1346.1112213134766, + "y": 795.2779369354248, + "z": "ecab9296.c8bb5", + "wires": [ + [] + ] + }, + { + "id": "c16418c0.4be368", + "type": "execute", + "name": "read trackingArea", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\n\t<parameter name='outputPath' value='tmp.payload.trackingArea' />\n\t<parameter name='source' value=\"`'tmp.coverageAreaTAList['+ $ta+']'`\" />\n", + "comments": "", + "outputs": 1, + "x": 598.3333892822266, + "y": 896.9444751739502, + "z": "ecab9296.c8bb5", + "wires": [ + [] + ] + }, + { + "id": "338340aa.07add", + "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/instantiateRANSliceModifyAllocate.log\" />\n<parameter name=\"level\" value=\"info\" />\n<parameter name=\"field1\" value=\"trackingArea \"/>\n<parameter name=\"field2\" value=\"`$tmp.payload.trackingArea`\"/>\n\n", + "comments": "", + "outputs": 1, + "x": 552.2222290039062, + "y": 945.2777099609375, + "z": "ecab9296.c8bb5", + "wires": [ + [] + ] + }, + { + "id": "1c1677de.c69718", + "type": "execute", + "name": "replace [", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$tmp.aai.coverageAreaTAList`\"/>\n <parameter name=\"outputPath\" value=\"tmp.aai.coverageAreaTAList\"/>\n <parameter name=\"target\" value=\"[\"/>\n <parameter name=\"replacement\" value=\"\"/>", + "comments": "", + "outputs": 1, + "x": 1277.7779006958008, + "y": 667.2221508026123, + "z": "ecab9296.c8bb5", + "wires": [ + [] + ] + }, + { + "id": "6b78e53.3ea641c", + "type": "execute", + "name": "replace ]", + "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$tmp.aai.coverageAreaTAList`\"/>\n <parameter name=\"outputPath\" value=\"tmp.aai.coverageAreaTAList\"/>\n <parameter name=\"target\" value=\"]\"/>\n <parameter name=\"replacement\" value=\"\"/>", + "comments": "", + "outputs": 1, + "x": 1293.6110763549805, + "y": 704.1666836738586, + "z": "ecab9296.c8bb5", + "wires": [ + [] + ] } ]
\ No newline at end of file diff --git a/platform-logic/ran-slice-api/src/main/xml/ran-slice-api_instantiateRANSliceAllocate.xml b/platform-logic/ran-slice-api/src/main/xml/ran-slice-api_instantiateRANSliceAllocate.xml index 3d5f6768..ede8708d 100644 --- a/platform-logic/ran-slice-api/src/main/xml/ran-slice-api_instantiateRANSliceAllocate.xml +++ b/platform-logic/ran-slice-api/src/main/xml/ran-slice-api_instantiateRANSliceAllocate.xml @@ -3,382 +3,45 @@ xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='ran-slice-api' version='${project.version}'> <method rpc='instantiateRANSliceAllocate' mode='sync'> <block atomic='true'> - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.configdb.getNearRTRICsFromTrackingArea`"/> - <parameter name="outputPath" value="tmp.configdb.getNearRTRICsFromTrackingArea.url"/> - <parameter name="target" value="{trackingArea}"/> - <parameter name="replacement" value="`$tmp.payload.trackingArea`"/> - </execute> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="URL for configDB Get NearRTRIC for tracking area"/> - <parameter name='field2' value="`$prop.configdb.url + $tmp.configdb.getNearRTRICsFromTrackingArea.url`" /> - <parameter name='field3' value="`$tmp.payload.trackingArea`" /> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getNearRTRICsFromTrackingArea.url`"/> - <parameter name="httpMethod" value="GET"/> - <parameter name="responsePrefix" value="getRIC-configdb-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='application/json' /> - <parameter name="convertResponse" value="true"/> - <outcome value='failure'> - <block> - <set> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/> - </set> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/> - </return> - <block atomic='true'> - <set> - <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> - <parameter name="tmp.status" value="`$error-code`"/> - <parameter name="tmp.reason" value="`$error-message`"/> - <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> - <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="URL for SO Callback Response"/> - <parameter name='field2' value="`$tmp.so.callbackURL`" /> - <parameter name='field3' value="`$tmp.status`" /> - <parameter name='field4' value="`$tmp.reason`" /> - <parameter name='field5' value="`$tmp.requestID`" /> - <parameter name='field6' value="`$tmp.action`" /> - <parameter name='field7' value="`$tmp.CUCPList`" /> - <parameter name='field8' value="`$tmp.CUUPList`" /> - <parameter name='field9' value="`$tmp.DUList`" /> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> - <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> - <parameter name="httpMethod" value="POST"/> - <parameter name="responsePrefix" value="so-callback-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='*/*' /> - <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> - <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> - <outcome value='failure'> - <block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error sending SO Response" /> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="SO Response Sent "/> - </record> - </block> - </outcome> - </execute> - </block> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Successfully Obtained NearRT RIC info from ConfigDB"/> - <parameter name="field2" value="`$getRIC-configdb-response._length`"/> - <parameter name="field3" value="`$getRIC-configdb-response.[0].gNBCUCPList_length`"/> - <parameter name="field4" value="`$getRIC-configdb-response.[0].gNBCUUPList_length`"/> - <parameter name="field5" value="`$getRIC-configdb-response.[0].gNBDUList_length`"/> - </record> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' > - <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' /> - </execute> - </block> - </outcome> - </execute> - </block> - <block atomic='true'> + <set> + <parameter name='tmp.trackingAreaListEntries' value="`$payloadJson.input.sliceProfile.coverageAreaList_length`"/> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Tracking Area size"/> + <parameter name="field2" value="`$tmp.trackingAreaListEntries`"/> + </record> + <for index='ta' start='0' end='`$tmp.trackingAreaListEntries`'> <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.configdb.getListOfCells`"/> - <parameter name="outputPath" value="tmp.configdb.getListOfCells.url"/> - <parameter name="target" value="{trackingArea}"/> - <parameter name="replacement" value="`$tmp.payload.trackingArea`"/> - </execute> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="URL for configDB Get getListOfCells for tracking area"/> - <parameter name='field2' value="`$prop.configdb.url + $tmp.configdb.getListOfCells.url`" /> - <parameter name='field3' value="`$tmp.payload.trackingArea`" /> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getListOfCells.url`"/> - <parameter name="httpMethod" value="GET"/> - <parameter name="responsePrefix" value="getListofCells-configdb-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='application/json' /> - <outcome value='failure'> - <block> - <set> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/> - </set> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/> - </return> - <block atomic='true'> - <set> - <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> - <parameter name="tmp.status" value="`$error-code`"/> - <parameter name="tmp.reason" value="`$error-message`"/> - <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> - <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="URL for SO Callback Response"/> - <parameter name='field2' value="`$tmp.so.callbackURL`" /> - <parameter name='field3' value="`$tmp.status`" /> - <parameter name='field4' value="`$tmp.reason`" /> - <parameter name='field5' value="`$tmp.requestID`" /> - <parameter name='field6' value="`$tmp.action`" /> - <parameter name='field7' value="`$tmp.CUCPList`" /> - <parameter name='field8' value="`$tmp.CUUPList`" /> - <parameter name='field9' value="`$tmp.DUList`" /> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> - <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> - <parameter name="httpMethod" value="POST"/> - <parameter name="responsePrefix" value="so-callback-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='*/*' /> - <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> - <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> - <outcome value='failure'> - <block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error sending SO Response" /> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="SO Response Sent "/> - </record> - </block> - </outcome> - </execute> - </block> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Successfully Obtained List of Cells from ConfigDB"/> - <parameter name="field2" value="`$getListofCells-configdb-response._length`"/> - <parameter name="field3" value="List of Cells in the Tracking Area Relevant for RAN Slice Instantiation "/> - </record> - <for index='idx' start='0' end='`$getListofCells-configdb-response._length `' > - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.trackingarea.cell' /> - <parameter name='source' value="`'getListofCells-configdb-response.[' + $ids + ']'`" /> - </execute> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="`$tmp.trackingarea.cell`"/> - </record> - </for> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' > - <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' /> - </execute> - </block> - </outcome> - </execute> - </block> - <for index='id1' start='0' end="`$getRIC-configdb-response._length`" > <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.nearRTRICId' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].nearRTRICId'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.gNBId' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBId'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.ranNFNSSIListEntry' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].ranNFNSSIList[0]'`" /> + <parameter name='outputPath' value='tmp.payload.trackingArea' /> + <parameter name='source' value="`'payloadJson.input.sliceProfile.coverageAreaList[' + $ta + ']'`"/> </execute> <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="Config Payload Entry# "/> - <parameter name="field2" value="`$id1`"/> - <parameter name="field3" value="`$tmp.nearRTRICId`"/> - <parameter name="field4" value="`$tmp.gNBId`"/> - <parameter name="field5" value="`$tmp.ranNFNSSIListEntry`"/> + <parameter name="field1" value="Tracking Area"/> + <parameter name="field2" value="`$tmp.payload.trackingArea`"/> </record> <block atomic='true'> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Payload slice parameters - maxNumberofUEs "/> - <parameter name="field2" value="`$payloadJson.input.sliceProfile.maxNumberofUEs`"/> - <parameter name="field3" value="Payload slice parameters - maxNumberofConns"/> - <parameter name="field4" value="`$payloadJson.input.sliceProfile.maxNumberofConns`"/> - <parameter name="field5" value="Payload slice parameters - dLThptPerSlice"/> - <parameter name="field6" value="`$payloadJson.input.sliceProfile.dLThptPerSlice`"/> - <parameter name="field7" value="Payload slice parameters - uLThptPerSlice"/> - <parameter name="field8" value="`$payloadJson.input.sliceProfile.uLThptPerSlice`"/> - </record> - <set> - <parameter name='tmp.nearRTRIC.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`' /> - <parameter name='tmp.nearRTRIC.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`' /> - </set> - <set> - <parameter name='tmp.nearRTRIC.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberofConns`' /> - <parameter name='tmp.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberofConns`' /> - <parameter name='tmp.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`' /> - <parameter name='tmp.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`' /> - </set> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' > - <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-sliceparms-context.log' /> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$prop.restapi.configdb.getNearRTRICsFromTrackingArea`"/> + <parameter name="outputPath" value="tmp.configdb.getNearRTRICsFromTrackingArea.url"/> + <parameter name="target" value="{trackingArea}"/> + <parameter name="replacement" value="`$tmp.payload.trackingArea`"/> </execute> <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="Calculated uLThptPerSlice for nearRTRIC "/> - <parameter name="field2" value="`$tmp.nearRTRIC.uLThptPerSlice`"/> - <parameter name="field3" value="Calculated dLThptPerSlice for nearRTRIC"/> - <parameter name="field4" value="`$tmp.nearRTRIC.dLThptPerSlice`"/> - <parameter name="field5" value="Calculated maxNumberOfConns for nearRTRIC"/> - <parameter name="field6" value="`$tmp.nearRTRIC1.maxNumberOfConns`"/> - <parameter name="field7" value="`$payloadJson.input.sliceProfile.maxNumberofConns`"/> + <parameter name="field1" value="URL for configDB Get NearRTRIC for tracking area"/> + <parameter name='field2' value="`$prop.configdb.url + $tmp.configdb.getNearRTRICsFromTrackingArea.url`" /> + <parameter name='field3' value="`$tmp.payload.trackingArea`" /> </record> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' > - <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-sliceparms-context2.log' /> - </execute> - <block atomic='true'> - <switch test='`$prop.ransim-mounted`'> - <outcome value='false'> - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.addSliceProfile.ToNearRTRIC`"/> - <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/> - <parameter name="target" value="{idNearRTRIC}"/> - <parameter name="replacement" value="`$tmp.nearRTRICId`"/> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/> - <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/> - <parameter name="target" value="{sliceProfileId}"/> - <parameter name="replacement" value="`$payloadJson.input.sliceProfile.sliceProfileId`"/> - </execute> - </block> - </outcome> - <outcome value='true'> - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.addSliceProfile.ToNearRTRIC.ransim-mounted`"/> - <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/> - <parameter name="target" value="{idNearRTRIC}"/> - <parameter name="replacement" value="`$tmp.nearRTRICId`"/> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/> - <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/> - <parameter name="target" value="{sliceProfileId}"/> - <parameter name="replacement" value="`$payloadJson.input.sliceProfile.sliceProfileId`"/> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/> - <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/> - <parameter name="target" value="{mountName}"/> - <parameter name="replacement" value="`$tmp.nearRTRICId`"/> - </execute> - </block> - </outcome> - </switch> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Add SliceProfile ToNearRTRIC url:"/> - <parameter name="field2" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/> - </record> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Setting variables for ADD SliceProfile ToNearRTRIC"/> - <parameter name="field2" value="`$prop.controller.url + $tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/> - <parameter name="field3" value="`$payloadJson.input.sliceProfile.sliceProfileId`"/> - <parameter name="field4" value="`$payloadJson.input.sliceProfile.sNSSAI`"/> - <parameter name="field5" value="`$payloadJson.input.sliceProfile.maxNumberofUEs`"/> - <parameter name="field6" value="`$payloadJson.input.sliceProfile.latency`"/> - <parameter name="field7" value="`$tmp.nearRTRIC.uLThptPerSlice`"/> - <parameter name="field8" value="`$tmp.nearRTRIC.dLThptPerSlice`"/> - <parameter name="field9" value="`$tmp.nearRTRIC.maxNumberOfConns`"/> - <parameter name="field10" value="`$payloadJson.input.sliceProfile.uEMobilityLevel`"/> - <parameter name="field11" value="`$tmp.trackingArea`"/> - <parameter name="field12" value="`$payloadJson.input.sliceProfile.resourceSharingLevel`"/> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-sliceProfile-NRRIC.json'`" /> - <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/> - <parameter name="restapiUser" value="`$prop.controller.user`" /> - <parameter name="restapiPassword" value="`$prop.controller.pwd`"/> - <parameter name="httpMethod" value="PUT"/> - <parameter name="responsePrefix" value="addSliceProfile-NRTRIC-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <outcome value='failure'> - <block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error adding slice proficle to NearRTRIC" /> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="PLMNInfo List Entry Add to NRCELLCU Executed Successfully "/> - </record> - </block> - </outcome> - </execute> - </block> <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updatenearRTRIC`"/> - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updatenearRTRIC.json'`" /> - <parameter name="httpMethod" value="PUT"/> - <parameter name="responsePrefix" value="update-nearRTRIC-configdb-response"/> + <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getNearRTRICsFromTrackingArea.url`"/> + <parameter name="httpMethod" value="GET"/> + <parameter name="responsePrefix" value="getRIC-configdb-response"/> <parameter name='contentType' value='application/json' /> <parameter name='format' value='json' /> <parameter name='accept' value='application/json' /> @@ -387,12 +50,12 @@ <block> <set> <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/> + <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/> </set> <return status='failure'> <parameter name='ack-final' value='Y'/> <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/> + <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/> </return> <block atomic='true'> <set> @@ -452,814 +115,53 @@ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="Successfully Updated NearRT RIC info in ConfigDB"/> + <parameter name="field1" value="Successfully Obtained NearRT RIC info from ConfigDB"/> + <parameter name="field2" value="`$getRIC-configdb-response._length`"/> + <parameter name="field3" value="`$getRIC-configdb-response.[0].gNBCUCPList_length`"/> + <parameter name="field4" value="`$getRIC-configdb-response.[0].gNBCUUPList_length`"/> + <parameter name="field5" value="`$getRIC-configdb-response.[0].gNBDUList_length`"/> </record> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' > + <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' /> + </execute> </block> </outcome> </execute> </block> <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.CUCPListEntries' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList_length'`" /> - </execute> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Number of CUCP List Entries "/> - <parameter name="field2" value="`$tmp.CUCPListEntries`"/> - </record> - <set> - <parameter name='tmp.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberofConns`' /> - <parameter name='tmp.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`' /> - <parameter name='tmp.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`' /> - </set> - <for index='id2' start='0' end='`$tmp.CUCPListEntries`' > - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.cellCUListEntries' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].cellCUList_length'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.gNBCUCPList.gNBCUName' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].gNBCUName'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.gNBCUCPList.gNBId' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].gNBId'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.gNBCUCPList.gNBIdLength' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].gNBIdLength'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.gNBCUCPList.nFType' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].nFType'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.gNBCUCPList.pLMNId' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].pLMNId'`" /> - </execute> - </block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Numberof cellCU of Entries "/> - <parameter name="field2" value="`$tmp.cellCUListEntries`"/> - <parameter name="field3" value="`$tmp.gNBCUCPList.gNBCUName`"/> - <parameter name="field4" value="`$tmp.gNBCUCPList.gNBId`"/> - <parameter name="field5" value="`$tmp.gNBCUCPList.gNBIdLengthh`"/> - <parameter name="field6" value="`$tmp.gNBCUCPList.nFType`"/> - <parameter name="field7" value="`$tmp.gNBCUCPList.pLMNId`"/> - </record> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="MCC "/> - <parameter name="field2" value="`$tmp.mcc`"/> - <parameter name="field3" value="MNC "/> - <parameter name="field4" value="`$tmp.mnc`"/> - <parameter name="field5" value="Calculated uLThptPerSlice "/> - <parameter name="field6" value="`$tmp.uLThptPerSlice`"/> - <parameter name="field7" value="Calculated dLThptPerSlice "/> - <parameter name="field8" value="`$tmp.dLThptPerSlice`"/> - <parameter name="field9" value="Calculated maxNumberOfConns "/> - <parameter name="field10" value="`$tmp.maxNumberOfConns`"/> - </record> - <block atomic='true'> - <set> - <parameter name='tmp.maxNumberOfConnsPercellCU' value='`$tmp.maxNumberOfConns / $tmp.cellCUListEntries`' /> - </set> - <set> - <parameter name='tmp.rRMPolicyDedicatedRatio.CellCU1' value='`$tmp.maxNumberOfConnsPercellCU * 100`' /> - </set> - <set> - <parameter name='tmp.rRMPolicyDedicatedRatio.CellCU' value='`$tmp.rRMPolicyDedicatedRatio.CellCU1 / $prop.nrcellcu.maxNumberOfConnsPerCell`' /> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="rRMPolicyDedicatedRatio for CellCU "/> - <parameter name="field2" value="`$tmp.rRMPolicyDedicatedRatio.CellCU`"/> - <parameter name="field3" value="maxNumberOfConnsPercellCU "/> - <parameter name="field4" value="`$tmp.maxNumberOfConnsPercellCU`"/> - <parameter name="field5" value="rRMPolicyDedicatedRatio.CellCU1 "/> - <parameter name="field6" value="`$tmp.rRMPolicyDedicatedRatio.CellCU1`"/> - </record> - </block> - <for index='id3' start='0' end='`$getListofCells-configdb-response._length `' > - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.cellLocalId' /> - <parameter name='source' value="`'getListofCells-configdb-response.[' + $id3 + ']'`" /> - </execute> - <for index='idCell' start='0' end='`$tmp.cellCUListEntries `' > - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.gNBCUCPList.cellLocalId' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].cellCUList[' + $idCell + '].cellLocalId'`" /> - </execute> - <switch test="`$tmp.gNBCUCPList.cellLocalId == $tmp.cellLocalId`"> - <outcome value='true'> - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setPropertiesForList'> - <parameter name='prefixKey' value='tmp.CUCPList.response' /> - <parameter name='keyName' value='gNBCUName' /> - <parameter name='keyValue' value="`$tmp.gNBCUCPList.gNBCUName`"/> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='CUCPListEntries_size' /> - <parameter name='source' value="`tmp.CUCPList.response_length`" /> - </execute> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="CUCPList length"/> - <parameter name="field2" value="`$CUCPListEntries_size`"/> - </record> - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.pLMNInfoListEntries' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].cellCUList[' + $id3 + '].pLMNInfoList_length'`" /> - </execute> - </block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Numberof pLMNInfoList Entries "/> - <parameter name="field2" value="`$tmp.pLMNInfoListEntries`"/> - <parameter name="field3" value="cellLocalId from Relevant cells "/> - <parameter name="field4" value="`$tmp.cellLocalId`"/> - </record> - <for index='id4' start='0' end='`$tmp.pLMNInfoListEntries`' > - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.fromRAN.sNSSAI' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $id3 + '].pLMNInfoList[' + $id4 + '].sNSSAI.sNSSAI'`" /> - </execute> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="sNSSAI from RAN to check if already exists "/> - <parameter name="field2" value="`$tmp.fromRAN.sNSSAI`"/> - </record> - </block> - </for> - <block atomic='true'> - <switch test='`$prop.ransim-mounted`'> - <outcome value='false'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellCU`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/> - <parameter name="target" value="{idNearRTRIC}"/> - <parameter name="replacement" value="`$tmp.nearRTRICId`"/> - </execute> - </outcome> - <outcome value='true'> - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellCU.ransim-mounted`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/> - <parameter name="target" value="{idNearRTRIC}"/> - <parameter name="replacement" value="`$tmp.nearRTRICId`"/> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/> - <parameter name="target" value="{mountName}"/> - <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/> - </execute> - </block> - </outcome> - </switch> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/> - <parameter name="target" value="{idGNBCUCPFunction}"/> - <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/> - <parameter name="target" value="{idNRCellCU}"/> - <parameter name="replacement" value="`$tmp.cellLocalId`"/> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/> - <parameter name="target" value="{mcc}"/> - <parameter name="replacement" value="`$tmp.mcc`"/> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/> - <parameter name="target" value="{mnc}"/> - <parameter name="replacement" value="`$tmp.mnc`"/> - </execute> - <set> - <parameter name='tmp.maxNumberOfConns' value='`$tmp.payload.maxNumberofConns/$tmp.cellCUListEntries`'/> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Add PLMNInfoListEntry ToNRCellCU URL"/> - <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> - </record> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Setting variables for PLMNInfoList Entry Add to NRCellCU"/> - <parameter name="field2" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> - <parameter name="field3" value="`$tmp.mcc`"/> - <parameter name="field4" value="`$tmp.mnc`"/> - <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/> - <parameter name="field6" value="`$tmp.uLThptPerSlice`"/> - <parameter name="field7" value="`$tmp.dLThptPerSlice`"/> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-get-PLMNInfoListEntry-NRCellCU.json'`" /> - <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> - <parameter name="restapiUser" value="`$prop.controller.user`" /> - <parameter name="restapiPassword" value="`$prop.controller.pwd`"/> - <parameter name="httpMethod" value="PUT"/> - <parameter name="responsePrefix" value="PLMNInfoListEntry-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <outcome value='failure'> - <block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error adding PLMNInfoList Entry to NRCellCU" /> - </return> - <block atomic='true'> - <set> - <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> - <parameter name="tmp.status" value="`$error-code`"/> - <parameter name="tmp.reason" value="`$error-message`"/> - <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> - <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="URL for SO Callback Response"/> - <parameter name='field2' value="`$tmp.so.callbackURL`" /> - <parameter name='field3' value="`$tmp.status`" /> - <parameter name='field4' value="`$tmp.reason`" /> - <parameter name='field5' value="`$tmp.requestID`" /> - <parameter name='field6' value="`$tmp.action`" /> - <parameter name='field7' value="`$tmp.CUCPList`" /> - <parameter name='field8' value="`$tmp.CUUPList`" /> - <parameter name='field9' value="`$tmp.DUList`" /> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> - <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> - <parameter name="httpMethod" value="POST"/> - <parameter name="responsePrefix" value="so-callback-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='*/*' /> - <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> - <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> - <outcome value='failure'> - <block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error sending SO Response" /> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="SO Response Sent "/> - </record> - </block> - </outcome> - </execute> - </block> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="PLMNInfo List Entry Add to NRCELLCU Executed Successfully "/> - </record> - </block> - </outcome> - </execute> - </block> - <block atomic='true'> - <switch test='`$prop.ransim-mounted`'> - <outcome value='false'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellCU`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/> - <parameter name="target" value="{idNearRTRIC}"/> - <parameter name="replacement" value="`$tmp.nearRTRICId`"/> - </execute> - </outcome> - <outcome value='true'> - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellCU.ransim-mounted`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/> - <parameter name="target" value="{idNearRTRIC}"/> - <parameter name="replacement" value="`$tmp.nearRTRICId`"/> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/> - <parameter name="target" value="{mountName}"/> - <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/> - </execute> - </block> - </outcome> - </switch> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/> - <parameter name="target" value="{idGNBCUCPFunction}"/> - <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/> - <parameter name="target" value="{idNRCellCU}"/> - <parameter name="replacement" value="`$tmp.cellLocalId`"/> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/> - <parameter name="target" value="{id}"/> - <parameter name="replacement" value="`$tmp.RRMPolicyRatioID.NRCellCU`"/> - </execute> - <set> - <parameter name='tmp.resourceID' value='`$tmp.cellLocalId`'/> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="addRRMPolicyRatio ToNRCellCU URL"/> - <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/> - </record> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Setting variables for addRRMPolicyRatio to NRCellCU"/> - <parameter name="field2" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToNRCellCU.url`"/> - <parameter name="field3" value="`$tmp.mcc`"/> - <parameter name="field4" value="`$tmp.mnc`"/> - <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/> - <parameter name="field6" value="`$tmp.uLThptPerSlice`"/> - <parameter name="field7" value="`$tmp.dLThptPerSlice`"/> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-RRMPolicyRatio-NRCellCU.json'`" /> - <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToNRCellCU.url`"/> - <parameter name="restapiUser" value="`$prop.controller.user`" /> - <parameter name="restapiPassword" value="`$prop.controller.pwd`"/> - <parameter name="httpMethod" value="PUT"/> - <parameter name="responsePrefix" value="addRRMPolicyRatio-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <outcome value='failure'> - <block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error adding RRMPolicyr" /> - </return> - <block atomic='true'> - <set> - <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> - <parameter name="tmp.status" value="`$error-code`"/> - <parameter name="tmp.reason" value="`$error-message`"/> - <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> - <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="URL for SO Callback Response"/> - <parameter name='field2' value="`$tmp.so.callbackURL`" /> - <parameter name='field3' value="`$tmp.status`" /> - <parameter name='field4' value="`$tmp.reason`" /> - <parameter name='field5' value="`$tmp.requestID`" /> - <parameter name='field6' value="`$tmp.action`" /> - <parameter name='field7' value="`$tmp.CUCPList`" /> - <parameter name='field8' value="`$tmp.CUUPList`" /> - <parameter name='field9' value="`$tmp.DUList`" /> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> - <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> - <parameter name="httpMethod" value="POST"/> - <parameter name="responsePrefix" value="so-callback-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='*/*' /> - <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> - <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> - <outcome value='failure'> - <block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error sending SO Response" /> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="SO Response Sent "/> - </record> - </block> - </outcome> - </execute> - </block> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="addRRMPolicyRatio to NRCELLCU Executed Successfully "/> - </record> - </block> - </outcome> - </execute> - </block> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updategNBCUCP`"/> - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updategNBCUCP.json'`" /> - <parameter name="httpMethod" value="PUT"/> - <parameter name="responsePrefix" value="update-gNBCUCP-configdb-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='application/json' /> - <parameter name="convertResponse" value="true"/> - <outcome value='failure'> - <block> - <set> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating configCUCP info in ConfigDB. Aborting RPC executiopn'/> - </set> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/> - </return> - <block atomic='true'> - <set> - <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> - <parameter name="tmp.status" value="`$error-code`"/> - <parameter name="tmp.reason" value="`$error-message`"/> - <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> - <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="URL for SO Callback Response"/> - <parameter name='field2' value="`$tmp.so.callbackURL`" /> - <parameter name='field3' value="`$tmp.status`" /> - <parameter name='field4' value="`$tmp.reason`" /> - <parameter name='field5' value="`$tmp.requestID`" /> - <parameter name='field6' value="`$tmp.action`" /> - <parameter name='field7' value="`$tmp.CUCPList`" /> - <parameter name='field8' value="`$tmp.CUUPList`" /> - <parameter name='field9' value="`$tmp.DUList`" /> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> - <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> - <parameter name="httpMethod" value="POST"/> - <parameter name="responsePrefix" value="so-callback-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='*/*' /> - <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> - <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> - <outcome value='failure'> - <block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error sending SO Response" /> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="SO Response Sent "/> - </record> - </block> - </outcome> - </execute> - </block> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Successfully Updated gNBCUCP info in ConfigDB"/> - </record> - </block> - </outcome> - </execute> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateRRMPolicy`"/> - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateRRMPolicy-CUCP.json'`" /> - <parameter name="httpMethod" value="PUT"/> - <parameter name="responsePrefix" value="update-gNBCUCP-rrmpolicy-configdb-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='application/json' /> - <parameter name="convertResponse" value="true"/> - <outcome value='failure'> - <block> - <block atomic='true'> - <set> - <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> - <parameter name="tmp.status" value="`$error-code`"/> - <parameter name="tmp.reason" value="`$error-message`"/> - <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> - <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="URL for SO Callback Response"/> - <parameter name='field2' value="`$tmp.so.callbackURL`" /> - <parameter name='field3' value="`$tmp.status`" /> - <parameter name='field4' value="`$tmp.reason`" /> - <parameter name='field5' value="`$tmp.requestID`" /> - <parameter name='field6' value="`$tmp.action`" /> - <parameter name='field7' value="`$tmp.CUCPList`" /> - <parameter name='field8' value="`$tmp.CUUPList`" /> - <parameter name='field9' value="`$tmp.DUList`" /> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> - <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> - <parameter name="httpMethod" value="POST"/> - <parameter name="responsePrefix" value="so-callback-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='*/*' /> - <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> - <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> - <outcome value='failure'> - <block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error sending SO Response" /> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="SO Response Sent "/> - </record> - </block> - </outcome> - </execute> - </block> - <set> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating RRMPolicy CUCP info in ConfigDB. Aborting RPC executiopn'/> - </set> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating RRMPolicy CUCP info in ConfigDB. Aborting RPC executiopn'/> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <set> - <parameter name='prop.configDB.rrmPolicyID' value='`$prop.configDB.rrmPolicyID + 1`' /> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Successfully Updated RRMPolicy CUCP info in ConfigDB"/> - <parameter name="field2" value="Incremented ConfigDB rrmPolicyID"/> - <parameter name="field3" value='`$prop.configDB.rrmPolicyID`' /> - </record> - </block> - </outcome> - </execute> - </block> - </outcome> - </switch> - </block> - </for> - </for> - </for> - </block> - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.CUUPListEntries' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList_length'`" /> - </execute> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="getListofCells-configdb-response. "/> - <parameter name="field2" value="`$tmp.CUUPListEntries`"/> - </record> <block atomic='true'> - <set> - <parameter name='tmp.maxNumberOfConns-CUUP' value='`$tmp.payload.maxNumberofConns/$tmp.cellCUListEntries`' /> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="maxNumberOfConns.CUUP "/> - <parameter name="field2" value="`$tmp.maxNumberOfConns-CUUP`"/> - </record> - <set> - <parameter name='tmp.TotalNumberOfDRBForNSSAI' value='`$tmp.maxNumberOfConns-CUUP*4`' /> - </set> - <set> - <parameter name='tmp.DRBPerCUUPForSNSSAI' value='`$tmp.TotalNumberOfDRBForNSSAI / $tmp.CUUPListEntries`' /> - </set> - <set> - <parameter name='tmp.rRMPolicyDedicatedRatio.CUUP1' value='`$tmp.DRBPerCUUPForSNSSAI * 100`' /> - </set> - <set> - <parameter name='tmp.rRMPolicyDedicatedRatio.CUUP' value='`$tmp.rRMPolicyDedicatedRatio.CUUP1 / $prop.cuupfunction.maxNumberOfDRBsPerCUUP`' /> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="rRMPolicyDedicatedRatio for CUUP "/> - <parameter name="field2" value="`$tmp.rRMPolicyDedicatedRatio.CUUP`"/> - <parameter name="field3" value="tmp.TotalNumberOfDRBForNSSAI "/> - <parameter name="field4" value="`$tmp.TotalNumberOfDRBForNSSAI`"/> - <parameter name="field5" value="tmp.DRBPerCUUPForSNSSAI "/> - <parameter name="field6" value="`$tmp.DRBPerCUUPForSNSSAI`"/> - <parameter name="field7" value="tmp.rRMPolicyDedicatedRatio.CUUP1 "/> - <parameter name="field8" value="`$tmp.rRMPolicyDedicatedRatio.CUUP1`"/> - <parameter name="field9" value="tmp.rRMPolicyDedicatedRatio.CUUP"/> - <parameter name="field10" value="`$tmp.rRMPolicyDedicatedRatio.CUUP`"/> - <parameter name="field11" value="tmp.maxNumberOfConns"/> - <parameter name="field12" value="`$tmp.maxNumberOfConns-CUUP`"/> - </record> - </block> - <for index='id2' start='0' end='`$tmp.CUUPListEntries `' > - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.gNBCUUPList.gNBCUUPId' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].gNBCUUPId'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.gNBCUUPList.gNBId' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].gNBId'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.gNBCUUPList.gNBIdLength' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].gNBIdLength'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.pLMNInfoListEntries' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].pLMNInfoList_length'`" /> - </execute> - </block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="CUCP Details "/> - <parameter name="field2" value="`$tmp.gNBCUUPList.gNBCUUPId`"/> - <parameter name="field3" value="`$tmp.gNBCUUPList.gNBId`"/> - <parameter name="field4" value="`$tmp.gNBCUUPList.gNBIdLength`"/> - <parameter name="field5" value="`$tmp.gNBCUUPList.pLMNInfoList_length`"/> - <parameter name="field6" value="`$tmp.payload.pLMNId`"/> - </record> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="MCC "/> - <parameter name="field2" value="`$tmp.mcc`"/> - <parameter name="field3" value="MNC "/> - <parameter name="field4" value="`$tmp.mnc`"/> - <parameter name="field5" value="Calculated uLThptPerSlice "/> - <parameter name="field6" value="`$tmp.uLThptPerSlice`"/> - <parameter name="field7" value="Calculated dLThptPerSlice "/> - <parameter name="field8" value="`$tmp.dLThptPerSlice`"/> - </record> - <for index='id4' start='0' end='`$tmp.pLMNInfoListEntries`' > - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.fromRAN.sNSSAI' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].pLMNInfoList[' + $id3 + '].sNSSAI'`" /> - </execute> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="sNSSAI from RAN to check if already exists "/> - <parameter name="field2" value="`$tmp.fromRAN.sNSSAI`"/> - </record> - </block> - </for> <block atomic='true'> - <switch test='`$prop.ransim-mounted`'> - <outcome value='false'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToGNBCUUPFn`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/> - <parameter name="target" value="{idNearRTRIC}"/> - <parameter name="replacement" value="`$tmp.nearRTRICId`"/> - </execute> - </outcome> - <outcome value='true'> - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToGNBCUUPFn.ransim-mounted`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/> - <parameter name="target" value="{idNearRTRIC}"/> - <parameter name="replacement" value="`$tmp.nearRTRICId`"/> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/> - <parameter name="target" value="{mountName}"/> - <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/> - </execute> - </block> - </outcome> - </switch> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/> - <parameter name="target" value="{idGNBCUUPFunction}"/> - <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/> - <parameter name="target" value="{mcc}"/> - <parameter name="replacement" value="`$tmp.mcc`"/> - </execute> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/> - <parameter name="target" value="{mnc}"/> - <parameter name="replacement" value="`$tmp.mnc`"/> + <parameter name="source" value="`$prop.restapi.configdb.getListOfCells`"/> + <parameter name="outputPath" value="tmp.configdb.getListOfCells.url"/> + <parameter name="target" value="{trackingArea}"/> + <parameter name="replacement" value="`$tmp.payload.trackingArea`"/> </execute> - <set> - <parameter name='tmp.maxNumberOfConns' value='`$tmp.payload.maxNumberofConns/$tmp.cellCUListEntries`'/> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Add PLMNInfoListEntry ToGNBCUUPFn URL"/> - <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/> - </record> <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="Setting variables for PLMNInfoList Entry Add to NRCellCU"/> - <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> - <parameter name="field3" value="`$tmp.mcc`"/> - <parameter name="field4" value="`$tmp.mnc`"/> - <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/> - <parameter name="field6" value="`$tmp.uLThptPerSlice`"/> - <parameter name="field7" value="`$tmp.dLThptPerSlice`"/> + <parameter name="field1" value="URL for configDB Get getListOfCells for tracking area"/> + <parameter name='field2' value="`$prop.configdb.url + $tmp.configdb.getListOfCells.url`" /> + <parameter name='field3' value="`$tmp.payload.trackingArea`" /> </record> <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-get-PLMNInfoListEntry-GNBCUUPFn.json'`" /> - <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/> - <parameter name="restapiUser" value="`$prop.controller.user`" /> - <parameter name="restapiPassword" value="`$prop.controller.pwd`"/> - <parameter name="httpMethod" value="PUT"/> - <parameter name="responsePrefix" value="PLMNInfoListEntry-response"/> + <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getListOfCells.url`"/> + <parameter name="httpMethod" value="GET"/> + <parameter name="responsePrefix" value="getListofCells-configdb-response"/> <parameter name='contentType' value='application/json' /> <parameter name='format' value='json' /> + <parameter name='accept' value='application/json' /> <outcome value='failure'> <block> + <set> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/> + </set> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/> + </return> <block atomic='true'> <set> <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> @@ -1311,11 +213,6 @@ </outcome> </execute> </block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error adding PLMNInfoList Entry to GNBCUUPFn" /> - </return> </block> </outcome> <outcome value='success'> @@ -1323,87 +220,203 @@ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="PLMNInfo List Entry Add Executed Successfully "/> + <parameter name="field1" value="Successfully Obtained List of Cells from ConfigDB"/> + <parameter name="field2" value="`$getListofCells-configdb-response._length`"/> + <parameter name="field3" value="List of Cells in the Tracking Area Relevant for RAN Slice Instantiation "/> </record> + <for index='idx' start='0' end='`$getListofCells-configdb-response._length `' > + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.trackingarea.cell' /> + <parameter name='source' value="`'getListofCells-configdb-response.[' + $ids + ']'`" /> + </execute> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="`$tmp.trackingarea.cell`"/> + </record> + </for> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' > + <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' /> + </execute> </block> </outcome> </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setPropertiesForList'> - <parameter name='prefixKey' value='tmp.CUUPList.response' /> - <parameter name='keyName' value='gNBCUUPId' /> - <parameter name='keyValue' value="`$tmp.gNBCUUPList.gNBCUUPId`"/> - </execute> </block> + </block> + <for index='id1' start='0' end="`$getRIC-configdb-response._length`" > + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.nearRTRICId' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].nearRTRICId'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.gNBId' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBId'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.ranNFNSSIListEntry' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].ranNFNSSIList[0]'`" /> + </execute> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Config Payload Entry# "/> + <parameter name="field2" value="`$id1`"/> + <parameter name="field3" value="`$tmp.nearRTRICId`"/> + <parameter name="field4" value="`$tmp.gNBId`"/> + <parameter name="field5" value="`$tmp.ranNFNSSIListEntry`"/> + </record> <block atomic='true'> - <switch test='`$prop.ransim-mounted`'> - <outcome value='false'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToGNBCUUPFn`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/> - <parameter name="target" value="{idNearRTRIC}"/> - <parameter name="replacement" value="`$tmp.nearRTRICId`"/> - </execute> - </outcome> - <outcome value='true'> - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToGNBCUUPFn.ransim-mounted`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/> - <parameter name="target" value="{idNearRTRIC}"/> - <parameter name="replacement" value="`$tmp.nearRTRICId`"/> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/> - <parameter name="target" value="{mountName}"/> - <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/> - </execute> - </block> - </outcome> - </switch> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/> - <parameter name="target" value="{idGNBCUUPFunction}"/> - <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/> - <parameter name="target" value="{id}"/> - <parameter name="replacement" value="`$tmp.RRMPolicyRatioID.GNBCUUPFunction`"/> - </execute> - <set> - <parameter name='tmp.resourceID' value='`$tmp.gNBCUUPList.gNBCUUPId`'/> - </set> <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="addRRMPolicyRatio ToGNBCUUPFn URL"/> - <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/> + <parameter name="field1" value="Payload slice parameters - maxNumberofUEs "/> + <parameter name="field2" value="`$payloadJson.input.sliceProfile.maxNumberofUEs`"/> + <parameter name="field3" value="Payload slice parameters - maxNumberofConns"/> + <parameter name="field4" value="`$payloadJson.input.sliceProfile.maxNumberofConns`"/> + <parameter name="field5" value="Payload slice parameters - dLThptPerSlice"/> + <parameter name="field6" value="`$payloadJson.input.sliceProfile.dLThptPerSlice`"/> + <parameter name="field7" value="Payload slice parameters - uLThptPerSlice"/> + <parameter name="field8" value="`$payloadJson.input.sliceProfile.uLThptPerSlice`"/> </record> + <set> + <parameter name='tmp.nearRTRIC.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`' /> + <parameter name='tmp.nearRTRIC.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`' /> + </set> + <set> + <parameter name='tmp.nearRTRIC.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberofConns`' /> + <parameter name='tmp.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberofConns`' /> + <parameter name='tmp.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`' /> + <parameter name='tmp.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`' /> + </set> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' > + <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-sliceparms-context.log' /> + </execute> <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="Setting variables for addRRMPolicyRatio to GNBCUUPFn"/> - <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/> - <parameter name="field3" value="`$tmp.mcc`"/> - <parameter name="field4" value="`$tmp.mnc`"/> - <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/> - <parameter name="field6" value="`$tmp.uLThptPerSlice`"/> - <parameter name="field7" value="`$tmp.dLThptPerSlice`"/> + <parameter name="field1" value="Calculated uLThptPerSlice for nearRTRIC "/> + <parameter name="field2" value="`$tmp.nearRTRIC.uLThptPerSlice`"/> + <parameter name="field3" value="Calculated dLThptPerSlice for nearRTRIC"/> + <parameter name="field4" value="`$tmp.nearRTRIC.dLThptPerSlice`"/> + <parameter name="field5" value="Calculated maxNumberOfConns for nearRTRIC"/> + <parameter name="field6" value="`$tmp.nearRTRIC1.maxNumberOfConns`"/> + <parameter name="field7" value="`$payloadJson.input.sliceProfile.maxNumberofConns`"/> </record> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' > + <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-sliceparms-context2.log' /> + </execute> + <block atomic='true'> + <switch test='`$prop.ransim-mounted`'> + <outcome value='false'> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$prop.restapi.addSliceProfile.ToNearRTRIC`"/> + <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/> + <parameter name="target" value="{idNearRTRIC}"/> + <parameter name="replacement" value="`$tmp.nearRTRICId`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/> + <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/> + <parameter name="target" value="{sliceProfileId}"/> + <parameter name="replacement" value="`$payloadJson.input.sliceProfile.sliceProfileId`"/> + </execute> + </block> + </outcome> + <outcome value='true'> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$prop.restapi.addSliceProfile.ToNearRTRIC.ransim-mounted`"/> + <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/> + <parameter name="target" value="{idNearRTRIC}"/> + <parameter name="replacement" value="`$tmp.nearRTRICId`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/> + <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/> + <parameter name="target" value="{sliceProfileId}"/> + <parameter name="replacement" value="`$payloadJson.input.sliceProfile.sliceProfileId`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/> + <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/> + <parameter name="target" value="{mountName}"/> + <parameter name="replacement" value="`$tmp.nearRTRICId`"/> + </execute> + </block> + </outcome> + </switch> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Add SliceProfile ToNearRTRIC url:"/> + <parameter name="field2" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/> + </record> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Setting variables for ADD SliceProfile ToNearRTRIC"/> + <parameter name="field2" value="`$prop.controller.url + $tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/> + <parameter name="field3" value="`$payloadJson.input.sliceProfile.sliceProfileId`"/> + <parameter name="field4" value="`$payloadJson.input.sliceProfile.sNSSAI`"/> + <parameter name="field5" value="`$payloadJson.input.sliceProfile.maxNumberofUEs`"/> + <parameter name="field6" value="`$payloadJson.input.sliceProfile.latency`"/> + <parameter name="field7" value="`$tmp.nearRTRIC.uLThptPerSlice`"/> + <parameter name="field8" value="`$tmp.nearRTRIC.dLThptPerSlice`"/> + <parameter name="field9" value="`$tmp.nearRTRIC.maxNumberOfConns`"/> + <parameter name="field10" value="`$payloadJson.input.sliceProfile.uEMobilityLevel`"/> + <parameter name="field11" value="`$tmp.trackingArea`"/> + <parameter name="field12" value="`$payloadJson.input.sliceProfile.resourceSharingLevel`"/> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-sliceProfile-NRRIC.json'`" /> + <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/> + <parameter name="restapiUser" value="`$prop.controller.user`" /> + <parameter name="restapiPassword" value="`$prop.controller.pwd`"/> + <parameter name="httpMethod" value="PUT"/> + <parameter name="responsePrefix" value="addSliceProfile-NRTRIC-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <outcome value='failure'> + <block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error adding slice proficle to NearRTRIC" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="PLMNInfo List Entry Add to NRCELLCU Executed Successfully "/> + </record> + </block> + </outcome> + </execute> + </block> <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-RRMPolicyRatio-GNBCUUPFn.json'`" /> - <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/> - <parameter name="restapiUser" value="`$prop.controller.user`" /> - <parameter name="restapiPassword" value="`$prop.controller.pwd`"/> + <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updatenearRTRIC`"/> + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updatenearRTRIC.json'`" /> <parameter name="httpMethod" value="PUT"/> - <parameter name="responsePrefix" value="addRRMPolicyRatio-response"/> + <parameter name="responsePrefix" value="update-nearRTRIC-configdb-response"/> <parameter name='contentType' value='application/json' /> <parameter name='format' value='json' /> + <parameter name='accept' value='application/json' /> + <parameter name="convertResponse" value="true"/> <outcome value='failure'> <block> + <set> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/> + </set> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/> + </return> <block atomic='true'> <set> <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> @@ -1455,11 +468,6 @@ </outcome> </execute> </block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error adding RRMPolicy" /> - </return> </block> </outcome> <outcome value='success'> @@ -1467,349 +475,164 @@ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="addRRMPolicyRatio Executed Successfully "/> + <parameter name="field1" value="Successfully Updated NearRT RIC info in ConfigDB"/> </record> </block> </outcome> </execute> </block> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updategNBCUUP`"/> - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updategNBCUUP.json'`" /> - <parameter name="httpMethod" value="PUT"/> - <parameter name="responsePrefix" value="update-gNBCUUP-configdb-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='application/json' /> - <parameter name="convertResponse" value="true"/> - <outcome value='failure'> - <block> - <block atomic='true'> - <set> - <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> - <parameter name="tmp.status" value="`$error-code`"/> - <parameter name="tmp.reason" value="`$error-message`"/> - <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> - <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="URL for SO Callback Response"/> - <parameter name='field2' value="`$tmp.so.callbackURL`" /> - <parameter name='field3' value="`$tmp.status`" /> - <parameter name='field4' value="`$tmp.reason`" /> - <parameter name='field5' value="`$tmp.requestID`" /> - <parameter name='field6' value="`$tmp.action`" /> - <parameter name='field7' value="`$tmp.CUCPList`" /> - <parameter name='field8' value="`$tmp.CUUPList`" /> - <parameter name='field9' value="`$tmp.DUList`" /> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> - <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> - <parameter name="httpMethod" value="POST"/> - <parameter name="responsePrefix" value="so-callback-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='*/*' /> - <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> - <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> - <outcome value='failure'> - <block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error sending SO Response" /> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="SO Response Sent "/> - </record> - </block> - </outcome> - </execute> - </block> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.CUCPListEntries' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList_length'`" /> + </execute> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Number of CUCP List Entries "/> + <parameter name="field2" value="`$tmp.CUCPListEntries`"/> + </record> + <set> + <parameter name='tmp.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberofConns`' /> + <parameter name='tmp.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`' /> + <parameter name='tmp.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`' /> + </set> + <for index='id2' start='0' end='`$tmp.CUCPListEntries`' > + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.cellCUListEntries' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].cellCUList_length'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.gNBCUCPList.gNBCUName' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].gNBCUName'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.gNBCUCPList.gNBId' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].gNBId'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.gNBCUCPList.gNBIdLength' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].gNBIdLength'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.gNBCUCPList.nFType' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].nFType'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.gNBCUCPList.pLMNId' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].pLMNId'`" /> + </execute> + </block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Numberof cellCU of Entries "/> + <parameter name="field2" value="`$tmp.cellCUListEntries`"/> + <parameter name="field3" value="`$tmp.gNBCUCPList.gNBCUName`"/> + <parameter name="field4" value="`$tmp.gNBCUCPList.gNBId`"/> + <parameter name="field5" value="`$tmp.gNBCUCPList.gNBIdLengthh`"/> + <parameter name="field6" value="`$tmp.gNBCUCPList.nFType`"/> + <parameter name="field7" value="`$tmp.gNBCUCPList.pLMNId`"/> + </record> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="MCC "/> + <parameter name="field2" value="`$tmp.mcc`"/> + <parameter name="field3" value="MNC "/> + <parameter name="field4" value="`$tmp.mnc`"/> + <parameter name="field5" value="Calculated uLThptPerSlice "/> + <parameter name="field6" value="`$tmp.uLThptPerSlice`"/> + <parameter name="field7" value="Calculated dLThptPerSlice "/> + <parameter name="field8" value="`$tmp.dLThptPerSlice`"/> + <parameter name="field9" value="Calculated maxNumberOfConns "/> + <parameter name="field10" value="`$tmp.maxNumberOfConns`"/> + </record> + <block atomic='true'> <set> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating configCUUP info in ConfigDB. Aborting RPC executiopn'/> + <parameter name='tmp.maxNumberOfConnsPercellCU' value='`$tmp.maxNumberOfConns / $tmp.cellCUListEntries`' /> </set> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating CUUP info in ConfigDB. Aborting RPC executiopn'/> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Successfully Updated gNBCUUP info in ConfigDB"/> - </record> - </block> - </outcome> - </execute> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateRRMPolicy`"/> - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateRRMPolicy-CUUP.json'`" /> - <parameter name="httpMethod" value="PUT"/> - <parameter name="responsePrefix" value="update-gNBCUUP-rrmpolicy-configdb-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='application/json' /> - <parameter name="convertResponse" value="true"/> - <outcome value='failure'> - <block> - <block atomic='true'> - <set> - <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> - <parameter name="tmp.status" value="`$error-code`"/> - <parameter name="tmp.reason" value="`$error-message`"/> - <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> - <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="URL for SO Callback Response"/> - <parameter name='field2' value="`$tmp.so.callbackURL`" /> - <parameter name='field3' value="`$tmp.status`" /> - <parameter name='field4' value="`$tmp.reason`" /> - <parameter name='field5' value="`$tmp.requestID`" /> - <parameter name='field6' value="`$tmp.action`" /> - <parameter name='field7' value="`$tmp.CUCPList`" /> - <parameter name='field8' value="`$tmp.CUUPList`" /> - <parameter name='field9' value="`$tmp.DUList`" /> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> - <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> - <parameter name="httpMethod" value="POST"/> - <parameter name="responsePrefix" value="so-callback-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='*/*' /> - <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> - <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> - <outcome value='failure'> - <block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error sending SO Response" /> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="SO Response Sent "/> - </record> - </block> - </outcome> - </execute> - </block> <set> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating RRMPolicy CUUP info in ConfigDB. Aborting RPC executiopn'/> + <parameter name='tmp.rRMPolicyDedicatedRatio.CellCU1' value='`$tmp.maxNumberOfConnsPercellCU * 100`' /> </set> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating RRMPolicy CUUP info in ConfigDB. Aborting RPC executiopn'/> - </return> - </block> - </outcome> - <outcome value='success'> - <block> <set> - <parameter name='prop.configDB.rrmPolicyID' value='`$prop.configDB.rrmPolicyID + 1`' /> + <parameter name='tmp.rRMPolicyDedicatedRatio.CellCU' value='`$tmp.rRMPolicyDedicatedRatio.CellCU1 / $prop.nrcellcu.maxNumberOfConnsPerCell`' /> </set> <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="Successfully Updated RRMPolicy CUUP info in ConfigDB"/> - <parameter name="field2" value="Incremented ConfigDB rrmPolicyID"/> - <parameter name="field3" value='`$prop.configDB.rrmPolicyID`' /> + <parameter name="field1" value="rRMPolicyDedicatedRatio for CellCU "/> + <parameter name="field2" value="`$tmp.rRMPolicyDedicatedRatio.CellCU`"/> + <parameter name="field3" value="maxNumberOfConnsPercellCU "/> + <parameter name="field4" value="`$tmp.maxNumberOfConnsPercellCU`"/> + <parameter name="field5" value="rRMPolicyDedicatedRatio.CellCU1 "/> + <parameter name="field6" value="`$tmp.rRMPolicyDedicatedRatio.CellCU1`"/> </record> </block> - </outcome> - </execute> - </for> - </block> - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.DUListEntries' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList_length'`" /> - </execute> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Number of DU List Entries "/> - <parameter name="field2" value="`$tmp.DUListEntries`"/> - </record> - <block atomic='true'> - <set> - <parameter name='tmp.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`' /> - </set> - <set> - <parameter name='tmp.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`' /> - </set> - <set> - <parameter name='tmp.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberOfConns`' /> - </set> - <set> - <parameter name='tmp.nearRTRIC.trafficCapacity1' value='`$tmp.uLThptPerSlice + $tmp.dLThptPerSlice`' /> - </set> - <set> - <parameter name='tmp.nearRTRIC.trafficCapacity' value='`$tmp.nearRTRIC.trafficCapacity1 / 2`' /> - </set> - <set> - <parameter name='tmp.nearRTRIC.trafficCapacityBPS' value='`$tmp.nearRTRIC.trafficCapacity * 1000000`' /> - </set> - <set> - <parameter name='tmp.nrcelldu.totalPRBForSNSSAI' value='`$tmp.nearRTRIC.trafficCapacityBPS / 1008000`' /> - </set> - <set> - <parameter name='tmp.nrcelldu.PRBPerImpactedCell' value='`$tmp.nrcelldu.totalPRBForSNSSAI / $tmp.DUListEntries`' /> - </set> - <set> - <parameter name='tmp.rRMPolicyDedicatedRatio.CellDU1' value='`$tmp.nrcelldu.PRBPerImpactedCell * 100`' /> - </set> - <set> - <parameter name='tmp.rRMPolicyDedicatedRatio.CellDU' value='`$tmp.rRMPolicyDedicatedRatio.CellDU1 / $prop.nrcelldu.TotalPRBsPerCell`' /> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="rRMPolicyDedicatedRatio for CellDU "/> - <parameter name="field2" value="`$tmp.rRMPolicyDedicatedRatio.CellDU`"/> - <parameter name="field3" value="tmp.nearRTRIC.trafficCapacity1 "/> - <parameter name="field4" value="`$tmp.nearRTRIC.trafficCapacity1`"/> - <parameter name="field5" value="tmp.nearRTRIC.trafficCapacity "/> - <parameter name="field6" value="`$tmp.nearRTRIC.trafficCapacity`"/> - <parameter name="field7" value="tmp.nearRTRIC.trafficCapacityBPS"/> - <parameter name="field8" value="`$tmp.nearRTRIC.trafficCapacityBPS`"/> - <parameter name="field9" value="tmp.nrcelldu.totalPRBForSNSSAI "/> - <parameter name="field10" value="`$tmp.nrcelldu.totalPRBForSNSSAI`"/> - <parameter name="field11" value="tmp.nrcelldu.PRBPerImpactedCell "/> - <parameter name="field12" value="`$tmp.nrcelldu.PRBPerImpactedCell`"/> - <parameter name="field13" value="tmp.rRMPolicyDedicatedRatio.CellDU1 "/> - <parameter name="field14" value="`$tmp.rRMPolicyDedicatedRatio.CellDU1`"/> - </record> - </block> - <for index='id2' start='0' end='`$tmp.DUListEntries`' > - <block atomic='true'> - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.cellDUListEntries' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList_length'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.gNBDUList.gNBDUId' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBDUId'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.gNBDUName' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBDUName'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.gNBId' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBId'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.gNBIdLength' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBIdLength'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.nFType' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].nFType'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.pLMNId' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].pLMNId'`" /> - </execute> - </block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Numberof cellDU of Entries "/> - <parameter name="field2" value="`$tmp.cellDUListEntries`"/> - <parameter name="field3" value="`$tmp.gNBDUList.gNBDUId`"/> - <parameter name="field4" value="`$tmp.gNBDUName`"/> - <parameter name="field5" value="`$tmp.gNBId`"/> - <parameter name="field6" value="`$tmp.gNBIdLength`"/> - <parameter name="field7" value="`$tmp.nFType`"/> - <parameter name="field8" value="`$tmp.pLMNId`"/> - </record> - <for index='id3' start='0' end='`$getListofCells-configdb-response._length `' > - <block atomic='true'> - <for index='idCell' start='0' end='`$tmp.cellDUListEntries`' > - <block atomic='true'> - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.pLMNInfoListEntries' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $idCell + '].pLMNInfoList_length'`" /> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.cellLocalId' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $idCell + '].cellLocalId'`" /> - </execute> - </block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Numberof pLMNInfoList Entries "/> - <parameter name="field2" value="`$tmp.pLMNInfoListEntries`"/> - <parameter name="field3" value="cellLocalId for TA "/> - <parameter name="field4" value="`$tmp.cellLocalId`"/> - </record> - <for index='id4' start='0' end='`$tmp.pLMNInfoListEntries`' > - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.fromRAN.sNSSAI' /> - <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $idCell + '].pLMNInfoList[' + $id4 + '].sNSSAI.sNSSAI'`" /> - </execute> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="sNSSAI from RAN to check if already exists "/> - <parameter name="field2" value="`$tmp.fromRAN.sNSSAI`"/> - </record> - </block> - </for> - </block> + <for index='id3' start='0' end='`$getListofCells-configdb-response._length `' > + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.cellLocalId' /> + <parameter name='source' value="`'getListofCells-configdb-response.[' + $id3 + ']'`" /> + </execute> + <for index='idCell' start='0' end='`$tmp.cellCUListEntries `' > <block atomic='true'> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.gNBDUList.cellLocalId' /> - <parameter name='source' value="`'getListofCells-configdb-response.[' + $id3 + ']'`" /> + <parameter name='outputPath' value='tmp.gNBCUCPList.cellLocalId' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].cellCUList[' + $idCell + '].cellLocalId'`" /> </execute> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="CellLocal ID for comparison -- specific DUList"/> - <parameter name="field2" value="`$tmp.gNBDUList.cellLocalId`"/> - <parameter name="field3" value="CellLocal ID for comparison - overall TA "/> - <parameter name="field4" value="`$tmp.cellLocalId`"/> - </record> - <switch test="`$tmp.gNBDUList.cellLocalId == $tmp.cellLocalId`"> + <switch test="`$tmp.gNBCUCPList.cellLocalId == $tmp.cellLocalId`"> <outcome value='true'> <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setPropertiesForList'> + <parameter name='prefixKey' value='tmp.CUCPList.response' /> + <parameter name='keyName' value='gNBCUName' /> + <parameter name='keyValue' value="`$tmp.gNBCUCPList.gNBCUName`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='CUCPListEntries_size' /> + <parameter name='source' value="`tmp.CUCPList.response_length`" /> + </execute> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="CUCPList length"/> + <parameter name="field2" value="`$CUCPListEntries_size`"/> + </record> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.pLMNInfoListEntries' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].cellCUList[' + $id3 + '].pLMNInfoList_length'`" /> + </execute> + </block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Numberof pLMNInfoList Entries "/> + <parameter name="field2" value="`$tmp.pLMNInfoListEntries`"/> + <parameter name="field3" value="cellLocalId from Relevant cells "/> + <parameter name="field4" value="`$tmp.cellLocalId`"/> + </record> + <for index='id4' start='0' end='`$tmp.pLMNInfoListEntries`' > + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.fromRAN.sNSSAI' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $id3 + '].pLMNInfoList[' + $id4 + '].sNSSAI.sNSSAI'`" /> + </execute> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="sNSSAI from RAN to check if already exists "/> + <parameter name="field2" value="`$tmp.fromRAN.sNSSAI`"/> + </record> + </block> + </for> <block atomic='true'> <switch test='`$prop.ransim-mounted`'> <outcome value='false'> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellDU`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/> + <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellCU`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/> <parameter name="target" value="{idNearRTRIC}"/> <parameter name="replacement" value="`$tmp.nearRTRICId`"/> </execute> @@ -1817,59 +640,58 @@ <outcome value='true'> <block atomic='true'> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellDU.ransim-mounted`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/> + <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellCU.ransim-mounted`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/> <parameter name="target" value="{idNearRTRIC}"/> <parameter name="replacement" value="`$tmp.nearRTRICId`"/> </execute> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/> + <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/> <parameter name="target" value="{mountName}"/> - <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/> + <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/> </execute> </block> </outcome> </switch> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/> - <parameter name="target" value="{idGNBDUFunction}"/> - <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/> + <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/> + <parameter name="target" value="{idGNBCUCPFunction}"/> + <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/> </execute> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/> - <parameter name="target" value="{idNRCellDU}"/> + <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/> + <parameter name="target" value="{idNRCellCU}"/> <parameter name="replacement" value="`$tmp.cellLocalId`"/> </execute> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/> + <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/> <parameter name="target" value="{mcc}"/> <parameter name="replacement" value="`$tmp.mcc`"/> </execute> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> - <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/> + <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/> <parameter name="target" value="{mnc}"/> <parameter name="replacement" value="`$tmp.mnc`"/> </execute> <set> - <parameter name='tmp.uLThptPerSlice' value='`$tmp.payload.uLThptPerSlice/$tmp.cellDUListEntries`'/> - <parameter name='tmp.dLThptPerSlice' value='`$tmp.payload.dLThptPerSlice/$tmp.cellDUListEntries`'/> + <parameter name='tmp.maxNumberOfConns' value='`$tmp.payload.maxNumberofConns/$tmp.cellCUListEntries`'/> </set> <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="Add PLMNInfoListEntry ToNRCellDU URL"/> - <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> + <parameter name="field1" value="Add PLMNInfoListEntry ToNRCellCU URL"/> + <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> </record> <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="Setting variables for PLMNInfoList Entry Add to NRCellDU"/> - <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> + <parameter name="field1" value="Setting variables for PLMNInfoList Entry Add to NRCellCU"/> + <parameter name="field2" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> <parameter name="field3" value="`$tmp.mcc`"/> <parameter name="field4" value="`$tmp.mnc`"/> <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/> @@ -1877,8 +699,8 @@ <parameter name="field7" value="`$tmp.dLThptPerSlice`"/> </record> <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-get-PLMNInfoListEntry-NRCellDU.json'`" /> - <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-get-PLMNInfoListEntry-NRCellCU.json'`" /> + <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/> <parameter name="restapiUser" value="`$prop.controller.user`" /> <parameter name="restapiPassword" value="`$prop.controller.pwd`"/> <parameter name="httpMethod" value="PUT"/> @@ -1887,109 +709,10 @@ <parameter name='format' value='json' /> <outcome value='failure'> <block> - <block atomic='true'> - <set> - <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> - <parameter name="tmp.status" value="`$error-code`"/> - <parameter name="tmp.reason" value="`$error-message`"/> - <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> - <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="URL for SO Callback Response"/> - <parameter name='field2' value="`$tmp.so.callbackURL`" /> - <parameter name='field3' value="`$tmp.status`" /> - <parameter name='field4' value="`$tmp.reason`" /> - <parameter name='field5' value="`$tmp.requestID`" /> - <parameter name='field6' value="`$tmp.action`" /> - <parameter name='field7' value="`$tmp.CUCPList`" /> - <parameter name='field8' value="`$tmp.CUUPList`" /> - <parameter name='field9' value="`$tmp.DUList`" /> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> - <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> - <parameter name="httpMethod" value="POST"/> - <parameter name="responsePrefix" value="so-callback-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='*/*' /> - <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> - <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> - <outcome value='failure'> - <block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error sending SO Response" /> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="SO Response Sent "/> - </record> - </block> - </outcome> - </execute> - </block> <return status='failure'> <parameter name='ack-final' value='Y'/> <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error adding PLMNInfo List Entry to NRCellCUr" /> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="PLMNInfo List Entry Add to NRCELLDU Executed Successfully "/> - </record> - </block> - </outcome> - </execute> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setPropertiesForList'> - <parameter name='prefixKey' value='tmp.DUList.response' /> - <parameter name='keyName' value='gNBDUId' /> - <parameter name='keyValue' value="`$tmp.gNBDUList.gNBDUId`"/> - </execute> - </block> - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updategNBDU`"/> - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updategNBDU.json'`" /> - <parameter name="httpMethod" value="PUT"/> - <parameter name="responsePrefix" value="update-gNBDU-configdb-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='application/json' /> - <parameter name="convertResponse" value="true"/> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Successfully Updated DU info in ConfigDB"/> - </record> - </block> - </outcome> - <outcome value='failure'> - <block> - <set> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating configCUUP info in ConfigDB. Aborting RPC executiopn'/> - </set> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating CUUP info in ConfigDB. Aborting RPC executiopn'/> + <parameter name="error-message" value="Error adding PLMNInfoList Entry to NRCellCU" /> </return> <block atomic='true'> <set> @@ -2014,12 +737,14 @@ </record> <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> - <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/> + <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> <parameter name="httpMethod" value="POST"/> <parameter name="responsePrefix" value="so-callback-response"/> <parameter name='contentType' value='application/json' /> <parameter name='format' value='json' /> - <parameter name='accept' value='application/json' /> + <parameter name='accept' value='*/*' /> + <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> + <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> <outcome value='failure'> <block> <return status='failure'> @@ -2042,103 +767,23 @@ </block> </block> </outcome> - </execute> - <set> - <parameter name='tmp.resourceID-DU' value='`$tmp.cellLocalId`'/> - </set> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateRRMPolicy`"/> - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateRRMPolicy-DU.json'`" /> - <parameter name="httpMethod" value="PUT"/> - <parameter name="responsePrefix" value="update-DU-rrmpolicy-configdb-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='application/json' /> - <parameter name="convertResponse" value="true"/> <outcome value='success'> <block> - <set> - <parameter name='prop.configDB.rrmPolicyID' value='`$prop.configDB.rrmPolicyID + 1`' /> - </set> <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="Successfully Updated RRMPolicy DU info in ConfigDB"/> - <parameter name="field2" value="Incremented ConfigDB rrmPolicyID"/> - <parameter name="field3" value='`$prop.configDB.rrmPolicyID`' /> + <parameter name="field1" value="PLMNInfo List Entry Add to NRCELLCU Executed Successfully "/> </record> </block> </outcome> - <outcome value='failure'> - <block> - <block atomic='true'> - <set> - <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> - <parameter name="tmp.status" value="`$error-code`"/> - <parameter name="tmp.reason" value="`$error-message`"/> - <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> - <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="URL for SO Callback Response"/> - <parameter name='field2' value="`$tmp.so.callbackURL`" /> - <parameter name='field3' value="`$tmp.status`" /> - <parameter name='field4' value="`$tmp.reason`" /> - <parameter name='field5' value="`$tmp.requestID`" /> - <parameter name='field6' value="`$tmp.action`" /> - <parameter name='field7' value="`$tmp.CUCPList`" /> - <parameter name='field8' value="`$tmp.CUUPList`" /> - <parameter name='field9' value="`$tmp.DUList`" /> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> - <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/> - <parameter name="httpMethod" value="POST"/> - <parameter name="responsePrefix" value="so-callback-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='application/json' /> - <outcome value='failure'> - <block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error sending SO Response" /> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="SO Response Sent "/> - </record> - </block> - </outcome> - </execute> - </block> - <set> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating RRMPolicy DU info in ConfigDB. Aborting RPC executiopn'/> - </set> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating RRMPolicy DU info in ConfigDB. Aborting RPC executiopn'/> - </return> - </block> - </outcome> </execute> </block> <block atomic='true'> <switch test='`$prop.ransim-mounted`'> <outcome value='false'> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellDU`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/> + <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellCU`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/> <parameter name="target" value="{idNearRTRIC}"/> <parameter name="replacement" value="`$tmp.nearRTRICId`"/> </execute> @@ -2146,49 +791,52 @@ <outcome value='true'> <block atomic='true'> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellDU.ransim-mounted`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/> + <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellCU.ransim-mounted`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/> <parameter name="target" value="{idNearRTRIC}"/> <parameter name="replacement" value="`$tmp.nearRTRICId`"/> </execute> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/> + <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/> <parameter name="target" value="{mountName}"/> - <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/> + <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/> </execute> </block> </outcome> </switch> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/> - <parameter name="target" value="{idGNBDUFunction}"/> - <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/> + <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/> + <parameter name="target" value="{idGNBCUCPFunction}"/> + <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/> </execute> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/> - <parameter name="target" value="{idNRCellDU}"/> + <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/> + <parameter name="target" value="{idNRCellCU}"/> <parameter name="replacement" value="`$tmp.cellLocalId`"/> </execute> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/> - <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/> + <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/> <parameter name="target" value="{id}"/> - <parameter name="replacement" value="`$tmp.RRMPolicyRatioID.NRCellDU`"/> + <parameter name="replacement" value="`$tmp.RRMPolicyRatioID.NRCellCU`"/> </execute> + <set> + <parameter name='tmp.resourceID' value='`$tmp.cellLocalId`'/> + </set> <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="addRRMPolicyRatio ToNRCellDU URL"/> - <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/> + <parameter name="field1" value="addRRMPolicyRatio ToNRCellCU URL"/> + <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/> </record> <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="Setting variables for addRRMPolicyRatio to NRCellDU"/> - <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/> + <parameter name="field1" value="Setting variables for addRRMPolicyRatio to NRCellCU"/> + <parameter name="field2" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToNRCellCU.url`"/> <parameter name="field3" value="`$tmp.mcc`"/> <parameter name="field4" value="`$tmp.mnc`"/> <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/> @@ -2196,8 +844,8 @@ <parameter name="field7" value="`$tmp.dLThptPerSlice`"/> </record> <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-RRMPolicyRatio-NRCellDU.json'`" /> - <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToNRCellDU.url`"/> + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-RRMPolicyRatio-NRCellCU.json'`" /> + <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToNRCellCU.url`"/> <parameter name="restapiUser" value="`$prop.controller.user`" /> <parameter name="restapiPassword" value="`$prop.controller.pwd`"/> <parameter name="httpMethod" value="PUT"/> @@ -2206,6 +854,11 @@ <parameter name='format' value='json' /> <outcome value='failure'> <block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error adding RRMPolicyr" /> + </return> <block atomic='true'> <set> <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> @@ -2257,11 +910,6 @@ </outcome> </execute> </block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error adding RRM Policy" /> - </return> </block> </outcome> <outcome value='success'> @@ -2269,192 +917,1569 @@ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="addRRMPolicyRatio to NRCELLDU Executed Successfully "/> + <parameter name="field1" value="addRRMPolicyRatio to NRCELLCU Executed Successfully "/> </record> </block> </outcome> </execute> </block> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updategNBCUCP`"/> + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updategNBCUCP.json'`" /> + <parameter name="httpMethod" value="PUT"/> + <parameter name="responsePrefix" value="update-gNBCUCP-configdb-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='application/json' /> + <parameter name="convertResponse" value="true"/> + <outcome value='failure'> + <block> + <set> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating configCUCP info in ConfigDB. Aborting RPC executiopn'/> + </set> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/> + </return> + <block atomic='true'> + <set> + <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> + <parameter name="tmp.status" value="`$error-code`"/> + <parameter name="tmp.reason" value="`$error-message`"/> + <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> + <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="URL for SO Callback Response"/> + <parameter name='field2' value="`$tmp.so.callbackURL`" /> + <parameter name='field3' value="`$tmp.status`" /> + <parameter name='field4' value="`$tmp.reason`" /> + <parameter name='field5' value="`$tmp.requestID`" /> + <parameter name='field6' value="`$tmp.action`" /> + <parameter name='field7' value="`$tmp.CUCPList`" /> + <parameter name='field8' value="`$tmp.CUUPList`" /> + <parameter name='field9' value="`$tmp.DUList`" /> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> + <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> + <parameter name="httpMethod" value="POST"/> + <parameter name="responsePrefix" value="so-callback-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='*/*' /> + <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> + <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> + <outcome value='failure'> + <block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error sending SO Response" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="SO Response Sent "/> + </record> + </block> + </outcome> + </execute> + </block> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Successfully Updated gNBCUCP info in ConfigDB"/> + </record> + </block> + </outcome> + </execute> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateRRMPolicy`"/> + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateRRMPolicy-CUCP.json'`" /> + <parameter name="httpMethod" value="PUT"/> + <parameter name="responsePrefix" value="update-gNBCUCP-rrmpolicy-configdb-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='application/json' /> + <parameter name="convertResponse" value="true"/> + <outcome value='failure'> + <block> + <block atomic='true'> + <set> + <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> + <parameter name="tmp.status" value="`$error-code`"/> + <parameter name="tmp.reason" value="`$error-message`"/> + <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> + <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="URL for SO Callback Response"/> + <parameter name='field2' value="`$tmp.so.callbackURL`" /> + <parameter name='field3' value="`$tmp.status`" /> + <parameter name='field4' value="`$tmp.reason`" /> + <parameter name='field5' value="`$tmp.requestID`" /> + <parameter name='field6' value="`$tmp.action`" /> + <parameter name='field7' value="`$tmp.CUCPList`" /> + <parameter name='field8' value="`$tmp.CUUPList`" /> + <parameter name='field9' value="`$tmp.DUList`" /> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> + <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> + <parameter name="httpMethod" value="POST"/> + <parameter name="responsePrefix" value="so-callback-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='*/*' /> + <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> + <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> + <outcome value='failure'> + <block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error sending SO Response" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="SO Response Sent "/> + </record> + </block> + </outcome> + </execute> + </block> + <set> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating RRMPolicy CUCP info in ConfigDB. Aborting RPC executiopn'/> + </set> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating RRMPolicy CUCP info in ConfigDB. Aborting RPC executiopn'/> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <set> + <parameter name='prop.configDB.rrmPolicyID' value='`$prop.configDB.rrmPolicyID + 1`' /> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Successfully Updated RRMPolicy CUCP info in ConfigDB"/> + <parameter name="field2" value="Incremented ConfigDB rrmPolicyID"/> + <parameter name="field3" value='`$prop.configDB.rrmPolicyID`' /> + </record> + </block> + </outcome> + </execute> </block> </outcome> </switch> </block> </for> + </for> + </for> + </block> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.CUUPListEntries' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList_length'`" /> + </execute> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="getListofCells-configdb-response. "/> + <parameter name="field2" value="`$tmp.CUUPListEntries`"/> + </record> + <block atomic='true'> + <set> + <parameter name='tmp.maxNumberOfConns-CUUP' value='`$tmp.payload.maxNumberofConns/$tmp.cellCUListEntries`' /> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="maxNumberOfConns.CUUP "/> + <parameter name="field2" value="`$tmp.maxNumberOfConns-CUUP`"/> + </record> + <set> + <parameter name='tmp.TotalNumberOfDRBForNSSAI' value='`$tmp.maxNumberOfConns-CUUP*4`' /> + </set> + <set> + <parameter name='tmp.DRBPerCUUPForSNSSAI' value='`$tmp.TotalNumberOfDRBForNSSAI / $tmp.CUUPListEntries`' /> + </set> + <set> + <parameter name='tmp.rRMPolicyDedicatedRatio.CUUP1' value='`$tmp.DRBPerCUUPForSNSSAI * 100`' /> + </set> + <set> + <parameter name='tmp.rRMPolicyDedicatedRatio.CUUP' value='`$tmp.rRMPolicyDedicatedRatio.CUUP1 / $prop.cuupfunction.maxNumberOfDRBsPerCUUP`' /> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="rRMPolicyDedicatedRatio for CUUP "/> + <parameter name="field2" value="`$tmp.rRMPolicyDedicatedRatio.CUUP`"/> + <parameter name="field3" value="tmp.TotalNumberOfDRBForNSSAI "/> + <parameter name="field4" value="`$tmp.TotalNumberOfDRBForNSSAI`"/> + <parameter name="field5" value="tmp.DRBPerCUUPForSNSSAI "/> + <parameter name="field6" value="`$tmp.DRBPerCUUPForSNSSAI`"/> + <parameter name="field7" value="tmp.rRMPolicyDedicatedRatio.CUUP1 "/> + <parameter name="field8" value="`$tmp.rRMPolicyDedicatedRatio.CUUP1`"/> + <parameter name="field9" value="tmp.rRMPolicyDedicatedRatio.CUUP"/> + <parameter name="field10" value="`$tmp.rRMPolicyDedicatedRatio.CUUP`"/> + <parameter name="field11" value="tmp.maxNumberOfConns"/> + <parameter name="field12" value="`$tmp.maxNumberOfConns-CUUP`"/> + </record> + </block> + <for index='id2' start='0' end='`$tmp.CUUPListEntries `' > + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.gNBCUUPList.gNBCUUPId' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].gNBCUUPId'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.gNBCUUPList.gNBId' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].gNBId'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.gNBCUUPList.gNBIdLength' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].gNBIdLength'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.pLMNInfoListEntries' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].pLMNInfoList_length'`" /> + </execute> + </block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="CUCP Details "/> + <parameter name="field2" value="`$tmp.gNBCUUPList.gNBCUUPId`"/> + <parameter name="field3" value="`$tmp.gNBCUUPList.gNBId`"/> + <parameter name="field4" value="`$tmp.gNBCUUPList.gNBIdLength`"/> + <parameter name="field5" value="`$tmp.gNBCUUPList.pLMNInfoList_length`"/> + <parameter name="field6" value="`$tmp.payload.pLMNId`"/> + </record> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="MCC "/> + <parameter name="field2" value="`$tmp.mcc`"/> + <parameter name="field3" value="MNC "/> + <parameter name="field4" value="`$tmp.mnc`"/> + <parameter name="field5" value="Calculated uLThptPerSlice "/> + <parameter name="field6" value="`$tmp.uLThptPerSlice`"/> + <parameter name="field7" value="Calculated dLThptPerSlice "/> + <parameter name="field8" value="`$tmp.dLThptPerSlice`"/> + </record> + <for index='id4' start='0' end='`$tmp.pLMNInfoListEntries`' > + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.fromRAN.sNSSAI' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].pLMNInfoList[' + $id3 + '].sNSSAI'`" /> + </execute> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="sNSSAI from RAN to check if already exists "/> + <parameter name="field2" value="`$tmp.fromRAN.sNSSAI`"/> + </record> + </block> + </for> + <block atomic='true'> + <switch test='`$prop.ransim-mounted`'> + <outcome value='false'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToGNBCUUPFn`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/> + <parameter name="target" value="{idNearRTRIC}"/> + <parameter name="replacement" value="`$tmp.nearRTRICId`"/> + </execute> + </outcome> + <outcome value='true'> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToGNBCUUPFn.ransim-mounted`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/> + <parameter name="target" value="{idNearRTRIC}"/> + <parameter name="replacement" value="`$tmp.nearRTRICId`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/> + <parameter name="target" value="{mountName}"/> + <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/> + </execute> + </block> + </outcome> + </switch> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/> + <parameter name="target" value="{idGNBCUUPFunction}"/> + <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/> + <parameter name="target" value="{mcc}"/> + <parameter name="replacement" value="`$tmp.mcc`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/> + <parameter name="target" value="{mnc}"/> + <parameter name="replacement" value="`$tmp.mnc`"/> + </execute> + <set> + <parameter name='tmp.maxNumberOfConns' value='`$tmp.payload.maxNumberofConns/$tmp.cellCUListEntries`'/> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Add PLMNInfoListEntry ToGNBCUUPFn URL"/> + <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/> + </record> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Setting variables for PLMNInfoList Entry Add to NRCellCU"/> + <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> + <parameter name="field3" value="`$tmp.mcc`"/> + <parameter name="field4" value="`$tmp.mnc`"/> + <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/> + <parameter name="field6" value="`$tmp.uLThptPerSlice`"/> + <parameter name="field7" value="`$tmp.dLThptPerSlice`"/> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-get-PLMNInfoListEntry-GNBCUUPFn.json'`" /> + <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/> + <parameter name="restapiUser" value="`$prop.controller.user`" /> + <parameter name="restapiPassword" value="`$prop.controller.pwd`"/> + <parameter name="httpMethod" value="PUT"/> + <parameter name="responsePrefix" value="PLMNInfoListEntry-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <outcome value='failure'> + <block> + <block atomic='true'> + <set> + <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> + <parameter name="tmp.status" value="`$error-code`"/> + <parameter name="tmp.reason" value="`$error-message`"/> + <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> + <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="URL for SO Callback Response"/> + <parameter name='field2' value="`$tmp.so.callbackURL`" /> + <parameter name='field3' value="`$tmp.status`" /> + <parameter name='field4' value="`$tmp.reason`" /> + <parameter name='field5' value="`$tmp.requestID`" /> + <parameter name='field6' value="`$tmp.action`" /> + <parameter name='field7' value="`$tmp.CUCPList`" /> + <parameter name='field8' value="`$tmp.CUUPList`" /> + <parameter name='field9' value="`$tmp.DUList`" /> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> + <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> + <parameter name="httpMethod" value="POST"/> + <parameter name="responsePrefix" value="so-callback-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='*/*' /> + <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> + <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> + <outcome value='failure'> + <block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error sending SO Response" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="SO Response Sent "/> + </record> + </block> + </outcome> + </execute> + </block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error adding PLMNInfoList Entry to GNBCUUPFn" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="PLMNInfo List Entry Add Executed Successfully "/> + </record> + </block> + </outcome> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setPropertiesForList'> + <parameter name='prefixKey' value='tmp.CUUPList.response' /> + <parameter name='keyName' value='gNBCUUPId' /> + <parameter name='keyValue' value="`$tmp.gNBCUUPList.gNBCUUPId`"/> + </execute> + </block> + <block atomic='true'> + <switch test='`$prop.ransim-mounted`'> + <outcome value='false'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToGNBCUUPFn`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/> + <parameter name="target" value="{idNearRTRIC}"/> + <parameter name="replacement" value="`$tmp.nearRTRICId`"/> + </execute> + </outcome> + <outcome value='true'> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToGNBCUUPFn.ransim-mounted`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/> + <parameter name="target" value="{idNearRTRIC}"/> + <parameter name="replacement" value="`$tmp.nearRTRICId`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/> + <parameter name="target" value="{mountName}"/> + <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/> + </execute> + </block> + </outcome> + </switch> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/> + <parameter name="target" value="{idGNBCUUPFunction}"/> + <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/> + <parameter name="target" value="{id}"/> + <parameter name="replacement" value="`$tmp.RRMPolicyRatioID.GNBCUUPFunction`"/> + </execute> + <set> + <parameter name='tmp.resourceID' value='`$tmp.gNBCUUPList.gNBCUUPId`'/> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="addRRMPolicyRatio ToGNBCUUPFn URL"/> + <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/> + </record> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Setting variables for addRRMPolicyRatio to GNBCUUPFn"/> + <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/> + <parameter name="field3" value="`$tmp.mcc`"/> + <parameter name="field4" value="`$tmp.mnc`"/> + <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/> + <parameter name="field6" value="`$tmp.uLThptPerSlice`"/> + <parameter name="field7" value="`$tmp.dLThptPerSlice`"/> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-RRMPolicyRatio-GNBCUUPFn.json'`" /> + <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/> + <parameter name="restapiUser" value="`$prop.controller.user`" /> + <parameter name="restapiPassword" value="`$prop.controller.pwd`"/> + <parameter name="httpMethod" value="PUT"/> + <parameter name="responsePrefix" value="addRRMPolicyRatio-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <outcome value='failure'> + <block> + <block atomic='true'> + <set> + <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> + <parameter name="tmp.status" value="`$error-code`"/> + <parameter name="tmp.reason" value="`$error-message`"/> + <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> + <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="URL for SO Callback Response"/> + <parameter name='field2' value="`$tmp.so.callbackURL`" /> + <parameter name='field3' value="`$tmp.status`" /> + <parameter name='field4' value="`$tmp.reason`" /> + <parameter name='field5' value="`$tmp.requestID`" /> + <parameter name='field6' value="`$tmp.action`" /> + <parameter name='field7' value="`$tmp.CUCPList`" /> + <parameter name='field8' value="`$tmp.CUUPList`" /> + <parameter name='field9' value="`$tmp.DUList`" /> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> + <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> + <parameter name="httpMethod" value="POST"/> + <parameter name="responsePrefix" value="so-callback-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='*/*' /> + <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> + <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> + <outcome value='failure'> + <block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error sending SO Response" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="SO Response Sent "/> + </record> + </block> + </outcome> + </execute> + </block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error adding RRMPolicy" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="addRRMPolicyRatio Executed Successfully "/> + </record> + </block> + </outcome> + </execute> </block> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updategNBCUUP`"/> + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updategNBCUUP.json'`" /> + <parameter name="httpMethod" value="PUT"/> + <parameter name="responsePrefix" value="update-gNBCUUP-configdb-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='application/json' /> + <parameter name="convertResponse" value="true"/> + <outcome value='failure'> + <block> + <block atomic='true'> + <set> + <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> + <parameter name="tmp.status" value="`$error-code`"/> + <parameter name="tmp.reason" value="`$error-message`"/> + <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> + <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="URL for SO Callback Response"/> + <parameter name='field2' value="`$tmp.so.callbackURL`" /> + <parameter name='field3' value="`$tmp.status`" /> + <parameter name='field4' value="`$tmp.reason`" /> + <parameter name='field5' value="`$tmp.requestID`" /> + <parameter name='field6' value="`$tmp.action`" /> + <parameter name='field7' value="`$tmp.CUCPList`" /> + <parameter name='field8' value="`$tmp.CUUPList`" /> + <parameter name='field9' value="`$tmp.DUList`" /> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> + <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> + <parameter name="httpMethod" value="POST"/> + <parameter name="responsePrefix" value="so-callback-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='*/*' /> + <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> + <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> + <outcome value='failure'> + <block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error sending SO Response" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="SO Response Sent "/> + </record> + </block> + </outcome> + </execute> + </block> + <set> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating configCUUP info in ConfigDB. Aborting RPC executiopn'/> + </set> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating CUUP info in ConfigDB. Aborting RPC executiopn'/> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Successfully Updated gNBCUUP info in ConfigDB"/> + </record> + </block> + </outcome> + </execute> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateRRMPolicy`"/> + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateRRMPolicy-CUUP.json'`" /> + <parameter name="httpMethod" value="PUT"/> + <parameter name="responsePrefix" value="update-gNBCUUP-rrmpolicy-configdb-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='application/json' /> + <parameter name="convertResponse" value="true"/> + <outcome value='failure'> + <block> + <block atomic='true'> + <set> + <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> + <parameter name="tmp.status" value="`$error-code`"/> + <parameter name="tmp.reason" value="`$error-message`"/> + <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> + <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="URL for SO Callback Response"/> + <parameter name='field2' value="`$tmp.so.callbackURL`" /> + <parameter name='field3' value="`$tmp.status`" /> + <parameter name='field4' value="`$tmp.reason`" /> + <parameter name='field5' value="`$tmp.requestID`" /> + <parameter name='field6' value="`$tmp.action`" /> + <parameter name='field7' value="`$tmp.CUCPList`" /> + <parameter name='field8' value="`$tmp.CUUPList`" /> + <parameter name='field9' value="`$tmp.DUList`" /> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> + <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> + <parameter name="httpMethod" value="POST"/> + <parameter name="responsePrefix" value="so-callback-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='*/*' /> + <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> + <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> + <outcome value='failure'> + <block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error sending SO Response" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="SO Response Sent "/> + </record> + </block> + </outcome> + </execute> + </block> + <set> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating RRMPolicy CUUP info in ConfigDB. Aborting RPC executiopn'/> + </set> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating RRMPolicy CUUP info in ConfigDB. Aborting RPC executiopn'/> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <set> + <parameter name='prop.configDB.rrmPolicyID' value='`$prop.configDB.rrmPolicyID + 1`' /> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Successfully Updated RRMPolicy CUUP info in ConfigDB"/> + <parameter name="field2" value="Incremented ConfigDB rrmPolicyID"/> + <parameter name="field3" value='`$prop.configDB.rrmPolicyID`' /> + </record> + </block> + </outcome> + </execute> </for> + </block> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.DUListEntries' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList_length'`" /> + </execute> <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="MCC "/> - <parameter name="field2" value="`$tmp.mcc`"/> - <parameter name="field3" value="MNC "/> - <parameter name="field4" value="`$tmp.mnc`"/> - <parameter name="field5" value="Calculated uLThptPerSlice "/> - <parameter name="field6" value="`$tmp.uLThptPerSlice`"/> - <parameter name="field7" value="Calculated dLThptPerSlice "/> - <parameter name="field8" value="`$tmp.dLThptPerSlice`"/> + <parameter name="field1" value="Number of DU List Entries "/> + <parameter name="field2" value="`$tmp.DUListEntries`"/> </record> + <block atomic='true'> + <set> + <parameter name='tmp.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`' /> + </set> + <set> + <parameter name='tmp.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`' /> + </set> + <set> + <parameter name='tmp.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberOfConns`' /> + </set> + <set> + <parameter name='tmp.nearRTRIC.trafficCapacity1' value='`$tmp.uLThptPerSlice + $tmp.dLThptPerSlice`' /> + </set> + <set> + <parameter name='tmp.nearRTRIC.trafficCapacity' value='`$tmp.nearRTRIC.trafficCapacity1 / 2`' /> + </set> + <set> + <parameter name='tmp.nearRTRIC.trafficCapacityBPS' value='`$tmp.nearRTRIC.trafficCapacity * 1000000`' /> + </set> + <set> + <parameter name='tmp.nrcelldu.totalPRBForSNSSAI' value='`$tmp.nearRTRIC.trafficCapacityBPS / 1008000`' /> + </set> + <set> + <parameter name='tmp.nrcelldu.PRBPerImpactedCell' value='`$tmp.nrcelldu.totalPRBForSNSSAI / $tmp.DUListEntries`' /> + </set> + <set> + <parameter name='tmp.rRMPolicyDedicatedRatio.CellDU1' value='`$tmp.nrcelldu.PRBPerImpactedCell * 100`' /> + </set> + <set> + <parameter name='tmp.rRMPolicyDedicatedRatio.CellDU' value='`$tmp.rRMPolicyDedicatedRatio.CellDU1 / $prop.nrcelldu.TotalPRBsPerCell`' /> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="rRMPolicyDedicatedRatio for CellDU "/> + <parameter name="field2" value="`$tmp.rRMPolicyDedicatedRatio.CellDU`"/> + <parameter name="field3" value="tmp.nearRTRIC.trafficCapacity1 "/> + <parameter name="field4" value="`$tmp.nearRTRIC.trafficCapacity1`"/> + <parameter name="field5" value="tmp.nearRTRIC.trafficCapacity "/> + <parameter name="field6" value="`$tmp.nearRTRIC.trafficCapacity`"/> + <parameter name="field7" value="tmp.nearRTRIC.trafficCapacityBPS"/> + <parameter name="field8" value="`$tmp.nearRTRIC.trafficCapacityBPS`"/> + <parameter name="field9" value="tmp.nrcelldu.totalPRBForSNSSAI "/> + <parameter name="field10" value="`$tmp.nrcelldu.totalPRBForSNSSAI`"/> + <parameter name="field11" value="tmp.nrcelldu.PRBPerImpactedCell "/> + <parameter name="field12" value="`$tmp.nrcelldu.PRBPerImpactedCell`"/> + <parameter name="field13" value="tmp.rRMPolicyDedicatedRatio.CellDU1 "/> + <parameter name="field14" value="`$tmp.rRMPolicyDedicatedRatio.CellDU1`"/> + </record> + </block> + <for index='id2' start='0' end='`$tmp.DUListEntries`' > + <block atomic='true'> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.cellDUListEntries' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList_length'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.gNBDUList.gNBDUId' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBDUId'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.gNBDUName' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBDUName'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.gNBId' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBId'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.gNBIdLength' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBIdLength'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.nFType' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].nFType'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.pLMNId' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].pLMNId'`" /> + </execute> + </block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Numberof cellDU of Entries "/> + <parameter name="field2" value="`$tmp.cellDUListEntries`"/> + <parameter name="field3" value="`$tmp.gNBDUList.gNBDUId`"/> + <parameter name="field4" value="`$tmp.gNBDUName`"/> + <parameter name="field5" value="`$tmp.gNBId`"/> + <parameter name="field6" value="`$tmp.gNBIdLength`"/> + <parameter name="field7" value="`$tmp.nFType`"/> + <parameter name="field8" value="`$tmp.pLMNId`"/> + </record> + <for index='id3' start='0' end='`$getListofCells-configdb-response._length `' > + <block atomic='true'> + <for index='idCell' start='0' end='`$tmp.cellDUListEntries`' > + <block atomic='true'> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.pLMNInfoListEntries' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $idCell + '].pLMNInfoList_length'`" /> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.cellLocalId' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $idCell + '].cellLocalId'`" /> + </execute> + </block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Numberof pLMNInfoList Entries "/> + <parameter name="field2" value="`$tmp.pLMNInfoListEntries`"/> + <parameter name="field3" value="cellLocalId for TA "/> + <parameter name="field4" value="`$tmp.cellLocalId`"/> + </record> + <for index='id4' start='0' end='`$tmp.pLMNInfoListEntries`' > + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.fromRAN.sNSSAI' /> + <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $idCell + '].pLMNInfoList[' + $id4 + '].sNSSAI.sNSSAI'`" /> + </execute> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="sNSSAI from RAN to check if already exists "/> + <parameter name="field2" value="`$tmp.fromRAN.sNSSAI`"/> + </record> + </block> + </for> + </block> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.gNBDUList.cellLocalId' /> + <parameter name='source' value="`'getListofCells-configdb-response.[' + $id3 + ']'`" /> + </execute> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="CellLocal ID for comparison -- specific DUList"/> + <parameter name="field2" value="`$tmp.gNBDUList.cellLocalId`"/> + <parameter name="field3" value="CellLocal ID for comparison - overall TA "/> + <parameter name="field4" value="`$tmp.cellLocalId`"/> + </record> + <switch test="`$tmp.gNBDUList.cellLocalId == $tmp.cellLocalId`"> + <outcome value='true'> + <block atomic='true'> + <block atomic='true'> + <switch test='`$prop.ransim-mounted`'> + <outcome value='false'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellDU`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/> + <parameter name="target" value="{idNearRTRIC}"/> + <parameter name="replacement" value="`$tmp.nearRTRICId`"/> + </execute> + </outcome> + <outcome value='true'> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellDU.ransim-mounted`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/> + <parameter name="target" value="{idNearRTRIC}"/> + <parameter name="replacement" value="`$tmp.nearRTRICId`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/> + <parameter name="target" value="{mountName}"/> + <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/> + </execute> + </block> + </outcome> + </switch> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/> + <parameter name="target" value="{idGNBDUFunction}"/> + <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/> + <parameter name="target" value="{idNRCellDU}"/> + <parameter name="replacement" value="`$tmp.cellLocalId`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/> + <parameter name="target" value="{mcc}"/> + <parameter name="replacement" value="`$tmp.mcc`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> + <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/> + <parameter name="target" value="{mnc}"/> + <parameter name="replacement" value="`$tmp.mnc`"/> + </execute> + <set> + <parameter name='tmp.uLThptPerSlice' value='`$tmp.payload.uLThptPerSlice/$tmp.cellDUListEntries`'/> + <parameter name='tmp.dLThptPerSlice' value='`$tmp.payload.dLThptPerSlice/$tmp.cellDUListEntries`'/> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Add PLMNInfoListEntry ToNRCellDU URL"/> + <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> + </record> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Setting variables for PLMNInfoList Entry Add to NRCellDU"/> + <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> + <parameter name="field3" value="`$tmp.mcc`"/> + <parameter name="field4" value="`$tmp.mnc`"/> + <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/> + <parameter name="field6" value="`$tmp.uLThptPerSlice`"/> + <parameter name="field7" value="`$tmp.dLThptPerSlice`"/> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-get-PLMNInfoListEntry-NRCellDU.json'`" /> + <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/> + <parameter name="restapiUser" value="`$prop.controller.user`" /> + <parameter name="restapiPassword" value="`$prop.controller.pwd`"/> + <parameter name="httpMethod" value="PUT"/> + <parameter name="responsePrefix" value="PLMNInfoListEntry-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <outcome value='failure'> + <block> + <block atomic='true'> + <set> + <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> + <parameter name="tmp.status" value="`$error-code`"/> + <parameter name="tmp.reason" value="`$error-message`"/> + <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> + <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="URL for SO Callback Response"/> + <parameter name='field2' value="`$tmp.so.callbackURL`" /> + <parameter name='field3' value="`$tmp.status`" /> + <parameter name='field4' value="`$tmp.reason`" /> + <parameter name='field5' value="`$tmp.requestID`" /> + <parameter name='field6' value="`$tmp.action`" /> + <parameter name='field7' value="`$tmp.CUCPList`" /> + <parameter name='field8' value="`$tmp.CUUPList`" /> + <parameter name='field9' value="`$tmp.DUList`" /> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> + <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> + <parameter name="httpMethod" value="POST"/> + <parameter name="responsePrefix" value="so-callback-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='*/*' /> + <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> + <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> + <outcome value='failure'> + <block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error sending SO Response" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="SO Response Sent "/> + </record> + </block> + </outcome> + </execute> + </block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error adding PLMNInfo List Entry to NRCellCUr" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="PLMNInfo List Entry Add to NRCELLDU Executed Successfully "/> + </record> + </block> + </outcome> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setPropertiesForList'> + <parameter name='prefixKey' value='tmp.DUList.response' /> + <parameter name='keyName' value='gNBDUId' /> + <parameter name='keyValue' value="`$tmp.gNBDUList.gNBDUId`"/> + </execute> + </block> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updategNBDU`"/> + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updategNBDU.json'`" /> + <parameter name="httpMethod" value="PUT"/> + <parameter name="responsePrefix" value="update-gNBDU-configdb-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='application/json' /> + <parameter name="convertResponse" value="true"/> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Successfully Updated DU info in ConfigDB"/> + </record> + </block> + </outcome> + <outcome value='failure'> + <block> + <set> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating configCUUP info in ConfigDB. Aborting RPC executiopn'/> + </set> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating CUUP info in ConfigDB. Aborting RPC executiopn'/> + </return> + <block atomic='true'> + <set> + <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> + <parameter name="tmp.status" value="`$error-code`"/> + <parameter name="tmp.reason" value="`$error-message`"/> + <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> + <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="URL for SO Callback Response"/> + <parameter name='field2' value="`$tmp.so.callbackURL`" /> + <parameter name='field3' value="`$tmp.status`" /> + <parameter name='field4' value="`$tmp.reason`" /> + <parameter name='field5' value="`$tmp.requestID`" /> + <parameter name='field6' value="`$tmp.action`" /> + <parameter name='field7' value="`$tmp.CUCPList`" /> + <parameter name='field8' value="`$tmp.CUUPList`" /> + <parameter name='field9' value="`$tmp.DUList`" /> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> + <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/> + <parameter name="httpMethod" value="POST"/> + <parameter name="responsePrefix" value="so-callback-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='application/json' /> + <outcome value='failure'> + <block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error sending SO Response" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="SO Response Sent "/> + </record> + </block> + </outcome> + </execute> + </block> + </block> + </outcome> + </execute> + <set> + <parameter name='tmp.resourceID' value='`$tmp.gNBDUList.cellLocalId`'/> + </set> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateRRMPolicy`"/> + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateRRMPolicy-DU.json'`" /> + <parameter name="httpMethod" value="PUT"/> + <parameter name="responsePrefix" value="update-DU-rrmpolicy-configdb-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='application/json' /> + <parameter name="convertResponse" value="true"/> + <outcome value='success'> + <block> + <set> + <parameter name='prop.configDB.rrmPolicyID' value='`$prop.configDB.rrmPolicyID + 1`' /> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Successfully Updated RRMPolicy DU info in ConfigDB"/> + <parameter name="field2" value="Incremented ConfigDB rrmPolicyID"/> + <parameter name="field3" value='`$prop.configDB.rrmPolicyID`' /> + </record> + </block> + </outcome> + <outcome value='failure'> + <block> + <block atomic='true'> + <set> + <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> + <parameter name="tmp.status" value="`$error-code`"/> + <parameter name="tmp.reason" value="`$error-message`"/> + <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> + <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="URL for SO Callback Response"/> + <parameter name='field2' value="`$tmp.so.callbackURL`" /> + <parameter name='field3' value="`$tmp.status`" /> + <parameter name='field4' value="`$tmp.reason`" /> + <parameter name='field5' value="`$tmp.requestID`" /> + <parameter name='field6' value="`$tmp.action`" /> + <parameter name='field7' value="`$tmp.CUCPList`" /> + <parameter name='field8' value="`$tmp.CUUPList`" /> + <parameter name='field9' value="`$tmp.DUList`" /> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> + <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/> + <parameter name="httpMethod" value="POST"/> + <parameter name="responsePrefix" value="so-callback-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='application/json' /> + <outcome value='failure'> + <block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error sending SO Response" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="SO Response Sent "/> + </record> + </block> + </outcome> + </execute> + </block> + <set> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating RRMPolicy DU info in ConfigDB. Aborting RPC executiopn'/> + </set> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating RRMPolicy DU info in ConfigDB. Aborting RPC executiopn'/> + </return> + </block> + </outcome> + </execute> + </block> + <block atomic='true'> + <switch test='`$prop.ransim-mounted`'> + <outcome value='false'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellDU`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/> + <parameter name="target" value="{idNearRTRIC}"/> + <parameter name="replacement" value="`$tmp.nearRTRICId`"/> + </execute> + </outcome> + <outcome value='true'> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellDU.ransim-mounted`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/> + <parameter name="target" value="{idNearRTRIC}"/> + <parameter name="replacement" value="`$tmp.nearRTRICId`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/> + <parameter name="target" value="{mountName}"/> + <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/> + </execute> + </block> + </outcome> + </switch> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/> + <parameter name="target" value="{idGNBDUFunction}"/> + <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/> + <parameter name="target" value="{idNRCellDU}"/> + <parameter name="replacement" value="`$tmp.cellLocalId`"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/> + <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/> + <parameter name="target" value="{id}"/> + <parameter name="replacement" value="`$tmp.RRMPolicyRatioID.NRCellDU`"/> + </execute> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="addRRMPolicyRatio ToNRCellDU URL"/> + <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/> + </record> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Setting variables for addRRMPolicyRatio to NRCellDU"/> + <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/> + <parameter name="field3" value="`$tmp.mcc`"/> + <parameter name="field4" value="`$tmp.mnc`"/> + <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/> + <parameter name="field6" value="`$tmp.uLThptPerSlice`"/> + <parameter name="field7" value="`$tmp.dLThptPerSlice`"/> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-RRMPolicyRatio-NRCellDU.json'`" /> + <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToNRCellDU.url`"/> + <parameter name="restapiUser" value="`$prop.controller.user`" /> + <parameter name="restapiPassword" value="`$prop.controller.pwd`"/> + <parameter name="httpMethod" value="PUT"/> + <parameter name="responsePrefix" value="addRRMPolicyRatio-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <outcome value='failure'> + <block> + <block atomic='true'> + <set> + <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> + <parameter name="tmp.status" value="`$error-code`"/> + <parameter name="tmp.reason" value="`$error-message`"/> + <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> + <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="URL for SO Callback Response"/> + <parameter name='field2' value="`$tmp.so.callbackURL`" /> + <parameter name='field3' value="`$tmp.status`" /> + <parameter name='field4' value="`$tmp.reason`" /> + <parameter name='field5' value="`$tmp.requestID`" /> + <parameter name='field6' value="`$tmp.action`" /> + <parameter name='field7' value="`$tmp.CUCPList`" /> + <parameter name='field8' value="`$tmp.CUUPList`" /> + <parameter name='field9' value="`$tmp.DUList`" /> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> + <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> + <parameter name="httpMethod" value="POST"/> + <parameter name="responsePrefix" value="so-callback-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='*/*' /> + <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> + <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> + <outcome value='failure'> + <block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error sending SO Response" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="SO Response Sent "/> + </record> + </block> + </outcome> + </execute> + </block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error adding RRM Policy" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="addRRMPolicyRatio to NRCELLDU Executed Successfully "/> + </record> + </block> + </outcome> + </execute> + </block> + </block> + </outcome> + </switch> + </block> + </for> + </block> + </for> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="MCC "/> + <parameter name="field2" value="`$tmp.mcc`"/> + <parameter name="field3" value="MNC "/> + <parameter name="field4" value="`$tmp.mnc`"/> + <parameter name="field5" value="Calculated uLThptPerSlice "/> + <parameter name="field6" value="`$tmp.uLThptPerSlice`"/> + <parameter name="field7" value="Calculated dLThptPerSlice "/> + <parameter name="field8" value="`$tmp.dLThptPerSlice`"/> + </record> + </block> + </for> </block> </for> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Update inventory in ConfigDB"/> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateRANSliceInventory`"/> + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateRANSliceInventory.json'`" /> + <parameter name="httpMethod" value="PUT"/> + <parameter name="responsePrefix" value="update-inventory-configdb-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='application/json' /> + <parameter name="convertResponse" value="true"/> + <outcome value='failure'> + <block> + <set> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/> + </set> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error updating inventory in ConfigDB. Aborting RPC executiopn'/> + </return> + <block atomic='true'> + <set> + <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> + <parameter name="tmp.status" value="`$error-code`"/> + <parameter name="tmp.reason" value="`$error-message`"/> + <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> + <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> + </set> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="URL for SO Callback Response"/> + <parameter name='field2' value="`$tmp.so.callbackURL`" /> + <parameter name='field3' value="`$tmp.status`" /> + <parameter name='field4' value="`$tmp.reason`" /> + <parameter name='field5' value="`$tmp.requestID`" /> + <parameter name='field6' value="`$tmp.action`" /> + <parameter name='field7' value="`$tmp.CUCPList`" /> + <parameter name='field8' value="`$tmp.CUUPList`" /> + <parameter name='field9' value="`$tmp.DUList`" /> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> + <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> + <parameter name="httpMethod" value="POST"/> + <parameter name="responsePrefix" value="so-callback-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='*/*' /> + <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> + <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> + <outcome value='failure'> + <block> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error sending SO Response" /> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="SO Response Sent "/> + </record> + </block> + </outcome> + </execute> + </block> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Successfully Updated inventory in ConfigDB"/> + </record> + </block> + </outcome> + </execute> </block> - </for> + </block> + </for> + <block atomic='true'> + <set> + <parameter name="tmp.status" value="`$error-code`"/> + <parameter name="tmp.reason" value="`$error-message`"/> + <parameter name="tmp.requestID" value="`$instantiate-r-a-n-slice-input.common-header.request-id `"/> + <parameter name="tmp.action" value="`$instantiate-r-a-n-slice-input.action`"/> + </set> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$prop.restapi.so.callbackURL`"/> + <parameter name="outputPath" value="tmp.so.callbackURL"/> + <parameter name="target" value="{requestId}"/> + <parameter name="replacement" value="`$tmp.requestID`"/> + </execute> <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="Update inventory in ConfigDB"/> + <parameter name="field1" value="URL for SO Callback Response"/> + <parameter name='field2' value="`$payloadJson.input.callbackURL`" /> + <parameter name='field3' value="`$tmp.status`" /> + <parameter name='field4' value="`$tmp.reason`" /> + <parameter name='field5' value="`$tmp.requestID`" /> + <parameter name='field6' value="`$tmp.action`" /> + <parameter name='field7' value="`$prop.restapi.so.user`" /> + <parameter name='field8' value="`$prop.restapi.so.password`" /> + <parameter name='field9' value="`$tmp.DUList.response_length`" /> + <parameter name='field10' value="`$tmp.CUCPList.response`" /> + <parameter name='field11' value="`$tmp.CUUPList.response`" /> + <parameter name='field12' value="`$tmp.DUList.response`" /> </record> <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateRANSliceInventory`"/> - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateRANSliceInventory.json'`" /> - <parameter name="httpMethod" value="PUT"/> - <parameter name="responsePrefix" value="update-inventory-configdb-response"/> + <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> + <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> + <parameter name="httpMethod" value="POST"/> + <parameter name="responsePrefix" value="so-callback-response"/> <parameter name='contentType' value='application/json' /> <parameter name='format' value='json' /> - <parameter name='accept' value='application/json' /> - <parameter name="convertResponse" value="true"/> + <parameter name='accept' value='*/*' /> + <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> + <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> <outcome value='failure'> <block> <set> <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/> + <parameter name='error-message' value='Error sending SO response. Aborting RPC executiopn'/> </set> <return status='failure'> <parameter name='ack-final' value='Y'/> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error updating inventory in ConfigDB. Aborting RPC executiopn'/> + <parameter name="error-code" value="500" /> + <parameter name="error-message" value="Error sending SO Response" /> </return> - <block atomic='true'> - <set> - <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/> - <parameter name="tmp.status" value="`$error-code`"/> - <parameter name="tmp.reason" value="`$error-message`"/> - <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/> - <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/> - </set> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="URL for SO Callback Response"/> - <parameter name='field2' value="`$tmp.so.callbackURL`" /> - <parameter name='field3' value="`$tmp.status`" /> - <parameter name='field4' value="`$tmp.reason`" /> - <parameter name='field5' value="`$tmp.requestID`" /> - <parameter name='field6' value="`$tmp.action`" /> - <parameter name='field7' value="`$tmp.CUCPList`" /> - <parameter name='field8' value="`$tmp.CUUPList`" /> - <parameter name='field9' value="`$tmp.DUList`" /> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> - <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> - <parameter name="httpMethod" value="POST"/> - <parameter name="responsePrefix" value="so-callback-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='*/*' /> - <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> - <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> - <outcome value='failure'> - <block> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error sending SO Response" /> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="SO Response Sent "/> - </record> - </block> - </outcome> - </execute> - </block> </block> </outcome> <outcome value='success'> <block> <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="Successfully Updated inventory in ConfigDB"/> + <parameter name="field1" value="SO Response Sent "/> </record> </block> </outcome> </execute> - <block atomic='true'> - <set> - <parameter name="tmp.status" value="`$error-code`"/> - <parameter name="tmp.reason" value="`$error-message`"/> - <parameter name="tmp.requestID" value="`$instantiate-r-a-n-slice-input.common-header.request-id `"/> - <parameter name="tmp.action" value="`$instantiate-r-a-n-slice-input.action`"/> - </set> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.so.callbackURL`"/> - <parameter name="outputPath" value="tmp.so.callbackURL"/> - <parameter name="target" value="{requestId}"/> - <parameter name="replacement" value="`$tmp.requestID`"/> - </execute> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="URL for SO Callback Response"/> - <parameter name='field2' value="`$payloadJson.input.callbackURL`" /> - <parameter name='field3' value="`$tmp.status`" /> - <parameter name='field4' value="`$tmp.reason`" /> - <parameter name='field5' value="`$tmp.requestID`" /> - <parameter name='field6' value="`$tmp.action`" /> - <parameter name='field7' value="`$prop.restapi.so.user`" /> - <parameter name='field8' value="`$prop.restapi.so.password`" /> - <parameter name='field9' value="`$tmp.DUList.response_length`" /> - <parameter name='field10' value="`$tmp.CUCPList.response`" /> - <parameter name='field11' value="`$tmp.CUUPList.response`" /> - <parameter name='field12' value="`$tmp.DUList.response`" /> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" /> - <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/> - <parameter name="httpMethod" value="POST"/> - <parameter name="responsePrefix" value="so-callback-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='*/*' /> - <parameter name="restapiUser" value="`$prop.restapi.so.user`" /> - <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/> - <outcome value='failure'> - <block> - <set> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error sending SO response. Aborting RPC executiopn'/> - </set> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name="error-code" value="500" /> - <parameter name="error-message" value="Error sending SO Response" /> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="SO Response Sent "/> - </record> - </block> - </outcome> - </execute> - </block> - <return status='success'> - <parameter name="ack-final" value="N" /> - <parameter name="error-code" value="200" /> - <parameter name="error-message" value="SUCCESSFUL Execution" /> - </return> </block> + <return status='success'> + <parameter name="ack-final" value="N" /> + <parameter name="error-code" value="200" /> + <parameter name="error-message" value="SUCCESSFUL Execution" /> + </return> </block> </method> </service-logic>
\ No newline at end of file diff --git a/platform-logic/ran-slice-api/src/main/xml/ran-slice-api_instantiateRANSliceModifyAllocate.xml b/platform-logic/ran-slice-api/src/main/xml/ran-slice-api_instantiateRANSliceModifyAllocate.xml index 21571e92..e3e7955a 100644 --- a/platform-logic/ran-slice-api/src/main/xml/ran-slice-api_instantiateRANSliceModifyAllocate.xml +++ b/platform-logic/ran-slice-api/src/main/xml/ran-slice-api_instantiateRANSliceModifyAllocate.xml @@ -219,11 +219,34 @@ <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSliceModifyAllocate.log" /> <parameter name="level" value="info" /> <parameter name="field1" value="Successfully Retrieved coverageAreaTAList"/> - <parameter name="field2" value="`$get-coverageAreaTAList-response`"/> + <parameter name="field2" value="`$get-coverageAreaTAList-response.coverage-area-TA-list`"/> </record> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' > <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' /> </execute> + <set> + <parameter name='tmp.aai.coverageAreaTAList' value="`$get-coverageAreaTAList-response.coverage-area-TA-list`"/> + </set> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.aai.coverageAreaTAList`"/> + <parameter name="outputPath" value="tmp.aai.coverageAreaTAList"/> + <parameter name="target" value="["/> + <parameter name="replacement" value=""/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$tmp.aai.coverageAreaTAList`"/> + <parameter name="outputPath" value="tmp.aai.coverageAreaTAList"/> + <parameter name="target" value="]"/> + <parameter name="replacement" value=""/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'> + <parameter name="original_string" value="`$tmp.aai.coverageAreaTAList`" /> + <parameter name="regex" value=","/> + <parameter name="ctx_memory_result_key" value="tmp.coverageAreaTAList"/> + </execute> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' > + <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' /> + </execute> </block> </outcome> <outcome value='failure'> @@ -240,75 +263,91 @@ </block> </outcome> </execute> + <set> + <parameter name='tmp.trackingAreaListEntries' value="`$tmp.coverageAreaTAList_length`"/> + </set> <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSliceModifyAllocate.log" /> <parameter name="level" value="info" /> - <parameter name="field1" value="`$tmp.pLMNId`"/> - <parameter name="field2" value="`$tmp.mcc`"/> - <parameter name="field3" value="`$tmp.mnc`"/> + <parameter name="field1" value="Tracking Area size"/> + <parameter name="field2" value="`$tmp.trackingAreaListEntries`"/> </record> </block> - <block atomic='true'> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > - <parameter name="source" value="`$prop.restapi.configdb.getListOfCells`"/> - <parameter name="outputPath" value="tmp.configdb.getListOfCells.url"/> - <parameter name="target" value="{trackingArea}"/> - <parameter name="replacement" value="`$tmp.payload.trackingArea`"/> - </execute> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="URL for configDB Get getListOfCells for tracking area"/> - <parameter name='field2' value="`$prop.configdb.url + $tmp.configdb.getListOfCells.url`" /> - <parameter name='field3' value="`$tmp.payload.trackingArea`" /> - </record> - <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > - <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getListOfCells.url`"/> - <parameter name="httpMethod" value="GET"/> - <parameter name="responsePrefix" value="getListofCells-configdb-response"/> - <parameter name='contentType' value='application/json' /> - <parameter name='format' value='json' /> - <parameter name='accept' value='application/json' /> - <outcome value='failure'> - <block> - <set> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/> - </set> - <return status='failure'> - <parameter name='ack-final' value='Y'/> - <parameter name='error-code' value='500'/> - <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/> - </return> - </block> - </outcome> - <outcome value='success'> - <block> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSliceModifyAllocate.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="Successfully Obtained List of Cells from ConfigDB"/> - <parameter name="field2" value="`$getListofCells-configdb-response._length`"/> - <parameter name="field3" value="List of Cells in the Tracking Area Relevant for RAN Slice Instantiation "/> - </record> - <for index='idx' start='0' end='`$getListofCells-configdb-response._length `' > - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> - <parameter name='outputPath' value='tmp.trackingarea.cell' /> - <parameter name='source' value="`'getListofCells-configdb-response.[' + $idx + ']'`" /> - </execute> - <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> - <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSliceModifyAllocate.log" /> - <parameter name="level" value="info" /> - <parameter name="field1" value="`$tmp.trackingarea.cell`"/> - </record> - </for> - <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' > - <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' /> - </execute> - </block> - </outcome> - </execute> - </block> + <for index='ta' start='0' end='`$tmp.trackingAreaListEntries`'> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.payload.trackingArea' /> + <parameter name='source' value="`'tmp.coverageAreaTAList['+ $ta+']'`" /> + </execute> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSliceModifyAllocate.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="trackingArea "/> + <parameter name="field2" value="`$tmp.payload.trackingArea`"/> + </record> + <block atomic='true'> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' > + <parameter name="source" value="`$prop.restapi.configdb.getListOfCells`"/> + <parameter name="outputPath" value="tmp.configdb.getListOfCells.url"/> + <parameter name="target" value="{trackingArea}"/> + <parameter name="replacement" value="`$tmp.payload.trackingArea`"/> + </execute> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="URL for configDB Get getListOfCells for tracking area"/> + <parameter name='field2' value="`$prop.configdb.url + $tmp.configdb.getListOfCells.url`" /> + <parameter name='field3' value="`$tmp.payload.trackingArea`" /> + </record> + <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' > + <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getListOfCells.url`"/> + <parameter name="httpMethod" value="GET"/> + <parameter name="responsePrefix" value="getListofCells-configdb-response"/> + <parameter name='contentType' value='application/json' /> + <parameter name='format' value='json' /> + <parameter name='accept' value='application/json' /> + <outcome value='failure'> + <block> + <set> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/> + </set> + <return status='failure'> + <parameter name='ack-final' value='Y'/> + <parameter name='error-code' value='500'/> + <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/> + </return> + </block> + </outcome> + <outcome value='success'> + <block> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSliceModifyAllocate.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="Successfully Obtained List of Cells from ConfigDB"/> + <parameter name="field2" value="`$getListofCells-configdb-response._length`"/> + <parameter name="field3" value="List of Cells in the Tracking Area Relevant for RAN Slice Instantiation "/> + </record> + <for index='idx' start='0' end='`$getListofCells-configdb-response._length `' > + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> + <parameter name='outputPath' value='tmp.trackingarea.cell' /> + <parameter name='source' value="`'getListofCells-configdb-response.[' + $idx + ']'`" /> + </execute> + <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder"> + <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSliceModifyAllocate.log" /> + <parameter name="level" value="info" /> + <parameter name="field1" value="`$tmp.trackingarea.cell`"/> + </record> + </for> + <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' > + <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' /> + </execute> + </block> + </outcome> + </execute> + </block> + </block> + </for> <for index='idy' start='0' end='`$getNFNSSIRIC-configdb-response._length`' > <block atomic='true'> <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'> |