+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
+ <parameter name='outputPath' value='tmp.pLMNInfoList_nearrtric_length' />\r
+ <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].attributes.pLMNInfoList_length'`" />\r
+ </execute>\r
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
+ <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
+ <parameter name="level" value="info" />\r
+ <parameter name="field1" value="NearRTRIC plmninfolength "/>\r
+ <parameter name="field2" value="`$tmp.pLMNInfoList_nearrtric_length`"/>\r
+ </record>\r
+ <for index='id-ric' start='0' end='`$tmp.pLMNInfoList_nearrtric_length`' >\r
+ <block atomic='true'>\r
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
+ <parameter name='outputPath' value='tmp.ric.sNSSAILength' />\r
+ <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].attributes.pLMNInfoList['+$id-ric+'].sNSSAIList_length'`" />\r
+ </execute>\r
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
+ <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
+ <parameter name="level" value="info" />\r
+ <parameter name="field1" value="NearRTRIC-snssailength "/>\r
+ <parameter name="field2" value="`$tmp.ric.sNSSAILength`"/>\r
+ </record>\r
+ <switch test='`$tmp.ric.sNSSAILength > 0`'>\r
+ <outcome value='true'>\r
+ <block atomic='true'>\r
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
+ <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
+ <parameter name="level" value="info" />\r
+ <parameter name="field1" value="plmninfolistnssailength in true in nearRTRIC "/>\r
+ <parameter name="field2" value="`$tmp.ric.sNSSAILength`"/>\r
+ </record>\r
+ <for index='id-ric-snssai' start='0' end='`$tmp.ric.sNSSAILength`' >\r
+ <block atomic='true'>\r
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
+ <parameter name='outputPath' value='tmp.ric.sNSSAI' />\r
+ <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].attributes.pLMNInfoList['+$id-ric+'].sNSSAIList['+$id-ric-snssai+'].sNssai'`" />\r
+ </execute>\r
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
+ <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
+ <parameter name="level" value="info" />\r
+ <parameter name="field1" value="snssai from cps response"/>\r
+ <parameter name="field2" value="`$tmp.ric.sNSSAI`"/>\r
+ <parameter name="field3" value="sNSSAI from request"/>\r
+ <parameter name="field4" value="`$tmp.sNSSAI`"/>\r
+ </record>\r
+ <switch test='`$tmp.ric.sNSSAI == $tmp.sNSSAI`'>\r
+ <outcome value='true'>\r
+ <block atomic='true'>\r
+ <set>\r
+ <parameter name='tmp.payload.sNSSAI' value="`$tmp.sNSSAI`"/>\r
+ <parameter name='tmp.status' value="`$tmp.status`"/>\r
+ </set>\r
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
+ <parameter name="source" value="`$prop.restapi.cps.tbdmt.execute.endpoint`"/>\r
+ <parameter name="outputPath" value="tmp.cps.putstatus.rtric.url"/>\r
+ <parameter name="target" value="{schemaSet}"/>\r
+ <parameter name="replacement" value="`$tmp.schemaset.name`"/>\r
+ </execute>\r
+ <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
+ <parameter name="source" value="`$tmp.cps.putstatus.rtric.url`"/>\r
+ <parameter name="outputPath" value="tmp.cps.putstatus.rtric.url"/>\r
+ <parameter name="target" value="{templateId}"/>\r
+ <parameter name="replacement" value="`$prop.tbdmt.template.put-status-rtric`"/>\r
+ </execute>\r
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
+ <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
+ <parameter name="level" value="info" />\r
+ <parameter name="field1" value="URL for CPS TDBMT to put status NearRTRIC"/>\r
+ <parameter name='field2' value="`$tmp.cps.putstatus.rtric.url`" />\r
+ <parameter name='field3' value="`$prop.tbdmt.template.put-status-rtric`" />\r
+ </record>\r
+ <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
+ <parameter name="restapiUrl" value="`$tmp.cps.putstatus.rtric.url`"/>\r
+ <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/cps-templates/cps-put-nearrtric.json'`" />\r
+ <parameter name="httpMethod" value="POsT"/>\r
+ <parameter name="responsePrefix" value="cps-put-status-nearrtic-response"/>\r
+ <parameter name='contentType' value='application/json' />\r
+ <parameter name='format' value='json' />\r
+ <parameter name='accept' value='application/json' />\r
+ <parameter name="convertResponse" value="true"/>\r
+ <outcome value='failure'>\r
+ <block atomic='true'>\r
+ <set>\r
+ <parameter name='error-code' value='500'/>\r
+ <parameter name='error-message' value='Error updating nearRTRIC info in CPS. Aborting RPC executiopn'/>\r
+ </set>\r
+ <return status='failure'>\r
+ <parameter name='ack-final' value='Y'/>\r
+ <parameter name='error-code' value='500'/>\r
+ <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/>\r
+ </return>\r
+ </block>\r
+ </outcome>\r
+ <outcome value='success'>\r
+ <block atomic='true'>\r
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
+ <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
+ <parameter name="level" value="info" />\r
+ <parameter name="field1" value="Successfully Updated NearRT RIC info in cps"/>\r
+ </record>\r
+ </block>\r
+ </outcome>\r
+ </execute>\r
+ </block>\r
+ </outcome>\r
+ <outcome value='false'>\r
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
+ <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
+ <parameter name="level" value="info" />\r
+ <parameter name="field1" value="NSSAI doesn't exist "/>\r
+ </record>\r
+ </outcome>\r
+ </switch>\r
+ </block>\r
+ </for>\r
+ </block>\r
+ </outcome>\r
+ <outcome value='false'>\r
+ <block atomic='true'>\r
+ <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
+ <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
+ <parameter name="level" value="info" />\r
+ <parameter name="field1" value="plmninfolistnssailength in false in nearRTRIC "/>\r
+ <parameter name="field2" value="`$tmp.ric.sNSSAILength`"/>\r
+ </record>\r
+ </block>\r
+ </outcome>\r
+ </switch>\r
+ </block>\r
+ </for>\r