<parameter name="tmp.uLThptPerSlice" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id1].uLThptPerSlice`"/>
<parameter name="tmp.nearRTRICId" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id1].nearRTRICId`"/>
</set>
+ <switch test='`$tmp.nearRTRICId == 11 `'>
+ <outcome value='true'>
+ <set>
+ <parameter name='tmp.policytype.url' value='`$prop.a1.policytype.url.nearrtric11`'/>
+ <parameter name="tmp.policyinstance.url" value="`$prop.a1.policyinstance.url.nearrtric11`"/>
+ </set>
+ </outcome>
+ <outcome value='false'>
+ <set>
+ <parameter name='tmp.policytype.url' value='`$prop.a1.policytype.url.nearrtric22`'/>
+ <parameter name="tmp.policyinstance.url" value="`$prop.a1.policyinstance.url.nearrtric22`"/>
+ </set>
+ </outcome>
+ </switch>
+ <block atomic='true'>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="restapiUrl" value="`$tmp.policytype.url`"/>
+ <parameter name='format' value='json' />
+ <parameter name='httpMethod' value='GET' />
+ <parameter name='contentType' value='application/json' />
+ <parameter name='responsePrefix' value='get-policytypes-responsse' />
+ <outcome value='success'>
+ <block atomic='true'>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+ <parameter name='outputPath' value='tmp.policytypelength' />
+ <parameter name='source' value="`'get-policytypes-responsse._length'`" />
+ </execute>
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+ <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
+ <parameter name="level" value="info" />
+ <parameter name="field1" value="policy types length "/>
+ <parameter name="field2" value="`$tmp.policytypelength`"/>
+ </record>
+ <switch test='`$tmp.policytypelength > 0`'>
+ <outcome value='true'>
+ <block atomic='true'>
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+ <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
+ <parameter name="level" value="info" />
+ <parameter name="field1" value="policy type already exists "/>
+ <parameter name="field2" value="SUCCESSFULL"/>
+ </record>
+ </block>
+ </outcome>
+ <outcome value='false'>
+ <block atomic='true'>
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+ <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
+ <parameter name="level" value="info" />
+ <parameter name="field1" value="creating new policy "/>
+ <parameter name="field2" value="SUCCESSFULL"/>
+ </record>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/A1policytype.json'`" />
+ <parameter name="restapiUrl" value="https://10.31.4.11:30226/events/A1-P"/>
+ <parameter name='format' value='json' />
+ <parameter name='httpMethod' value='POST' />
+ <parameter name='contentType' value='application/json' />
+ <parameter name='responsePrefix' value='dmaap' />
+ <outcome value='success'>
+ <block atomic='true'>
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+ <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
+ <parameter name="level" value="info" />
+ <parameter name="field1" value="Create policytype "/>
+ <parameter name="field2" value="Succesfull"/>
+ </record>
+ </block>
+ </outcome>
+ </execute>
+ </block>
+ </outcome>
+ </switch>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/A1policyinstance.json'`" />
+ <parameter name="restapiUrl" value="https://10.31.4.11:30226/events/A1-P"/>
+ <parameter name='format' value='json' />
+ <parameter name='httpMethod' value='POST' />
+ <parameter name='contentType' value='application/json' />
+ <parameter name='responsePrefix' value='dmaap-res' />
+ <outcome value='success'>
+ <block atomic='true'>
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+ <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
+ <parameter name="level" value="info" />
+ <parameter name="field1" value="Create policyinstance "/>
+ <parameter name="field2" value="Succesfull"/>
+ </record>
+ </block>
+ </outcome>
+ </execute>
+ </block>
+ </outcome>
+ <outcome value='failure'>
+ <block atomic='true'>
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+ <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
+ <parameter name="level" value="info" />
+ <parameter name="field1" value="req error "/>
+ <parameter name="field2" value="Failure"/>
+ </record>
+ </block>
+ </outcome>
+ </execute>
+ </block>
<block atomic='true'>
<switch test='`$prop.ransim-mounted`'>
<outcome value='false'>
<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='*/*' />
<outcome value='failure'>
<block>
<return status='failure'>
<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='*/*' />
<outcome value='failure'>
<block>
<return status='failure'>
<set>
<parameter name='tmp.pLMNId' value='`$getPLMN-CL-configdb-response.plmnId`'/>
</set>
- <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
- <parameter name="string" value="`$tmp.pLMNId`" />
- <parameter name="result" value="tmp.mcc"/>
- <parameter name="begin-index" value="0" />
- <parameter name="end-index" value="3" />
- </execute>
- <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
- <parameter name="string" value="`$tmp.pLMNId`" />
- <parameter name="result" value="tmp.mnc"/>
- <parameter name="begin-index" value="4" />
- </execute>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
+ <parameter name="original_string" value="`$tmp.pLMNId`" />
+ <parameter name="regex" value="-"/>
+ <parameter name="ctx_memory_result_key" value="tmp.plmnList" />
+ </execute>
+ <set>
+ <parameter name='tmp.mcc' value='`$tmp.plmnList[0]`'/>
+ <parameter name='tmp.mnc' value='`$tmp.plmnList[1]`'/>
+ </set>
+ </block>
<record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
<parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
<parameter name="level" value="info" />
<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='*/*' />
<outcome value='failure'>
<block>
<return status='failure'>
<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='*/*' />
<outcome value='failure'>
<block>
<return status='failure'>
<set>
<parameter name='tmp.pLMNId' value='`$getPLMN-CL-configdb-response.plmnId`'/>
</set>
- <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
- <parameter name="string" value="`$tmp.pLMNId`" />
- <parameter name="result" value="tmp.mcc"/>
- <parameter name="begin-index" value="0" />
- <parameter name="end-index" value="3" />
- </execute>
- <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
- <parameter name="string" value="`$tmp.pLMNId`" />
- <parameter name="result" value="tmp.mnc"/>
- <parameter name="begin-index" value="4" />
- </execute>
+ <block atomic="true">
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
+ <parameter name="original_string" value="`$tmp.pLMNId`" />
+ <parameter name="regex" value="-"/>
+ <parameter name="ctx_memory_result_key" value="tmp.plmnList" />
+ </execute>
+ <set>
+ <parameter name='tmp.mcc' value='`$tmp.plmnList[0]`'/>
+ <parameter name='tmp.mnc' value='`$tmp.plmnList[1]`'/>
+ </set>
+ </block>
<record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
<parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
<parameter name="level" value="info" />
<block atomic="true">
<set>
<parameter name="tmp.nearRTRICId" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id-is].nearRTRICId`"/>
+ <parameter name="tmp.CUCPName" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id-is].gNBCUName`"/>
</set>
<switch test='`$prop.ransim-mounted`'>
<outcome value='false'>
<for index='id2' start='0' end="`$tmp.CUCellListEntries`" >
<block atomic="true">
<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
- <parameter name='outputPath' value='tmp.cellLocalId' />
+ <parameter name='outputPath' value='tmp.cellCULocalId' />
<parameter name='source' value="`'payloadJson.input.additionalproperties.resourceConfig.data['+$id-is+'].cellCUList['+$id2+'].cellLocalId'`" />
</execute>
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat'>
+ <parameter name="source" value="`$tmp.cellCULocalId`" />
+ <parameter name="target" value="-maxNumberofConns"/>
+ <parameter name="outputPath" value="tmp.cellLocalId" />
+ </execute>
<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
<parameter name='outputPath' value='tmp.predictedMaxNumberofConns' />
<parameter name='source' value="`'payloadJson.input.additionalproperties.resourceConfig.data['+$id-is+'].cellCUList['+$id2+'].configData.predictedMaxNumberofConns'`" />
<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='*/*' />
<outcome value='failure'>
<block>
<return status='failure'>
</outcome>
</execute>
</block>
+ <block atomic="true">
+ <set>
+ <parameter name='tmp.cellLocalId' value='`$tmp.cellCULocalId`'/>
+ <parameter name='tmp.payload.pLMNId' value='`$tmp.pLMNId`'/>
+ <parameter name='tmp.payload.sNSSAI' value='`$tmp.payload.sNSSAI`'/>
+ <parameter name='tmp.maxNumberOfConns' value='`$tmp.predictedMaxNumberofConns`'/>
+ </set>
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+ <parameter name="file" value="/opt/opendaylight/current/data/log/intelligentSlicing.log" />
+ <parameter name="level" value="info" />
+ <parameter name="field1" value="cellLocalId"/>
+ <parameter name="field2" value="`$tmp.cellLocalId`"/>
+ <parameter name="field3" value="pLMNId"/>
+ <parameter name="field4" value="`$tmp.payload.pLMNId`"/>
+ <parameter name="field5" value="maxNumberOfConns"/>
+ <parameter name="field6" value="`$tmp.maxNumberOfConns`"/>
+ <parameter name="field7" value="gNBCUName"/>
+ <parameter name="field8" value="`$tmp.gNBCUCPList.gNBCUName`"/>
+ <parameter name="field9" value="gNBId"/>
+ <parameter name="field10" value="`$tmp.gNBCUCPList.gNBId`"/>
+ <parameter name="field11" value="nFType"/>
+ <parameter name="field12" value="`$tmp.gNBCUCPList.nFType`"/>
+ </record>
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+ <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateCellCU`"/>
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateCellCU.json'`" />
+ <parameter name="httpMethod" value="PATCH"/>
+ <parameter name="responsePrefix" value="update-nrCellCU-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 atomic='true'>
+ <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='*/*' />
+ <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/so-callback-response.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 in updating Config DB - NRCellCU. 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 NRCellCU-PLMNInfo 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/instantiateRANSliceModifyAllocate.log" />
+ <parameter name="level" value="info" />
+ <parameter name="field1" value="Successfully updated ConfigDB - NRCellCU pLMNinfo "/>
+ </record>
+ </block>
+ </outcome>
+ </execute>
+ </block>
</for>
</block>
</for>
<parameter name="target" value="{requestId}"/>
<parameter name="replacement" value="`$tmp.requestID`"/>
</execute>
+ <switch test='`$error-code`'>
+ <outcome value='200'>
+ <set>
+ <parameter name="tmp.status" value="success"/>
+ </set>
+ </outcome>
+ <outcome value='Other'>
+ <set>
+ <parameter name="tmp.status" value="`$error-code`"/>
+ </set>
+ </outcome>
+ </switch>
<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="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'>