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='instantiateRANSliceReconfigure' mode='sync'>
6 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
7 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
8 <parameter name="level" value="info" />
9 <parameter name="field1" value="Reached instantiateRANSliceReconfigure "/>
11 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
12 <parameter name='source' value='`$instantiate-r-a-n-slice-input.payload`' />
13 <parameter name='target' value='dLThptPerSlice' />
14 <outcome value='true'>
16 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
17 <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
18 <parameter name="level" value="info" />
19 <parameter name="field1" value="PAYLOAD contains dLThptPerSlice...Closed loop "/>
23 <parameter name='tmp.payload.numberUpdates' value='`$payloadJson.input.additionalproperties.resourceConfig.data_length`'/>
24 <parameter name="tmp.sliceProfileId" value="`$payloadJson.input.sliceProfile.sliceProfileId`"/>
25 <parameter name='tmp.payload.sNSSAI' value='`$payloadJson.input.sliceProfile.sNSSAI`'/>
27 <for index='id1' start='0' end="`$tmp.payload.numberUpdates`" >
29 <parameter name="tmp.dLThptPerSlice" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id1].dLThptPerSlice`"/>
30 <parameter name="tmp.uLThptPerSlice" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id1].uLThptPerSlice`"/>
31 <parameter name="tmp.nearRTRICId" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id1].nearRTRICId`"/>
34 <switch test='`$prop.ransim-mounted`'>
35 <outcome value='false'>
37 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
38 <parameter name="source" value="`$prop.restapi.addSliceProfile.ToNearRTRIC`"/>
39 <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/>
40 <parameter name="target" value="{idNearRTRIC}"/>
41 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
43 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
44 <parameter name="source" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
45 <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/>
46 <parameter name="target" value="{sliceProfileId}"/>
47 <parameter name="replacement" value="`$tmp.sliceProfileId`"/>
51 <outcome value='true'>
53 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
54 <parameter name="source" value="`$prop.restapi.addSliceProfile.ToNearRTRIC.ransim-mounted`"/>
55 <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/>
56 <parameter name="target" value="{idNearRTRIC}"/>
57 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
59 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
60 <parameter name="source" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
61 <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/>
62 <parameter name="target" value="{sliceProfileId}"/>
63 <parameter name="replacement" value="`$tmp.sliceProfileId`"/>
65 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
66 <parameter name="source" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
67 <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/>
68 <parameter name="target" value="{mountName}"/>
69 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
74 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
75 <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
76 <parameter name="level" value="info" />
77 <parameter name="field1" value="Patch SliceProfile ToNearRTRIC url for closed loop:"/>
78 <parameter name="field2" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
80 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
81 <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
82 <parameter name="level" value="info" />
83 <parameter name="field1" value="Setting variables for PATCH SliceProfile ToNearRTRIC - closed loop"/>
84 <parameter name="field2" value="`$prop.controller.url + $tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
85 <parameter name="field3" value="`$tmp.dLThptPerSlice`"/>
86 <parameter name="field4" value="`$tmp.uLThptPerSlice`"/>
87 <parameter name="field5" value="`$tmp.nearRTRICId`"/>
88 <parameter name="field6" value="`$tmp.sliceProfileId`"/>
90 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
91 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-closed-loop-nearRTRIC-patch.json'`" />
92 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
93 <parameter name="restapiUser" value="`$prop.controller.user`" />
94 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
95 <parameter name="httpMethod" value="PATCH"/>
96 <parameter name="responsePrefix" value="nearRTRIC-slice-patch-response"/>
97 <parameter name='contentType' value='application/yang.patch+json' />
98 <parameter name='format' value='json' />
99 <parameter name='accept' value='application/yang.patch-status+json' />
100 <outcome value='failure'>
103 <parameter name='error-code' value='500'/>
104 <parameter name='error-message' value='Error Patching slice profile parms for close loop. Exiting close loop operation'/>
106 <return status='failure'>
107 <parameter name='ack-final' value='Y'/>
108 <parameter name='error-code' value='500'/>
109 <parameter name='error-message' value='Error Patching slice profile parms for close loop. Exiting close loop operation'/>
111 <block atomic='true'>
113 <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
114 <parameter name="tmp.status" value="`$error-code`"/>
115 <parameter name="tmp.reason" value="`$error-message`"/>
116 <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
117 <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
119 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
120 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
121 <parameter name="level" value="info" />
122 <parameter name="field1" value="URL for SO Callback Response"/>
123 <parameter name='field2' value="`$tmp.so.callbackURL`" />
124 <parameter name='field3' value="`$tmp.status`" />
125 <parameter name='field4' value="`$tmp.reason`" />
126 <parameter name='field5' value="`$tmp.requestID`" />
127 <parameter name='field6' value="`$tmp.action`" />
128 <parameter name='field7' value="`$tmp.CUCPList`" />
129 <parameter name='field8' value="`$tmp.CUUPList`" />
130 <parameter name='field9' value="`$tmp.DUList`" />
132 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
133 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
134 <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
135 <parameter name="httpMethod" value="POST"/>
136 <parameter name="responsePrefix" value="so-callback-response"/>
137 <parameter name='contentType' value='application/json' />
138 <parameter name='format' value='json' />
139 <parameter name='accept' value='*/*' />
140 <outcome value='failure'>
142 <return status='failure'>
143 <parameter name='ack-final' value='Y'/>
144 <parameter name="error-code" value="500" />
145 <parameter name="error-message" value="Error sending SO Response" />
149 <outcome value='success'>
151 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
152 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
153 <parameter name="level" value="info" />
154 <parameter name="field1" value="SO Response Sent "/>
162 <outcome value='success'>
164 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
165 <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
166 <parameter name="level" value="info" />
167 <parameter name="field1" value="Successfully PATCHED NearRTRIC for close loop operation"/>
169 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
170 <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-closedloop-nearRTRIC-context.log' />
176 <block atomic='true'>
177 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
178 <parameter name="source" value="`$prop.restapi.configdb.getplmn`"/>
179 <parameter name="outputPath" value="tmp.configdb.getPLMNId.url"/>
180 <parameter name="target" value="{sliceProfileId}"/>
181 <parameter name="replacement" value="`$tmp.sliceProfileId`"/>
183 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
184 <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
185 <parameter name="level" value="info" />
186 <parameter name="field1" value="Get PLMN from SliceProfileId URL: "/>
187 <parameter name="field2" value="`$tmp.configdb.getPLMNId.url`"/>
189 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
190 <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getPLMNId.url`"/>
191 <parameter name="httpMethod" value="GET"/>
192 <parameter name="responsePrefix" value="getPLMN-CL-configdb-response"/>
193 <parameter name='contentType' value='application/json' />
194 <parameter name='format' value='json' />
195 <parameter name='accept' value='application/json' />
196 <parameter name="convertResponse" value="true"/>
197 <outcome value='success'>
198 <block atomic='true'>
199 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
200 <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
201 <parameter name="level" value="info" />
202 <parameter name="field1" value="Successfully Obtained PLMNId info from ConfigDB"/>
203 <parameter name="field2" value="`$getPLMN-CL-configdb-response`"/>
205 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
206 <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' />
210 <outcome value='failure'>
211 <block atomic='true'>
213 <parameter name='error-code' value='500'/>
214 <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
216 <return status='failure'>
217 <parameter name='ack-final' value='Y'/>
218 <parameter name='error-code' value='500'/>
219 <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
221 <block atomic='true'>
223 <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
224 <parameter name="tmp.status" value="`$error-code`"/>
225 <parameter name="tmp.reason" value="`$error-message`"/>
226 <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
227 <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
229 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
230 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
231 <parameter name="level" value="info" />
232 <parameter name="field1" value="URL for SO Callback Response"/>
233 <parameter name='field2' value="`$tmp.so.callbackURL`" />
234 <parameter name='field3' value="`$tmp.status`" />
235 <parameter name='field4' value="`$tmp.reason`" />
236 <parameter name='field5' value="`$tmp.requestID`" />
237 <parameter name='field6' value="`$tmp.action`" />
238 <parameter name='field7' value="`$tmp.CUCPList`" />
239 <parameter name='field8' value="`$tmp.CUUPList`" />
240 <parameter name='field9' value="`$tmp.DUList`" />
242 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
243 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
244 <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
245 <parameter name="httpMethod" value="POST"/>
246 <parameter name="responsePrefix" value="so-callback-response"/>
247 <parameter name='contentType' value='application/json' />
248 <parameter name='format' value='json' />
249 <parameter name='accept' value='*/*' />
250 <outcome value='failure'>
252 <return status='failure'>
253 <parameter name='ack-final' value='Y'/>
254 <parameter name="error-code" value="500" />
255 <parameter name="error-message" value="Error sending SO Response" />
259 <outcome value='success'>
261 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
262 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
263 <parameter name="level" value="info" />
264 <parameter name="field1" value="SO Response Sent "/>
274 <parameter name='tmp.pLMNId' value='`$getPLMN-CL-configdb-response.plmnId`'/>
276 <block atomic="true">
277 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
278 <parameter name="original_string" value="`$tmp.pLMNId`" />
279 <parameter name="regex" value="-"/>
280 <parameter name="ctx_memory_result_key" value="tmp.plmnList" />
283 <parameter name='tmp.mcc' value='`$tmp.plmnList[0]`'/>
284 <parameter name='tmp.mnc' value='`$tmp.plmnList[1]`'/>
287 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
288 <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
289 <parameter name="level" value="info" />
290 <parameter name="field1" value="`$tmp.pLMNId`"/>
291 <parameter name="field2" value="`$tmp.mcc`"/>
292 <parameter name="field3" value="`$tmp.mnc`"/>
295 <block atomic="true">
296 <switch test='`$prop.ransim-mounted`'>
297 <outcome value='false'>
298 <block atomic='true'>
299 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
300 <parameter name="source" value="`$prop.restapi.addnSSAIEntry.ToNearRTRIC`"/>
301 <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
302 <parameter name="target" value="{idNearRTRIC}"/>
303 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
307 <outcome value='true'>
308 <block atomic='true'>
309 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
310 <parameter name="source" value="`$prop.restapi.addnSSAIEntry.ToNearRTRIC.ransim-mounted`"/>
311 <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
312 <parameter name="target" value="{idNearRTRIC}"/>
313 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
315 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
316 <parameter name="source" value="`$tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
317 <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
318 <parameter name="target" value="{mountName}"/>
319 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
324 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
325 <parameter name="source" value="`$tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
326 <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
327 <parameter name="target" value="{mcc}"/>
328 <parameter name="replacement" value="`$tmp.mcc`"/>
330 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
331 <parameter name="source" value="`$tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
332 <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
333 <parameter name="target" value="{mnc}"/>
334 <parameter name="replacement" value="`$tmp.mnc`"/>
336 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
337 <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
338 <parameter name="level" value="info" />
339 <parameter name="field1" value="Closed loop API params"/>
340 <parameter name="field2" value="`$tmp.nearRTRICId`"/>
341 <parameter name="field3" value="`$tmp.mcc`"/>
342 <parameter name="field4" value="`$tmp.mnc`"/>
343 <parameter name="field5" value="`$tmp.payload.sNSSAI`"/>
344 <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
345 <parameter name="field7" value="`$tmp.dLThptPerSlice`"/>
347 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
348 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-closed-loop-nearRTRIC-config-patch.json'`" />
349 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
350 <parameter name="restapiUser" value="`$prop.controller.user`" />
351 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
352 <parameter name="httpMethod" value="PATCH"/>
353 <parameter name="responsePrefix" value="patch-nearRTRIC-config-response"/>
354 <parameter name='contentType' value='application/yang.patch+json' />
355 <parameter name='accept' value='application/yang.patch-status+json'/>
356 <parameter name='format' value='json' />
357 <outcome value='success'>
358 <block atomic='true'>
359 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
360 <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
361 <parameter name="level" value="info" />
362 <parameter name="field1" value="Successfully patched NearRTRIC configuration"/>
366 <outcome value='failure'>
368 <block atomic='true'>
370 <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
371 <parameter name="tmp.status" value="`$error-code`"/>
372 <parameter name="tmp.reason" value="`$error-message`"/>
373 <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
374 <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
376 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
377 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
378 <parameter name="level" value="info" />
379 <parameter name="field1" value="URL for SO Callback Response"/>
380 <parameter name='field2' value="`$tmp.so.callbackURL`" />
381 <parameter name='field3' value="`$tmp.status`" />
382 <parameter name='field4' value="`$tmp.reason`" />
383 <parameter name='field5' value="`$tmp.requestID`" />
384 <parameter name='field6' value="`$tmp.action`" />
385 <parameter name='field7' value="`$tmp.CUCPList`" />
386 <parameter name='field8' value="`$tmp.CUUPList`" />
387 <parameter name='field9' value="`$tmp.DUList`" />
389 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
390 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
391 <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
392 <parameter name="httpMethod" value="POST"/>
393 <parameter name="responsePrefix" value="so-callback-response"/>
394 <parameter name='contentType' value='application/json' />
395 <parameter name='format' value='json' />
396 <parameter name='accept' value='*/*' />
397 <outcome value='failure'>
399 <return status='failure'>
400 <parameter name='ack-final' value='Y'/>
401 <parameter name="error-code" value="500" />
402 <parameter name="error-message" value="Error sending SO Response" />
406 <outcome value='success'>
408 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
409 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
410 <parameter name="level" value="info" />
411 <parameter name="field1" value="SO Response Sent "/>
418 <parameter name='error-code' value='500'/>
419 <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
421 <return status='failure'>
422 <parameter name='ack-final' value='Y'/>
423 <parameter name='error-code' value='500'/>
424 <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
434 <outcome value='false'>
435 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
436 <parameter name='source' value='`$instantiate-r-a-n-slice-input.payload`' />
437 <parameter name='target' value='maxNumberofConns' />
438 <outcome value='true'>
439 <block atomic="true">
440 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
441 <parameter name="file" value="/opt/opendaylight/current/data/log/intelligentSlicing.log" />
442 <parameter name="level" value="info" />
443 <parameter name="field1" value="PAYLOAD contains maxNumberofConns...Inntelligent Slicing "/>
446 <parameter name='tmp.payload.dataPoints' value='`$payloadJson.input.additionalproperties.resourceConfig.data_length`'/>
447 <parameter name="tmp.payload.sNSSAI" value="`$payloadJson.input.additionalproperties.resourceConfig.snssai`"/>
448 <parameter name="tmp.sliceProfileId" value="`$payloadJson.input.sliceProfile.sliceProfileId`"/>
450 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
451 <parameter name="file" value="/opt/opendaylight/current/data/log/intelligentSlicing.log" />
452 <parameter name="level" value="info" />
453 <parameter name="field1" value="Data length "/>
454 <parameter name="field2" value="`$tmp.payload.dataPoints`"/>
456 <block atomic="true">
457 <block atomic='true'>
458 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
459 <parameter name="source" value="`$prop.restapi.configdb.getplmn`"/>
460 <parameter name="outputPath" value="tmp.configdb.getPLMNId.url"/>
461 <parameter name="target" value="{sliceProfileId}"/>
462 <parameter name="replacement" value="`$tmp.sliceProfileId`"/>
464 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
465 <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
466 <parameter name="level" value="info" />
467 <parameter name="field1" value="Get PLMN from SliceProfileId URL: "/>
468 <parameter name="field2" value="`$tmp.configdb.getPLMNId.url`"/>
470 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
471 <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getPLMNId.url`"/>
472 <parameter name="httpMethod" value="GET"/>
473 <parameter name="responsePrefix" value="getPLMN-CL-configdb-response"/>
474 <parameter name='contentType' value='application/json' />
475 <parameter name='format' value='json' />
476 <parameter name='accept' value='application/json' />
477 <parameter name="convertResponse" value="true"/>
478 <outcome value='success'>
479 <block atomic='true'>
480 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
481 <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
482 <parameter name="level" value="info" />
483 <parameter name="field1" value="Successfully Obtained PLMNId info from ConfigDB"/>
484 <parameter name="field2" value="`$getPLMN-CL-configdb-response`"/>
486 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
487 <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' />
491 <outcome value='failure'>
492 <block atomic='true'>
494 <parameter name='error-code' value='500'/>
495 <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
497 <return status='failure'>
498 <parameter name='ack-final' value='Y'/>
499 <parameter name='error-code' value='500'/>
500 <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
502 <block atomic='true'>
504 <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
505 <parameter name="tmp.status" value="`$error-code`"/>
506 <parameter name="tmp.reason" value="`$error-message`"/>
507 <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
508 <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
510 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
511 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
512 <parameter name="level" value="info" />
513 <parameter name="field1" value="URL for SO Callback Response"/>
514 <parameter name='field2' value="`$tmp.so.callbackURL`" />
515 <parameter name='field3' value="`$tmp.status`" />
516 <parameter name='field4' value="`$tmp.reason`" />
517 <parameter name='field5' value="`$tmp.requestID`" />
518 <parameter name='field6' value="`$tmp.action`" />
519 <parameter name='field7' value="`$tmp.CUCPList`" />
520 <parameter name='field8' value="`$tmp.CUUPList`" />
521 <parameter name='field9' value="`$tmp.DUList`" />
523 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
524 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
525 <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
526 <parameter name="httpMethod" value="POST"/>
527 <parameter name="responsePrefix" value="so-callback-response"/>
528 <parameter name='contentType' value='application/json' />
529 <parameter name='format' value='json' />
530 <parameter name='accept' value='*/*' />
531 <outcome value='failure'>
533 <return status='failure'>
534 <parameter name='ack-final' value='Y'/>
535 <parameter name="error-code" value="500" />
536 <parameter name="error-message" value="Error sending SO Response" />
540 <outcome value='success'>
542 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
543 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
544 <parameter name="level" value="info" />
545 <parameter name="field1" value="SO Response Sent "/>
555 <parameter name='tmp.pLMNId' value='`$getPLMN-CL-configdb-response.plmnId`'/>
557 <block atomic="true">
558 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split'>
559 <parameter name="original_string" value="`$tmp.pLMNId`" />
560 <parameter name="regex" value="-"/>
561 <parameter name="ctx_memory_result_key" value="tmp.plmnList" />
564 <parameter name='tmp.mcc' value='`$tmp.plmnList[0]`'/>
565 <parameter name='tmp.mnc' value='`$tmp.plmnList[1]`'/>
568 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
569 <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
570 <parameter name="level" value="info" />
571 <parameter name="field1" value="`$tmp.pLMNId`"/>
572 <parameter name="field2" value="`$tmp.mcc`"/>
573 <parameter name="field3" value="`$tmp.mnc`"/>
576 <for index='id-is' start='0' end="`$tmp.payload.dataPoints`" >
577 <block atomic="true">
579 <parameter name="tmp.nearRTRICId" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id-is].nearRTRICId`"/>
581 <switch test='`$prop.ransim-mounted`'>
582 <outcome value='false'>
583 <block atomic='true'>
584 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
585 <parameter name="source" value="`$prop.restapi.addnSSAIEntry.ToNearRTRIC`"/>
586 <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
587 <parameter name="target" value="{idNearRTRIC}"/>
588 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
592 <outcome value='true'>
593 <block atomic='true'>
594 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
595 <parameter name="source" value="`$prop.restapi.addnSSAIEntry.ToNearRTRIC.ransim-mounted`"/>
596 <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
597 <parameter name="target" value="{idNearRTRIC}"/>
598 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
600 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
601 <parameter name="source" value="`$tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
602 <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
603 <parameter name="target" value="{mountName}"/>
604 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
609 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
610 <parameter name="source" value="`$tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
611 <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
612 <parameter name="target" value="{mcc}"/>
613 <parameter name="replacement" value="`$tmp.mcc`"/>
615 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
616 <parameter name="source" value="`$tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
617 <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
618 <parameter name="target" value="{mnc}"/>
619 <parameter name="replacement" value="`$tmp.mnc`"/>
621 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
622 <parameter name='outputPath' value='tmp.CUCellListEntries' />
623 <parameter name='source' value="`'payloadJson.input.additionalproperties.resourceConfig.data['+$id-is+'].cellCUList_length'`" />
625 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
626 <parameter name="file" value="/opt/opendaylight/current/data/log/intelligentSlicing.log" />
627 <parameter name="level" value="info" />
628 <parameter name="field1" value="CUCEll List length "/>
629 <parameter name="field2" value="`$tmp.CUCellListEntries`"/>
631 <for index='id2' start='0' end="`$tmp.CUCellListEntries`" >
632 <block atomic="true">
633 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
634 <parameter name='outputPath' value='tmp.cellLocalId' />
635 <parameter name='source' value="`'payloadJson.input.additionalproperties.resourceConfig.data['+$id-is+'].cellCUList['+$id2+'].cellLocalId'`" />
637 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat'>
638 <parameter name="source" value="`$tmp.cellLocalId`" />
639 <parameter name="target" value="-maxNumberofConns"/>
640 <parameter name="outputPath" value="tmp.cellLocalId" />
642 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
643 <parameter name='outputPath' value='tmp.predictedMaxNumberofConns' />
644 <parameter name='source' value="`'payloadJson.input.additionalproperties.resourceConfig.data['+$id-is+'].cellCUList['+$id2+'].configData.predictedMaxNumberofConns'`" />
646 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
647 <parameter name="file" value="/opt/opendaylight/current/data/log/intelligentSlicing.log" />
648 <parameter name="level" value="info" />
649 <parameter name="field1" value="cellLocalId"/>
650 <parameter name="field2" value="`$tmp.cellLocalId`"/>
652 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
653 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-closed-loop-nearRTRIC-config-patch.json'`" />
654 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
655 <parameter name="restapiUser" value="`$prop.controller.user`" />
656 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
657 <parameter name="httpMethod" value="PATCH"/>
658 <parameter name="responsePrefix" value="patch-nearRTRIC-config-response"/>
659 <parameter name='contentType' value='application/yang.patch+json' />
660 <parameter name='accept' value='application/yang.patch-status+json'/>
661 <parameter name='format' value='json' />
662 <outcome value='success'>
663 <block atomic='true'>
664 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
665 <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
666 <parameter name="level" value="info" />
667 <parameter name="field1" value="Successfully patched NearRTRIC configuration"/>
671 <outcome value='failure'>
673 <block atomic='true'>
675 <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
676 <parameter name="tmp.status" value="`$error-code`"/>
677 <parameter name="tmp.reason" value="`$error-message`"/>
678 <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
679 <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
681 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
682 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
683 <parameter name="level" value="info" />
684 <parameter name="field1" value="URL for SO Callback Response"/>
685 <parameter name='field2' value="`$tmp.so.callbackURL`" />
686 <parameter name='field3' value="`$tmp.status`" />
687 <parameter name='field4' value="`$tmp.reason`" />
688 <parameter name='field5' value="`$tmp.requestID`" />
689 <parameter name='field6' value="`$tmp.action`" />
690 <parameter name='field7' value="`$tmp.CUCPList`" />
691 <parameter name='field8' value="`$tmp.CUUPList`" />
692 <parameter name='field9' value="`$tmp.DUList`" />
694 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
695 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
696 <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
697 <parameter name="httpMethod" value="POST"/>
698 <parameter name="responsePrefix" value="so-callback-response"/>
699 <parameter name='contentType' value='application/json' />
700 <parameter name='format' value='json' />
701 <parameter name='accept' value='*/*' />
702 <outcome value='failure'>
704 <return status='failure'>
705 <parameter name='ack-final' value='Y'/>
706 <parameter name="error-code" value="500" />
707 <parameter name="error-message" value="Error sending SO Response" />
711 <outcome value='success'>
713 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
714 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
715 <parameter name="level" value="info" />
716 <parameter name="field1" value="SO Response Sent "/>
723 <parameter name='error-code' value='500'/>
724 <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
726 <return status='failure'>
727 <parameter name='ack-final' value='Y'/>
728 <parameter name='error-code' value='500'/>
729 <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
744 <block atomic='true'>
746 <parameter name="tmp.status" value="`$error-code`"/>
747 <parameter name="tmp.reason" value="`$error-message`"/>
748 <parameter name="tmp.requestID" value="`$instantiate-r-a-n-slice-input.common-header.request-id `"/>
749 <parameter name="tmp.action" value="`$instantiate-r-a-n-slice-input.action`"/>
751 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
752 <parameter name="source" value="`$prop.restapi.so.callbackURL`"/>
753 <parameter name="outputPath" value="tmp.so.callbackURL"/>
754 <parameter name="target" value="{requestId}"/>
755 <parameter name="replacement" value="`$tmp.requestID`"/>
757 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
758 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
759 <parameter name="level" value="info" />
760 <parameter name="field1" value="URL for SO Callback Response"/>
761 <parameter name='field2' value="`$payloadJson.input.callbackURL`" />
762 <parameter name='field3' value="`$tmp.status`" />
763 <parameter name='field4' value="`$tmp.reason`" />
764 <parameter name='field5' value="`$tmp.requestID`" />
765 <parameter name='field6' value="`$tmp.action`" />
766 <parameter name='field7' value="`$tmp.CUCPList`" />
767 <parameter name='field8' value="`$tmp.CUUPList`" />
768 <parameter name='field9' value="`$tmp.DUList`" />
770 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
771 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
772 <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
773 <parameter name="httpMethod" value="POST"/>
774 <parameter name="responsePrefix" value="so-callback-response"/>
775 <parameter name='contentType' value='application/json' />
776 <parameter name='format' value='json' />
777 <parameter name='accept' value='*/*' />
778 <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
779 <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
780 <outcome value='failure'>
783 <parameter name='error-code' value='500'/>
784 <parameter name='error-message' value='Error sending SO response. Aborting RPC executiopn'/>
786 <return status='failure'>
787 <parameter name='ack-final' value='Y'/>
788 <parameter name="error-code" value="500" />
789 <parameter name="error-message" value="Error sending SO Response" />
793 <outcome value='success'>
795 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
796 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
797 <parameter name="level" value="info" />
798 <parameter name="field1" value="SO Response Sent "/>
804 <return status='success'>
805 <parameter name="ack-final" value="N" />
806 <parameter name="error-code" value="200" />
807 <parameter name="error-message" value="SUCCESSFUL Execution" />