diff options
author | 2021-04-13 21:47:01 +0530 | |
---|---|---|
committer | 2021-04-13 21:50:51 +0530 | |
commit | d530376a63dd3b20a416d908cec395716a62914a (patch) | |
tree | 55aa3cf35710f2615090d6258460d17d3eafae82 /platform-logic/ran-slice-api/src/main/xml | |
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/ran-slice-api/src/main/xml')
2 files changed, 2048 insertions, 1984 deletions
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'> |