2 xmlns='http://www.onap.org/sdnc/svclogic'
3 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}'>
4 <method rpc='activateRANSliceInstance' mode='sync'>
6 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
7 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
8 <parameter name="level" value="info" />
9 <parameter name="field1" value="RPC to handle terminateRANSlice.: "/>
10 <parameter name="field2" value="`$activate-r-a-n-slice-input.action`"/>
11 <parameter name="field3" value="`$activate-r-a-n-slice-input.common-header.timestamp`"/>
12 <parameter name="field4" value="`$activate-r-a-n-slice-input.common-header.request-id`"/>
13 <parameter name="field5" value="`$activate-r-a-n-slice-input.common-header.originator-id`"/>
14 <parameter name="field6" value="RPC Payload String "/>
15 <parameter name="field7" value="`$activate-r-a-n-slice-input.payload`"/>
18 <parameter name='error-code' value='200' />
19 <parameter name='error-message' value='Successful execution of terminateRANSice RPC' />
21 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='jsonStringToCtx'>
22 <parameter name='source' value='activate-r-a-n-slice-input.payload' />
23 <parameter name='outputPath' value='payloadJson' />
24 <parameter name='isEscaped' value='false' />
25 <outcome value='success'>
27 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
28 <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-terminateRANSlice-context.log' />
30 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
31 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
32 <parameter name="level" value="info" />
33 <parameter name="field1" value="Payload for terminateRANSlice.: "/>
34 <parameter name="field2" value="`$tmp.sNSSAI`"/>
35 <parameter name="field3" value="`$payloadJson.input.RANNFNSSIId`"/>
36 <parameter name="field4" value="`$payloadJson.input.callbackURL`"/>
37 <parameter name="field5" value="`$payloadJson.input.sliceProfileId`"/>
42 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
43 <parameter name='outputPath' value='tmp.sNSSAI' />
44 <parameter name='source' value="`$payloadJson.input.NSSAI`" />
46 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
47 <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-terminateRANSlice-context.log' />
49 <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
50 <parameter name='fileName' value='/opt/onap/ccsdk/data/properties/ran-slice-api-dg.properties' />
51 <parameter name='contextPrefix' value='prop' />
53 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
54 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
55 <parameter name="level" value="info" />
56 <parameter name="field1" value="Properties read .. controller details "/>
57 <parameter name="field2" value="`$prop.controller.user`"/>
58 <parameter name="field3" value="`$prop.controller.pwd`"/>
59 <parameter name="field4" value="`$prop.controller.url`"/>
60 <parameter name="field5" value="ransim-mounted (true/false): "/>
61 <parameter name="field6" value="`$prop.ransim-mounted`"/>
62 <parameter name="field7" value="config DB deployed (true/false): "/>
63 <parameter name="field8" value="`$prop.configdb-deployed`"/>
66 <parameter name='tmp.status' value='ACTIVE' />
68 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
69 <parameter name="source" value="`$prop.restapi.configdb.getNearRTRICByNSSI`"/>
70 <parameter name="outputPath" value="tmp.configdb.getNearRTRICByNSSI.url"/>
71 <parameter name="target" value="{ranNFNSSIId}"/>
72 <parameter name="replacement" value="`$payloadJson.input.RANNFNSSIId`"/>
74 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
75 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
76 <parameter name="level" value="info" />
77 <parameter name="field1" value="URL for configDB to Get NearRTRIC for RANNFNSSI"/>
78 <parameter name='field2' value="`$prop.configdb.url + $tmp.configdb.getNearRTRICByNSSI.url`" />
79 <parameter name='field3' value="`$ranNFNSSIId`" />
81 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
82 <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getNearRTRICByNSSI.url`"/>
83 <parameter name="httpMethod" value="GET"/>
84 <parameter name="responsePrefix" value="getNFNSSIRIC-configdb-response"/>
85 <parameter name='contentType' value='application/json' />
86 <parameter name='format' value='json' />
87 <parameter name='accept' value='application/json' />
88 <parameter name="convertResponse" value="true"/>
89 <outcome value='failure'>
92 <parameter name='error-code' value='500'/>
93 <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
97 <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
98 <parameter name="tmp.status" value="`$error-code`"/>
99 <parameter name="tmp.reason" value="`$error-message`"/>
100 <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
101 <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
103 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
104 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
105 <parameter name="level" value="info" />
106 <parameter name="field1" value="URL for SO Callback Response"/>
107 <parameter name='field2' value="`$tmp.so.callbackURL`" />
108 <parameter name='field3' value="`$tmp.status`" />
109 <parameter name='field4' value="`$tmp.reason`" />
110 <parameter name='field5' value="`$tmp.requestID`" />
111 <parameter name='field6' value="`$tmp.action`" />
113 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
114 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
115 <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
116 <parameter name="httpMethod" value="POST"/>
117 <parameter name="responsePrefix" value="so-callback-modify-response"/>
118 <parameter name='contentType' value='application/json' />
119 <parameter name='format' value='json' />
120 <parameter name='accept' value='application/json' />
121 <parameter name="convertResponse" value="true"/>
122 <outcome value='failure'>
124 <return status='failure'>
125 <parameter name='ack-final' value='Y'/>
126 <parameter name="error-code" value="500" />
127 <parameter name="error-message" value="Error sending SO Response" />
131 <outcome value='success'>
133 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
134 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
135 <parameter name="level" value="info" />
136 <parameter name="field1" value="SO Response Sent "/>
144 <outcome value='success'>
145 <block atomic='true'>
146 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
147 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
148 <parameter name="level" value="info" />
149 <parameter name="field1" value="Successfully Obtained NearRT RIC info from ConfigDB"/>
150 <parameter name="field2" value="`$getNFNSSIRIC-configdb-response._length`"/>
152 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
153 <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-terminateRANSlice-configrsp-context.log' />
158 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
159 <parameter name="source" value="`$prop.restapi.configdb.getplmn`"/>
160 <parameter name="outputPath" value="tmp.configdb.getPLMNId.url"/>
161 <parameter name="target" value="{sliceProfileId}"/>
162 <parameter name="replacement" value="`$payloadJson.input.sliceProfileId`"/>
164 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
165 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
166 <parameter name="level" value="info" />
167 <parameter name="field1" value="Get PLMN from SliceProfileId URL: "/>
168 <parameter name="field2" value="`$tmp.configdb.getPLMNId.url`"/>
170 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
171 <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getPLMNId.url`"/>
172 <parameter name="httpMethod" value="GET"/>
173 <parameter name="responsePrefix" value="getPLMN-configdb-response"/>
174 <parameter name='contentType' value='application/json' />
175 <parameter name='format' value='json' />
176 <parameter name='accept' value='application/json' />
177 <parameter name="convertResponse" value="true"/>
179 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
180 <parameter name='outputPath' value='tmp.pLMNId' />
181 <parameter name='source' value="`getPLMN-configdb-response.pLMNId`" />
183 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
184 <parameter name="string" value="`$tmp.pLMNId`" />
185 <parameter name="result" value="tmp.mcc"/>
186 <parameter name="begin-index" value="0" />
187 <parameter name="end-index" value="3" />
189 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
190 <parameter name="string" value="`$tmp.pLMNId`" />
191 <parameter name="result" value="tmp.mnc"/>
192 <parameter name="begin-index" value="4" />
194 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
195 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
196 <parameter name="level" value="info" />
197 <parameter name="field1" value="`$tmp.pLMNId`"/>
198 <parameter name="field2" value="`$tmp.mcc`"/>
199 <parameter name="field3" value="`$tmp.mnc`"/>
201 <for index='idy' start='0' end='`$getNFNSSIRIC-configdb-response._length`' >
202 <block atomic='true'>
203 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
204 <parameter name='outputPath' value='tmp.CUCPList_length' />
205 <parameter name='source' value="`'getNFNSSIRIC-configdb-response.[' + $idy +'].gNBCUCPList_length'`" />
207 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
208 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSliceModifyAllocate.log" />
209 <parameter name="level" value="info" />
210 <parameter name="field1" value="Number of CUCP List Entries "/>
211 <parameter name="field2" value="`$tmp.CUCPList_length`"/>
212 <parameter name="field3" value="for the NearRTRIC"/>
213 <parameter name="field4" value="`$tmp.nearRTRICId`"/>
215 <for index='idz' start='0' end='`$tmp.CUCPList_length`'>
216 <block atomic='true'>
217 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
218 <parameter name='outputPath' value='tmp.CUCPName' />
219 <parameter name='source' value="`'getNFNSSIRIC-configdb-response.['+ $idy +'].gNBCUCPList['+ $idz +'].gNBCUName'`" />
221 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
222 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSliceModifyAllocate.log" />
223 <parameter name="level" value="info" />
224 <parameter name="field1" value="CUCPName "/>
225 <parameter name="field2" value="`$tmp.CUCPName`"/>
227 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
228 <parameter name='outputPath' value='tmp.cellCUList_length' />
229 <parameter name='source' value="`'getNFNSSIRIC-configdb-response.[' + $idy +'].gNBCUCPList[' + $idz +'].cellCUList_length'`" />
231 <for index='idcu' start='0' end='`$tmp.cellCUList_length`' >
232 <block atomic='true'>
233 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
234 <parameter name='outputPath' value='tmp.pLMNInfoList_length' />
235 <parameter name='source' value="`'getNFNSSIRIC-configdb-response.['+ $idy +'].gNBCUCPList['+ $idz +'].cellCUList['+ $idcu +'].pLMNInfoList_length '`" />
237 <for index='id-cuplmn' start='0' end='`$tmp.pLMNInfoList_length`' >
238 <block atomic='true'>
239 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
240 <parameter name='outputPath' value='tmp.configDBSNSSAI' />
241 <parameter name='source' value="`'getNFNSSIRIC-configdb-response.['+ $idy +'].gNBCUCPList['+ $idz +'].cellCUList['+ $idcu +'].pLMNInfoList['+ $id-cuplmn +'].sNSSAI.sNSSAI'`" />
243 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
244 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSliceModifyAllocate.log" />
245 <parameter name="level" value="info" />
246 <parameter name="field1" value="sNSSAI - getNFNSSIRIC-configdb-response"/>
247 <parameter name="field2" value="`$tmp.configDBSNSSAI`"/>
248 <parameter name="field3" value="sNSSAI from request"/>
249 <parameter name="field4" value="`$tmp.sNSSAI`"/>
251 <switch test='`$tmp.configDBSNSSAI == $tmp.sNSSAI`'>
252 <outcome value='true'>
253 <block atomic='true'>
254 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
255 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSliceModifyAllocate.log" />
256 <parameter name="level" value="info" />
257 <parameter name="field1" value="CellCU is applicable for the NSSAI "/>
259 <switch test='`$prop.ransim-mounted`'>
260 <outcome value='false'>
261 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
262 <parameter name="source" value="`$prop.restapi.patchPLMNInfoListEntry.ToNRCellCU`"/>
263 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry.url"/>
264 <parameter name="target" value="{idNearRTRIC}"/>
265 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
268 <outcome value='true'>
269 <block atomic='true'>
270 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
271 <parameter name="source" value="`$prop.restapi.patchPLMNInfoListEntry.ToNRCellCU.ransim-mounted`"/>
272 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry.url"/>
273 <parameter name="target" value="{idNearRTRIC}"/>
274 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
276 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
277 <parameter name="source" value="`$tmp.patchPLMNInfoListEntry.url`"/>
278 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry.url"/>
279 <parameter name="target" value="{mountName}"/>
280 <parameter name="replacement" value="`$tmp.CUCPName`"/>
285 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
286 <parameter name='outputPath' value='tmp.cellCULocalId' />
287 <parameter name='source' value="`'getNFNSSIRIC-configdb-response.['+ $idy +'].gNBCUCPList['+ $idz +'].cellCUList['+ $idcu +'].cellLocalId'`" />
289 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
290 <parameter name="source" value="`$tmp.patchPLMNInfoListEntry.url`"/>
291 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry.url"/>
292 <parameter name="target" value="{idGNBCUCPFunction}"/>
293 <parameter name="replacement" value="`$tmp.CUCPName`"/>
295 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
296 <parameter name="source" value="`$tmp.patchPLMNInfoListEntry.url`"/>
297 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry.url"/>
298 <parameter name="target" value="{idNRCellCU}"/>
299 <parameter name="replacement" value="`$tmp.cellCULocalId`"/>
301 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
302 <parameter name="source" value="`$tmp.patchPLMNInfoListEntry.url`"/>
303 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry.url"/>
304 <parameter name="target" value="{mcc}"/>
305 <parameter name="replacement" value="`$tmp.mcc`"/>
307 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
308 <parameter name="source" value="`$tmp.patchPLMNInfoListEntry.url`"/>
309 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry.url"/>
310 <parameter name="target" value="{mnc}"/>
311 <parameter name="replacement" value="`$tmp.mnc`"/>
313 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
314 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
315 <parameter name="level" value="info" />
316 <parameter name="field1" value="patch cellCU NSSAI parameters"/>
317 <parameter name="field2" value="`$tmp.nearRTRICId`"/>
318 <parameter name="field3" value="`$tmp.CUCPName`"/>
319 <parameter name="field4" value="`$tmp.cellCULocalId`"/>
320 <parameter name="field5" value="`$tmp.mcc`"/>
321 <parameter name="field6" value="`$tmp.mnc`"/>
322 <parameter name="field7" value="`$tmp.patchPLMNInfoListEntry.url`"/>
324 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
325 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-patch-sNSSAI-status.json'`" />
326 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.patchPLMNInfoListEntry.url`"/>
327 <parameter name="restapiUser" value="`$prop.controller.user`" />
328 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
329 <parameter name="httpMethod" value="PATCH"/>
330 <parameter name="responsePrefix" value="activate-cellCU-PLMNInfoList-response"/>
331 <parameter name='contentType' value='application/yang.patch+json' />
332 <parameter name='accept' value='application/yang.patch-status+json'/>
333 <parameter name='format' value='json' />
334 <outcome value='failure'>
335 <block atomic='true'>
337 <parameter name='error-code' value='500'/>
338 <parameter name='error-message' value='Error patching cellCU PLMNInfoList. Aborting RPC executiopn'/>
340 <return status='failure'>
341 <parameter name='ack-final' value='Y'/>
342 <parameter name='error-code' value='500'/>
343 <parameter name='error-message' value='Error updating NRcellCU - PLMNInfo. Aborting RPC executiopn'/>
345 <block atomic='true'>
347 <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
348 <parameter name="tmp.status" value="`$error-code`"/>
349 <parameter name="tmp.reason" value="`$error-message`"/>
350 <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
351 <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
353 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
354 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
355 <parameter name="level" value="info" />
356 <parameter name="field1" value="URL for SO Callback Response"/>
357 <parameter name='field2' value="`$tmp.so.callbackURL`" />
358 <parameter name='field3' value="`$tmp.status`" />
359 <parameter name='field4' value="`$tmp.reason`" />
360 <parameter name='field5' value="`$tmp.requestID`" />
361 <parameter name='field6' value="`$tmp.action`" />
363 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
364 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
365 <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
366 <parameter name="httpMethod" value="POST"/>
367 <parameter name="responsePrefix" value="so-callback-modify-response"/>
368 <parameter name='contentType' value='application/json' />
369 <parameter name='format' value='json' />
370 <parameter name='accept' value='application/json' />
371 <parameter name="convertResponse" value="true"/>
372 <outcome value='failure'>
374 <return status='failure'>
375 <parameter name='ack-final' value='Y'/>
376 <parameter name="error-code" value="500" />
377 <parameter name="error-message" value="Error sending SO Response" />
381 <outcome value='success'>
383 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
384 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
385 <parameter name="level" value="info" />
386 <parameter name="field1" value="SO Response Sent "/>
394 <outcome value='success'>
395 <block atomic='true'>
396 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
397 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
398 <parameter name="level" value="info" />
399 <parameter name="field1" value="Successfully Patched - cellCU PLMNInfo List"/>
414 <block atomic='true'>
415 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
416 <parameter name='outputPath' value='tmp.CUUPList_length' />
417 <parameter name='source' value="`'getNFNSSIRIC-configdb-response.[' + $idy +'].gNBCUUPList_length'`" />
419 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
420 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
421 <parameter name="level" value="info" />
422 <parameter name="field1" value="Number of CUCP List Entries "/>
423 <parameter name="field2" value="`$tmp.CUUPList_length`"/>
424 <parameter name="field3" value="for the NearRTRIC"/>
425 <parameter name="field4" value="`$tmp.nearRTRICId`"/>
427 <for index='id-cuup' start='0' end='`$tmp.CUUPList_length`'>
428 <block atomic='true'>
429 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
430 <parameter name='outputPath' value='tmp.idGNBCUUPFunction' />
431 <parameter name='source' value="`'getNFNSSIRIC-configdb-response.['+ $idy +'].gNBCUUPList['+ $id-cuup +'].gNBCUUPId'`" />
433 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
434 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
435 <parameter name="level" value="info" />
436 <parameter name="field1" value="idGNBCUUPFunction "/>
437 <parameter name="field2" value="`$tmp.idGNBCUUPFunction`"/>
439 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
440 <parameter name='outputPath' value='tmp.pLMNInfoList' />
441 <parameter name='source' value="`'getNFNSSIRIC-configdb-response.['+ $idy +'].gNBCUUPList['+ $id-cuup +'].pLMNInfoList_length'`" />
443 <for index='id-plmn' start='0' end='`$tmp.pLMNInfoList`'>
444 <block atomic='true'>
445 <switch test='`$prop.ransim-mounted`'>
446 <outcome value='false'>
447 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
448 <parameter name="source" value="`$prop.restapi.patchPLMNInfoListEntry.ToGNBCUUP`"/>
449 <parameter name="outputPath" value="tmp.patchPLMNInfoList-CUUP.url"/>
450 <parameter name="target" value="{idNearRTRIC}"/>
451 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
454 <outcome value='true'>
455 <block atomic='true'>
456 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
457 <parameter name="source" value="`$prop.restapi.patchPLMNInfoListEntry.ToGNBCUUP.ransim-mounted`"/>
458 <parameter name="outputPath" value="tmp.patchPLMNInfoList-CUUP.url"/>
459 <parameter name="target" value="{idNearRTRIC}"/>
460 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
462 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
463 <parameter name="source" value="`$tmp.patchPLMNInfoList-CUUP.url`"/>
464 <parameter name="outputPath" value="tmp.patchPLMNInfoList-CUUP.url"/>
465 <parameter name="target" value="{mountName}"/>
466 <parameter name="replacement" value="`$tmp.idGNBCUUPFunction`"/>
471 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
472 <parameter name="source" value="`$tmp.patchPLMNInfoList-CUUP.url`"/>
473 <parameter name="outputPath" value="tmp.patchPLMNInfoList-CUUP.url"/>
474 <parameter name="target" value="{idGNBCUUPFunction}"/>
475 <parameter name="replacement" value="`$tmp.idGNBCUUPFunction`"/>
477 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
478 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-patch-sNSSAI-status.json'`" />
479 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.patchPLMNInfoList-CUUP.url`"/>
480 <parameter name="restapiUser" value="`$prop.controller.user`" />
481 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
482 <parameter name="httpMethod" value="PATCH"/>
483 <parameter name="responsePrefix" value="activate-gNBCUUP-PLMNInfoList-response"/>
484 <parameter name='contentType' value='application/yang.patch+json' />
485 <parameter name='accept' value='application/yang.patch-status+json'/>
486 <parameter name='format' value='json' />
487 <outcome value='failure'>
488 <block atomic='true'>
490 <parameter name='error-code' value='500'/>
491 <parameter name='error-message' value='Error patching CUUP PLMNInfoList. Aborting RPC executiopn'/>
493 <return status='failure'>
494 <parameter name='ack-final' value='Y'/>
495 <parameter name='error-code' value='500'/>
496 <parameter name='error-message' value='Error patching CUUP PLMNInfo. Aborting RPC executiopn'/>
498 <block atomic='true'>
500 <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
501 <parameter name="tmp.status" value="`$error-code`"/>
502 <parameter name="tmp.reason" value="`$error-message`"/>
503 <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
504 <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
506 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
507 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
508 <parameter name="level" value="info" />
509 <parameter name="field1" value="URL for SO Callback Response"/>
510 <parameter name='field2' value="`$tmp.so.callbackURL`" />
511 <parameter name='field3' value="`$tmp.status`" />
512 <parameter name='field4' value="`$tmp.reason`" />
513 <parameter name='field5' value="`$tmp.requestID`" />
514 <parameter name='field6' value="`$tmp.action`" />
516 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
517 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
518 <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
519 <parameter name="httpMethod" value="POST"/>
520 <parameter name="responsePrefix" value="so-callback-modify-response"/>
521 <parameter name='contentType' value='application/json' />
522 <parameter name='format' value='json' />
523 <parameter name='accept' value='application/json' />
524 <parameter name="convertResponse" value="true"/>
525 <outcome value='failure'>
527 <return status='failure'>
528 <parameter name='ack-final' value='Y'/>
529 <parameter name="error-code" value="500" />
530 <parameter name="error-message" value="Error sending SO Response" />
534 <outcome value='success'>
536 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
537 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
538 <parameter name="level" value="info" />
539 <parameter name="field1" value="SO Response Sent "/>
547 <outcome value='success'>
548 <block atomic='true'>
549 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
550 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
551 <parameter name="level" value="info" />
552 <parameter name="field1" value="Successfully Patched - gNBCUUP PLMNInfo List"/>
562 <block atomic='true'>
563 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
564 <parameter name='outputPath' value='tmp.DUList_length' />
565 <parameter name='source' value="`'getNFNSSIRIC-configdb-response.[' + $idy +'].gNBDUList_length'`" />
567 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
568 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
569 <parameter name="level" value="info" />
570 <parameter name="field1" value="Number of DU List Entries "/>
571 <parameter name="field2" value="`$tmp.DUList_length`"/>
572 <parameter name="field3" value="for the NearRTRIC"/>
573 <parameter name="field4" value="`$tmp.nearRTRICId`"/>
575 <for index='id-du' start='0' end='`$tmp.DUList_length`'>
576 <block atomic='true'>
577 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
578 <parameter name='outputPath' value='tmp.GNBDUId' />
579 <parameter name='source' value="`'getNFNSSIRIC-configdb-response.['+ $idy +'].gNBDUList['+ $id-du +'].gNBDUId'`" />
581 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
582 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
583 <parameter name="level" value="info" />
584 <parameter name="field1" value="GNBDUId "/>
585 <parameter name="field2" value="`$tmp.GNBDUId`"/>
587 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
588 <parameter name='outputPath' value='tmp.cellDUList_length' />
589 <parameter name='source' value="`'getNFNSSIRIC-configdb-response.[' + $idy +'].gNBDUList[' + $id-du +'].cellDUList_length'`" />
591 <for index='id-celldu' start='0' end='`$tmp.cellDUList_length`' >
593 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
594 <parameter name='outputPath' value='tmp.DUpLMNInfoList_length' />
595 <parameter name='source' value="`'getNFNSSIRIC-configdb-response.['+ $idy +'].gNBDUList['+ $id-du +'].cellDUList['+ $id-celldu +'].pLMNInfoList_length '`" />
597 <for index='id-duplmn' start='0' end='`$tmp.DUpLMNInfoList_length`' >
598 <block atomic='true'>
599 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
600 <parameter name='outputPath' value='tmp.configDBSNSSAI-DU' />
601 <parameter name='source' value="`'getNFNSSIRIC-configdb-response.['+ $idy +'].gNBDUList['+ $id-du +'].cellDUList['+ $id-celldu +'].pLMNInfoList['+ $id-duplmn +'].sNSSAI.sNSSAI'`" />
603 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
604 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
605 <parameter name="level" value="info" />
606 <parameter name="field1" value="sNSSAI - getNFNSSIRIC-configdb-response"/>
607 <parameter name="field2" value="`$tmp.configDBSNSSAI-DU`"/>
608 <parameter name="field3" value="sNSSAI from request"/>
609 <parameter name="field4" value="`$tmp.sNSSAI`"/>
611 <switch test='`$tmp.configDBSNSSAI-DU == $tmp.sNSSAI`'>
612 <outcome value='true'>
613 <block atomic='true'>
614 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
615 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
616 <parameter name="level" value="info" />
617 <parameter name="field1" value="CellDU is applicable for the NSSAI "/>
619 <switch test='`$prop.ransim-mounted`'>
620 <outcome value='false'>
621 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
622 <parameter name="source" value="`$prop.restapi.patchPLMNInfoListEntry.ToNRCellDU`"/>
623 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry-cellDU.url"/>
624 <parameter name="target" value="{idNearRTRIC}"/>
625 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
628 <outcome value='true'>
629 <block atomic='true'>
630 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
631 <parameter name="source" value="`$prop.restapi.patchPLMNInfoListEntry.ToNRCellDU.ransim-mounted`"/>
632 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry-cellDU.url"/>
633 <parameter name="target" value="{idNearRTRIC}"/>
634 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
636 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
637 <parameter name="source" value="`$tmp.patchPLMNInfoListEntry-cellDU.url`"/>
638 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry-cellDU.url"/>
639 <parameter name="target" value="{mountName}"/>
640 <parameter name="replacement" value="`$tmp.GNBDUId`"/>
645 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
646 <parameter name='outputPath' value='tmp.cellDULocalId' />
647 <parameter name='source' value="`'getNFNSSIRIC-configdb-response.['+ $idy +'].gNBDUList['+ $id-du +'].cellCUList['+ $id-celldu +'].cellLocalId'`" />
649 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
650 <parameter name="source" value="`$tmp.patchPLMNInfoListEntry-cellDU.url`"/>
651 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry-cellDU.url"/>
652 <parameter name="target" value="{idGNBDUFunction}"/>
653 <parameter name="replacement" value="`$tmp.GNBDUId`"/>
655 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
656 <parameter name="source" value="`$tmp.patchPLMNInfoListEntry-cellDU.url`"/>
657 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry-cellDU.url"/>
658 <parameter name="target" value="{idNRCellDU}"/>
659 <parameter name="replacement" value="`$tmp.cellCULocalId`"/>
661 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
662 <parameter name="source" value="`$tmp.patchPLMNInfoListEntry-cellDU.url`"/>
663 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry-cellDU.url"/>
664 <parameter name="target" value="{mcc}"/>
665 <parameter name="replacement" value="`$tmp.mcc`"/>
667 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
668 <parameter name="source" value="`$tmp.patchPLMNInfoListEntry-cellDU.url`"/>
669 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry-cellDU.url"/>
670 <parameter name="target" value="{mnc}"/>
671 <parameter name="replacement" value="`$tmp.mnc`"/>
673 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
674 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
675 <parameter name="level" value="info" />
676 <parameter name="field1" value="patch cellCU NSSAI parameters"/>
677 <parameter name="field2" value="`$tmp.nearRTRICId`"/>
678 <parameter name="field3" value="`$tmp.GNBDUId`"/>
679 <parameter name="field4" value="`$tmp.cellDULocalId`"/>
680 <parameter name="field5" value="`$tmp.mcc`"/>
681 <parameter name="field6" value="`$tmp.mnc`"/>
682 <parameter name="field7" value="`$tmp.patchPLMNInfoListEntry-cellDU.url`"/>
684 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
685 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-patch-sNSSAI-status.json'`" />
686 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.patchPLMNInfoListEntry-cellDU.url`"/>
687 <parameter name="restapiUser" value="`$prop.controller.user`" />
688 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
689 <parameter name="httpMethod" value="PATCH"/>
690 <parameter name="responsePrefix" value="activate-cellDU-PLMNInfoList-response"/>
691 <parameter name='contentType' value='application/yang.patch+json' />
692 <parameter name='accept' value='application/yang.patch-status+json'/>
693 <parameter name='format' value='json' />
694 <outcome value='failure'>
695 <block atomic='true'>
696 <block atomic='true'>
698 <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
699 <parameter name="tmp.status" value="`$error-code`"/>
700 <parameter name="tmp.reason" value="`$error-message`"/>
701 <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
702 <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
704 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
705 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
706 <parameter name="level" value="info" />
707 <parameter name="field1" value="URL for SO Callback Response"/>
708 <parameter name='field2' value="`$tmp.so.callbackURL`" />
709 <parameter name='field3' value="`$tmp.status`" />
710 <parameter name='field4' value="`$tmp.reason`" />
711 <parameter name='field5' value="`$tmp.requestID`" />
712 <parameter name='field6' value="`$tmp.action`" />
714 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
715 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
716 <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
717 <parameter name="httpMethod" value="POST"/>
718 <parameter name="responsePrefix" value="so-callback-modify-response"/>
719 <parameter name='contentType' value='application/json' />
720 <parameter name='format' value='json' />
721 <parameter name='accept' value='application/json' />
722 <parameter name="convertResponse" value="true"/>
723 <outcome value='failure'>
725 <return status='failure'>
726 <parameter name='ack-final' value='Y'/>
727 <parameter name="error-code" value="500" />
728 <parameter name="error-message" value="Error sending SO Response" />
732 <outcome value='success'>
734 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
735 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
736 <parameter name="level" value="info" />
737 <parameter name="field1" value="SO Response Sent "/>
744 <parameter name='error-code' value='500'/>
745 <parameter name='error-message' value='Error patching cellDU PLMNInfoList. Aborting RPC executiopn'/>
747 <return status='failure'>
748 <parameter name='ack-final' value='Y'/>
749 <parameter name='error-code' value='500'/>
750 <parameter name='error-message' value='Error updating NECellDU - PLMNInfo. Aborting RPC executiopn'/>
754 <outcome value='success'>
755 <block atomic='true'>
756 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
757 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
758 <parameter name="level" value="info" />
759 <parameter name="field1" value="Successfully Patched - cellDU PLMNInfo List"/>
775 <return status='success'>
776 <parameter name="ack-final" value="Y" />
777 <parameter name="error-code" value="200" />
778 <parameter name="error-message" value="SUCCESSFUL Execution" />
780 <block atomic='true'>
782 <parameter name="tmp.status" value="`$error-code`"/>
783 <parameter name="tmp.reason" value="`$error-message`"/>
784 <parameter name="tmp.requestID" value="`$activate-r-a-n-slice-input.common-header.request-id `"/>
785 <parameter name="tmp.action" value="`$activate-r-a-n-slice-input.action`"/>
787 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
788 <parameter name="source" value="`$prop.restapi.so.callbackURL`"/>
789 <parameter name="outputPath" value="tmp.so.callbackURL"/>
790 <parameter name="target" value="{requestId}"/>
791 <parameter name="replacement" value="`$tmp.requestID`"/>
793 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
794 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
795 <parameter name="level" value="info" />
796 <parameter name="field1" value="URL for SO Callback Response"/>
797 <parameter name='field2' value="`$payloadJson.input.callbackURL`" />
798 <parameter name='field3' value="`$tmp.status`" />
799 <parameter name='field4' value="`$tmp.reason`" />
800 <parameter name='field5' value="`$tmp.requestID`" />
801 <parameter name='field6' value="`$tmp.action`" />
803 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
804 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
805 <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
806 <parameter name="httpMethod" value="POST"/>
807 <parameter name="responsePrefix" value="so-callback-response"/>
808 <parameter name='contentType' value='application/json' />
809 <parameter name='format' value='json' />
810 <parameter name='accept' value='application/json' />
811 <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
812 <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
813 <outcome value='failure'>
816 <parameter name='error-code' value='500'/>
817 <parameter name='error-message' value='Error sending SO response. Aborting RPC executiopn'/>
819 <return status='failure'>
820 <parameter name='ack-final' value='Y'/>
821 <parameter name="error-code" value="500" />
822 <parameter name="error-message" value="Error sending SO Response" />
826 <outcome value='success'>
828 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
829 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />
830 <parameter name="level" value="info" />
831 <parameter name="field1" value="SO Response Sent "/>