summaryrefslogtreecommitdiffstats
path: root/platform-logic/ran-slice-api/src/main/xml/ran-slice-api_instantiateRANSliceAllocate.xml
diff options
context:
space:
mode:
Diffstat (limited to 'platform-logic/ran-slice-api/src/main/xml/ran-slice-api_instantiateRANSliceAllocate.xml')
-rw-r--r--platform-logic/ran-slice-api/src/main/xml/ran-slice-api_instantiateRANSliceAllocate.xml3863
1 files changed, 1944 insertions, 1919 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