fix odl patches
[ccsdk/distribution.git] / platform-logic / ran-slice-api / src / main / xml / ran-slice-api_instantiateRANSliceAllocate.xml
1 <service-logic
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='instantiateRANSliceAllocate' mode='sync'>
5         <block atomic='true'>
6             <block atomic='true'>
7                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
8                     <parameter name="source" value="`$prop.restapi.configdb.getNearRTRICsFromTrackingArea`"/>
9                     <parameter name="outputPath" value="tmp.configdb.getNearRTRICsFromTrackingArea.url"/>
10                     <parameter name="target" value="{trackingArea}"/>
11                     <parameter name="replacement" value="`$tmp.payload.trackingArea`"/>
12                 </execute>
13                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
14                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
15                     <parameter name="level" value="info" />
16                     <parameter name="field1" value="URL for configDB Get NearRTRIC for tracking area"/>
17                     <parameter name='field2' value="`$prop.configdb.url + $tmp.configdb.getNearRTRICsFromTrackingArea.url`" />
18                     <parameter name='field3' value="`$tmp.payload.trackingArea`" />
19                 </record>
20                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
21                     <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getNearRTRICsFromTrackingArea.url`"/>
22                     <parameter name="httpMethod" value="GET"/>
23                     <parameter name="responsePrefix" value="getRIC-configdb-response"/>
24                     <parameter name='contentType' value='application/json' />
25                     <parameter name='format' value='json' />
26                     <parameter name='accept' value='application/json' />
27                     <parameter name="convertResponse" value="true"/>
28                     <outcome value='failure'>
29                         <block>
30                             <set>
31                                 <parameter name='error-code' value='500'/>
32                                 <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
33                             </set>
34                             <return status='failure'>
35                                 <parameter name='ack-final' value='Y'/>
36                                 <parameter name='error-code' value='500'/>
37                                 <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
38                             </return>
39                             <block atomic='true'>
40                                 <set>
41                                     <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
42                                     <parameter name="tmp.status" value="`$error-code`"/>
43                                     <parameter name="tmp.reason" value="`$error-message`"/>
44                                     <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
45                                     <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
46                                 </set>
47                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
48                                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
49                                     <parameter name="level" value="info" />
50                                     <parameter name="field1" value="URL for SO Callback Response"/>
51                                     <parameter name='field2' value="`$tmp.so.callbackURL`" />
52                                     <parameter name='field3' value="`$tmp.status`" />
53                                     <parameter name='field4' value="`$tmp.reason`" />
54                                     <parameter name='field5' value="`$tmp.requestID`" />
55                                     <parameter name='field6' value="`$tmp.action`" />
56                                     <parameter name='field7' value="`$tmp.CUCPList`" />
57                                     <parameter name='field8' value="`$tmp.CUUPList`" />
58                                     <parameter name='field9' value="`$tmp.DUList`" />
59                                 </record>
60                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
61                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
62                                     <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
63                                     <parameter name="httpMethod" value="POST"/>
64                                     <parameter name="responsePrefix" value="so-callback-response"/>
65                                     <parameter name='contentType' value='application/json' />
66                                     <parameter name='format' value='json' />
67                                     <parameter name='accept' value='*/*' />
68                                     <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
69                                     <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
70                                     <outcome value='failure'>
71                                         <block>
72                                             <return status='failure'>
73                                                 <parameter name='ack-final' value='Y'/>
74                                                 <parameter name="error-code" value="500" />
75                                                 <parameter name="error-message" value="Error sending SO Response" />
76                                             </return>
77                                         </block>
78                                     </outcome>
79                                     <outcome value='success'>
80                                         <block>
81                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
82                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
83                                                 <parameter name="level" value="info" />
84                                                 <parameter name="field1" value="SO Response Sent "/>
85                                             </record>
86                                         </block>
87                                     </outcome>
88                                 </execute>
89                             </block>
90                         </block>
91                     </outcome>
92                     <outcome value='success'>
93                         <block>
94                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
95                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
96                                 <parameter name="level" value="info" />
97                                 <parameter name="field1" value="Successfully Obtained NearRT RIC info from ConfigDB"/>
98                                 <parameter name="field2" value="`$getRIC-configdb-response._length`"/>
99                                 <parameter name="field3" value="`$getRIC-configdb-response.[0].gNBCUCPList_length`"/>
100                                 <parameter name="field4" value="`$getRIC-configdb-response.[0].gNBCUUPList_length`"/>
101                                 <parameter name="field5" value="`$getRIC-configdb-response.[0].gNBDUList_length`"/>
102                             </record>
103                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
104                                 <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' />
105                             </execute>
106                         </block>
107                     </outcome>
108                 </execute>
109             </block>
110             <block atomic='true'>
111                 <block atomic='true'>
112                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
113                         <parameter name="source" value="`$prop.restapi.configdb.getListOfCells`"/>
114                         <parameter name="outputPath" value="tmp.configdb.getListOfCells.url"/>
115                         <parameter name="target" value="{trackingArea}"/>
116                         <parameter name="replacement" value="`$tmp.payload.trackingArea`"/>
117                     </execute>
118                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
119                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
120                         <parameter name="level" value="info" />
121                         <parameter name="field1" value="URL for configDB Get getListOfCells for tracking area"/>
122                         <parameter name='field2' value="`$prop.configdb.url + $tmp.configdb.getListOfCells.url`" />
123                         <parameter name='field3' value="`$tmp.payload.trackingArea`" />
124                     </record>
125                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
126                         <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getListOfCells.url`"/>
127                         <parameter name="httpMethod" value="GET"/>
128                         <parameter name="responsePrefix" value="getListofCells-configdb-response"/>
129                         <parameter name='contentType' value='application/json' />
130                         <parameter name='format' value='json' />
131                         <parameter name='accept' value='application/json' />
132                         <outcome value='failure'>
133                             <block>
134                                 <set>
135                                     <parameter name='error-code' value='500'/>
136                                     <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
137                                 </set>
138                                 <return status='failure'>
139                                     <parameter name='ack-final' value='Y'/>
140                                     <parameter name='error-code' value='500'/>
141                                     <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
142                                 </return>
143                                 <block atomic='true'>
144                                     <set>
145                                         <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
146                                         <parameter name="tmp.status" value="`$error-code`"/>
147                                         <parameter name="tmp.reason" value="`$error-message`"/>
148                                         <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
149                                         <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
150                                     </set>
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="URL for SO Callback Response"/>
155                                         <parameter name='field2' value="`$tmp.so.callbackURL`" />
156                                         <parameter name='field3' value="`$tmp.status`" />
157                                         <parameter name='field4' value="`$tmp.reason`" />
158                                         <parameter name='field5' value="`$tmp.requestID`" />
159                                         <parameter name='field6' value="`$tmp.action`" />
160                                         <parameter name='field7' value="`$tmp.CUCPList`" />
161                                         <parameter name='field8' value="`$tmp.CUUPList`" />
162                                         <parameter name='field9' value="`$tmp.DUList`" />
163                                     </record>
164                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
165                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
166                                         <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
167                                         <parameter name="httpMethod" value="POST"/>
168                                         <parameter name="responsePrefix" value="so-callback-response"/>
169                                         <parameter name='contentType' value='application/json' />
170                                         <parameter name='format' value='json' />
171                                         <parameter name='accept' value='*/*' />
172                                         <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
173                                         <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
174                                         <outcome value='failure'>
175                                             <block>
176                                                 <return status='failure'>
177                                                     <parameter name='ack-final' value='Y'/>
178                                                     <parameter name="error-code" value="500" />
179                                                     <parameter name="error-message" value="Error sending SO Response" />
180                                                 </return>
181                                             </block>
182                                         </outcome>
183                                         <outcome value='success'>
184                                             <block>
185                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
186                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
187                                                     <parameter name="level" value="info" />
188                                                     <parameter name="field1" value="SO Response Sent "/>
189                                                 </record>
190                                             </block>
191                                         </outcome>
192                                     </execute>
193                                 </block>
194                             </block>
195                         </outcome>
196                         <outcome value='success'>
197                             <block>
198                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
199                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
200                                     <parameter name="level" value="info" />
201                                     <parameter name="field1" value="Successfully Obtained List of Cells from ConfigDB"/>
202                                     <parameter name="field2" value="`$getListofCells-configdb-response._length`"/>
203                                     <parameter name="field3" value="List of Cells in the Tracking Area Relevant for RAN Slice Instantiation "/>
204                                 </record>
205                                 <for index='idx' start='0' end='`$getListofCells-configdb-response._length `' >
206                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
207                                         <parameter name='outputPath' value='tmp.trackingarea.cell' />
208                                         <parameter name='source' value="`'getListofCells-configdb-response.[' + $ids + ']'`" />
209                                     </execute>
210                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
211                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
212                                         <parameter name="level" value="info" />
213                                         <parameter name="field1" value="`$tmp.trackingarea.cell`"/>
214                                     </record>
215                                 </for>
216                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
217                                     <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' />
218                                 </execute>
219                             </block>
220                         </outcome>
221                     </execute>
222                 </block>
223                 <for index='id1' start='0' end="`$getRIC-configdb-response._length`" >
224                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
225                         <parameter name='outputPath' value='tmp.nearRTRICId' />
226                         <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].nearRTRICId'`" />
227                     </execute>
228                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
229                         <parameter name='outputPath' value='tmp.gNBId' />
230                         <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBId'`" />
231                     </execute>
232                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
233                         <parameter name='outputPath' value='tmp.ranNFNSSIListEntry' />
234                         <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].ranNFNSSIList[0]'`" />
235                     </execute>
236                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
237                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
238                         <parameter name="level" value="info" />
239                         <parameter name="field1" value="Config Payload Entry# "/>
240                         <parameter name="field2" value="`$id1`"/>
241                         <parameter name="field3" value="`$tmp.nearRTRICId`"/>
242                         <parameter name="field4" value="`$tmp.gNBId`"/>
243                         <parameter name="field5" value="`$tmp.ranNFNSSIListEntry`"/>
244                     </record>
245                     <block atomic='true'>
246                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
247                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
248                             <parameter name="level" value="info" />
249                             <parameter name="field1" value="Payload slice parameters - maxNumberofUEs "/>
250                             <parameter name="field2" value="`$payloadJson.input.sliceProfile.maxNumberofUEs`"/>
251                             <parameter name="field3" value="Payload slice parameters - maxNumberofConns"/>
252                             <parameter name="field4" value="`$payloadJson.input.sliceProfile.maxNumberofConns`"/>
253                             <parameter name="field5" value="Payload slice parameters -  dLThptPerSlice"/>
254                             <parameter name="field6" value="`$payloadJson.input.sliceProfile.dLThptPerSlice`"/>
255                             <parameter name="field7" value="Payload slice parameters -  uLThptPerSlice"/>
256                             <parameter name="field8" value="`$payloadJson.input.sliceProfile.uLThptPerSlice`"/>
257                         </record>
258                         <set>
259                             <parameter name='tmp.nearRTRIC.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`' />
260                             <parameter name='tmp.nearRTRIC.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`' />
261                         </set>
262                         <set>
263                             <parameter name='tmp.nearRTRIC.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberofConns`' />
264                             <parameter name='tmp.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberofConns`' />
265                             <parameter name='tmp.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`' />
266                             <parameter name='tmp.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`' />
267                         </set>
268                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
269                             <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-sliceparms-context.log' />
270                         </execute>
271                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
272                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
273                             <parameter name="level" value="info" />
274                             <parameter name="field1" value="Calculated uLThptPerSlice for nearRTRIC "/>
275                             <parameter name="field2" value="`$tmp.nearRTRIC.uLThptPerSlice`"/>
276                             <parameter name="field3" value="Calculated dLThptPerSlice  for nearRTRIC"/>
277                             <parameter name="field4" value="`$tmp.nearRTRIC.dLThptPerSlice`"/>
278                             <parameter name="field5" value="Calculated maxNumberOfConns  for nearRTRIC"/>
279                             <parameter name="field6" value="`$tmp.nearRTRIC1.maxNumberOfConns`"/>
280                             <parameter name="field7" value="`$payloadJson.input.sliceProfile.maxNumberofConns`"/>
281                         </record>
282                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
283                             <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-sliceparms-context2.log' />
284                         </execute>
285                         <block atomic='true'>
286                             <switch test='`$prop.ransim-mounted`'>
287                                 <outcome value='false'>
288                                     <block atomic='true'>
289                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
290                                             <parameter name="source" value="`$prop.restapi.addSliceProfile.ToNearRTRIC`"/>
291                                             <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/>
292                                             <parameter name="target" value="{idNearRTRIC}"/>
293                                             <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
294                                         </execute>
295                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
296                                             <parameter name="source" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
297                                             <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/>
298                                             <parameter name="target" value="{sliceProfileId}"/>
299                                             <parameter name="replacement" value="`$payloadJson.input.sliceProfile.sliceProfileId`"/>
300                                         </execute>
301                                     </block>
302                                 </outcome>
303                                 <outcome value='true'>
304                                     <block atomic='true'>
305                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
306                                             <parameter name="source" value="`$prop.restapi.addSliceProfile.ToNearRTRIC.ransim-mounted`"/>
307                                             <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/>
308                                             <parameter name="target" value="{idNearRTRIC}"/>
309                                             <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
310                                         </execute>
311                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
312                                             <parameter name="source" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
313                                             <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/>
314                                             <parameter name="target" value="{sliceProfileId}"/>
315                                             <parameter name="replacement" value="`$payloadJson.input.sliceProfile.sliceProfileId`"/>
316                                         </execute>
317                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
318                                             <parameter name="source" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
319                                             <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/>
320                                             <parameter name="target" value="{mountName}"/>
321                                             <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
322                                         </execute>
323                                     </block>
324                                 </outcome>
325                             </switch>
326                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
327                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
328                                 <parameter name="level" value="info" />
329                                 <parameter name="field1" value="Add SliceProfile ToNearRTRIC url:"/>
330                                 <parameter name="field2" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
331                             </record>
332                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
333                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
334                                 <parameter name="level" value="info" />
335                                 <parameter name="field1" value="Setting variables for ADD SliceProfile ToNearRTRIC"/>
336                                 <parameter name="field2" value="`$prop.controller.url + $tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
337                                 <parameter name="field3" value="`$payloadJson.input.sliceProfile.sliceProfileId`"/>
338                                 <parameter name="field4" value="`$payloadJson.input.sliceProfile.sNSSAI`"/>
339                                 <parameter name="field5" value="`$payloadJson.input.sliceProfile.maxNumberofUEs`"/>
340                                 <parameter name="field6" value="`$payloadJson.input.sliceProfile.latency`"/>
341                                 <parameter name="field7" value="`$tmp.nearRTRIC.uLThptPerSlice`"/>
342                                 <parameter name="field8" value="`$tmp.nearRTRIC.dLThptPerSlice`"/>
343                                 <parameter name="field9" value="`$tmp.nearRTRIC.maxNumberOfConns`"/>
344                                 <parameter name="field10" value="`$payloadJson.input.sliceProfile.uEMobilityLevel`"/>
345                                 <parameter name="field11" value="`$tmp.trackingArea`"/>
346                                 <parameter name="field12" value="`$payloadJson.input.sliceProfile.resourceSharingLevel`"/>
347                             </record>
348                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
349                                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-sliceProfile-NRRIC.json'`" />
350                                 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
351                                 <parameter name="restapiUser" value="`$prop.controller.user`" />
352                                 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
353                                 <parameter name="httpMethod" value="PUT"/>
354                                 <parameter name="responsePrefix" value="addSliceProfile-NRTRIC-response"/>
355                                 <parameter name='contentType' value='application/json' />
356                                 <parameter name='format' value='json' />
357                                 <outcome value='failure'>
358                                     <block>
359                                         <return status='failure'>
360                                             <parameter name='ack-final' value='Y'/>
361                                             <parameter name="error-code" value="500" />
362                                             <parameter name="error-message" value="Error adding slice proficle to NearRTRIC" />
363                                         </return>
364                                     </block>
365                                 </outcome>
366                                 <outcome value='success'>
367                                     <block>
368                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
369                                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
370                                             <parameter name="level" value="info" />
371                                             <parameter name="field1" value="PLMNInfo List Entry Add to NRCELLCU Executed Successfully "/>
372                                         </record>
373                                     </block>
374                                 </outcome>
375                             </execute>
376                         </block>
377                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
378                             <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updatenearRTRIC`"/>
379                             <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updatenearRTRIC.json'`" />
380                             <parameter name="httpMethod" value="PUT"/>
381                             <parameter name="responsePrefix" value="update-nearRTRIC-configdb-response"/>
382                             <parameter name='contentType' value='application/json' />
383                             <parameter name='format' value='json' />
384                             <parameter name='accept' value='application/json' />
385                             <parameter name="convertResponse" value="true"/>
386                             <outcome value='failure'>
387                                 <block>
388                                     <set>
389                                         <parameter name='error-code' value='500'/>
390                                         <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/>
391                                     </set>
392                                     <return status='failure'>
393                                         <parameter name='ack-final' value='Y'/>
394                                         <parameter name='error-code' value='500'/>
395                                         <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/>
396                                     </return>
397                                     <block atomic='true'>
398                                         <set>
399                                             <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
400                                             <parameter name="tmp.status" value="`$error-code`"/>
401                                             <parameter name="tmp.reason" value="`$error-message`"/>
402                                             <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
403                                             <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
404                                         </set>
405                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
406                                             <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
407                                             <parameter name="level" value="info" />
408                                             <parameter name="field1" value="URL for SO Callback Response"/>
409                                             <parameter name='field2' value="`$tmp.so.callbackURL`" />
410                                             <parameter name='field3' value="`$tmp.status`" />
411                                             <parameter name='field4' value="`$tmp.reason`" />
412                                             <parameter name='field5' value="`$tmp.requestID`" />
413                                             <parameter name='field6' value="`$tmp.action`" />
414                                             <parameter name='field7' value="`$tmp.CUCPList`" />
415                                             <parameter name='field8' value="`$tmp.CUUPList`" />
416                                             <parameter name='field9' value="`$tmp.DUList`" />
417                                         </record>
418                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
419                                             <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
420                                             <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
421                                             <parameter name="httpMethod" value="POST"/>
422                                             <parameter name="responsePrefix" value="so-callback-response"/>
423                                             <parameter name='contentType' value='application/json' />
424                                             <parameter name='format' value='json' />
425                                             <parameter name='accept' value='*/*' />
426                                             <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
427                                             <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
428                                             <outcome value='failure'>
429                                                 <block>
430                                                     <return status='failure'>
431                                                         <parameter name='ack-final' value='Y'/>
432                                                         <parameter name="error-code" value="500" />
433                                                         <parameter name="error-message" value="Error sending SO Response" />
434                                                     </return>
435                                                 </block>
436                                             </outcome>
437                                             <outcome value='success'>
438                                                 <block>
439                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
440                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
441                                                         <parameter name="level" value="info" />
442                                                         <parameter name="field1" value="SO Response Sent "/>
443                                                     </record>
444                                                 </block>
445                                             </outcome>
446                                         </execute>
447                                     </block>
448                                 </block>
449                             </outcome>
450                             <outcome value='success'>
451                                 <block>
452                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
453                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
454                                         <parameter name="level" value="info" />
455                                         <parameter name="field1" value="Successfully Updated NearRT RIC info in ConfigDB"/>
456                                     </record>
457                                 </block>
458                             </outcome>
459                         </execute>
460                     </block>
461                     <block atomic='true'>
462                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
463                             <parameter name='outputPath' value='tmp.CUCPListEntries' />
464                             <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList_length'`" />
465                         </execute>
466                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
467                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
468                             <parameter name="level" value="info" />
469                             <parameter name="field1" value="Number of CUCP List Entries "/>
470                             <parameter name="field2" value="`$tmp.CUCPListEntries`"/>
471                         </record>
472                         <set>
473                             <parameter name='tmp.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberofConns`' />
474                             <parameter name='tmp.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`' />
475                             <parameter name='tmp.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`' />
476                         </set>
477                         <for index='id2' start='0' end='`$tmp.CUCPListEntries`' >
478                             <block atomic='true'>
479                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
480                                     <parameter name='outputPath' value='tmp.cellCUListEntries' />
481                                     <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].cellCUList_length'`" />
482                                 </execute>
483                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
484                                     <parameter name='outputPath' value='tmp.gNBCUCPList.gNBCUName' />
485                                     <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].gNBCUName'`" />
486                                 </execute>
487                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
488                                     <parameter name='outputPath' value='tmp.gNBCUCPList.gNBId' />
489                                     <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].gNBId'`" />
490                                 </execute>
491                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
492                                     <parameter name='outputPath' value='tmp.gNBCUCPList.gNBIdLength' />
493                                     <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].gNBIdLength'`" />
494                                 </execute>
495                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
496                                     <parameter name='outputPath' value='tmp.gNBCUCPList.nFType' />
497                                     <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].nFType'`" />
498                                 </execute>
499                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
500                                     <parameter name='outputPath' value='tmp.gNBCUCPList.pLMNId' />
501                                     <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].pLMNId'`" />
502                                 </execute>
503                             </block>
504                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
505                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
506                                 <parameter name="level" value="info" />
507                                 <parameter name="field1" value="Numberof cellCU of Entries "/>
508                                 <parameter name="field2" value="`$tmp.cellCUListEntries`"/>
509                                 <parameter name="field3" value="`$tmp.gNBCUCPList.gNBCUName`"/>
510                                 <parameter name="field4" value="`$tmp.gNBCUCPList.gNBId`"/>
511                                 <parameter name="field5" value="`$tmp.gNBCUCPList.gNBIdLengthh`"/>
512                                 <parameter name="field6" value="`$tmp.gNBCUCPList.nFType`"/>
513                                 <parameter name="field7" value="`$tmp.gNBCUCPList.pLMNId`"/>
514                             </record>
515                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
516                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
517                                 <parameter name="level" value="info" />
518                                 <parameter name="field1" value="MCC "/>
519                                 <parameter name="field2" value="`$tmp.mcc`"/>
520                                 <parameter name="field3" value="MNC "/>
521                                 <parameter name="field4" value="`$tmp.mnc`"/>
522                                 <parameter name="field5" value="Calculated uLThptPerSlice "/>
523                                 <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
524                                 <parameter name="field7" value="Calculated dLThptPerSlice "/>
525                                 <parameter name="field8" value="`$tmp.dLThptPerSlice`"/>
526                                 <parameter name="field9" value="Calculated maxNumberOfConns "/>
527                                 <parameter name="field10" value="`$tmp.maxNumberOfConns`"/>
528                             </record>
529                             <block atomic='true'>
530                                 <set>
531                                     <parameter name='tmp.maxNumberOfConnsPercellCU' value='`$tmp.maxNumberOfConns / $tmp.cellCUListEntries`' />
532                                 </set>
533                                 <set>
534                                     <parameter name='tmp.rRMPolicyDedicatedRatio.CellCU1' value='`$tmp.maxNumberOfConnsPercellCU * 100`' />
535                                 </set>
536                                 <set>
537                                     <parameter name='tmp.rRMPolicyDedicatedRatio.CellCU' value='`$tmp.rRMPolicyDedicatedRatio.CellCU1 / $prop.nrcellcu.maxNumberOfConnsPerCell`' />
538                                 </set>
539                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
540                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
541                                     <parameter name="level" value="info" />
542                                     <parameter name="field1" value="rRMPolicyDedicatedRatio for CellCU "/>
543                                     <parameter name="field2" value="`$tmp.rRMPolicyDedicatedRatio.CellCU`"/>
544                                     <parameter name="field3" value="maxNumberOfConnsPercellCU "/>
545                                     <parameter name="field4" value="`$tmp.maxNumberOfConnsPercellCU`"/>
546                                     <parameter name="field5" value="rRMPolicyDedicatedRatio.CellCU1 "/>
547                                     <parameter name="field6" value="`$tmp.rRMPolicyDedicatedRatio.CellCU1`"/>
548                                 </record>
549                             </block>
550                             <for index='id3' start='0' end='`$getListofCells-configdb-response._length `' >
551                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
552                                     <parameter name='outputPath' value='tmp.cellLocalId' />
553                                     <parameter name='source' value="`'getListofCells-configdb-response.[' + $id3 + ']'`" />
554                                 </execute>
555                                 <for index='idCell' start='0' end='`$tmp.cellCUListEntries `' >
556                                     <block atomic='true'>
557                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
558                                             <parameter name='outputPath' value='tmp.gNBCUCPList.cellLocalId' />
559                                             <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].cellCUList[' + $idCell + '].cellLocalId'`" />
560                                         </execute>
561                                         <switch test="`$tmp.gNBCUCPList.cellLocalId == $tmp.cellLocalId`">
562                                             <outcome value='true'>
563                                                 <block atomic='true'>
564                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setPropertiesForList'>
565                                                         <parameter name='prefixKey' value='tmp.CUCPList.response' />
566                                                         <parameter name='keyName' value='gNBCUName' />
567                                                         <parameter name='keyValue' value="`$tmp.gNBCUCPList.gNBCUName`"/>
568                                                     </execute>
569                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
570                                                         <parameter name='outputPath' value='CUCPListEntries_size' />
571                                                         <parameter name='source' value="`tmp.CUCPList.response_length`" />
572                                                     </execute>
573                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
574                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
575                                                         <parameter name="level" value="info" />
576                                                         <parameter name="field1" value="CUCPList length"/>
577                                                         <parameter name="field2" value="`$CUCPListEntries_size`"/>
578                                                     </record>
579                                                     <block atomic='true'>
580                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
581                                                             <parameter name='outputPath' value='tmp.pLMNInfoListEntries' />
582                                                             <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].cellCUList[' + $id3 + '].pLMNInfoList_length'`" />
583                                                         </execute>
584                                                     </block>
585                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
586                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
587                                                         <parameter name="level" value="info" />
588                                                         <parameter name="field1" value="Numberof pLMNInfoList Entries "/>
589                                                         <parameter name="field2" value="`$tmp.pLMNInfoListEntries`"/>
590                                                         <parameter name="field3" value="cellLocalId from Relevant cells "/>
591                                                         <parameter name="field4" value="`$tmp.cellLocalId`"/>
592                                                     </record>
593                                                     <for index='id4' start='0' end='`$tmp.pLMNInfoListEntries`' >
594                                                         <block atomic='true'>
595                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
596                                                                 <parameter name='outputPath' value='tmp.fromRAN.sNSSAI' />
597                                                                 <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $id3 + '].pLMNInfoList[' + $id4 + '].sNSSAI.sNSSAI'`" />
598                                                             </execute>
599                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
600                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
601                                                                 <parameter name="level" value="info" />
602                                                                 <parameter name="field1" value="sNSSAI from RAN to check if already exists "/>
603                                                                 <parameter name="field2" value="`$tmp.fromRAN.sNSSAI`"/>
604                                                             </record>
605                                                         </block>
606                                                     </for>
607                                                     <block atomic='true'>
608                                                         <switch test='`$prop.ransim-mounted`'>
609                                                             <outcome value='false'>
610                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
611                                                                     <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellCU`"/>
612                                                                     <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/>
613                                                                     <parameter name="target" value="{idNearRTRIC}"/>
614                                                                     <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
615                                                                 </execute>
616                                                             </outcome>
617                                                             <outcome value='true'>
618                                                                 <block atomic='true'>
619                                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
620                                                                         <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellCU.ransim-mounted`"/>
621                                                                         <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/>
622                                                                         <parameter name="target" value="{idNearRTRIC}"/>
623                                                                         <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
624                                                                     </execute>
625                                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
626                                                                         <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
627                                                                         <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/>
628                                                                         <parameter name="target" value="{mountName}"/>
629                                                                         <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/>
630                                                                     </execute>
631                                                                 </block>
632                                                             </outcome>
633                                                         </switch>
634                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
635                                                             <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
636                                                             <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/>
637                                                             <parameter name="target" value="{idGNBCUCPFunction}"/>
638                                                             <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/>
639                                                         </execute>
640                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
641                                                             <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
642                                                             <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/>
643                                                             <parameter name="target" value="{idNRCellCU}"/>
644                                                             <parameter name="replacement" value="`$tmp.cellLocalId`"/>
645                                                         </execute>
646                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
647                                                             <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
648                                                             <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/>
649                                                             <parameter name="target" value="{mcc}"/>
650                                                             <parameter name="replacement" value="`$tmp.mcc`"/>
651                                                         </execute>
652                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
653                                                             <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
654                                                             <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/>
655                                                             <parameter name="target" value="{mnc}"/>
656                                                             <parameter name="replacement" value="`$tmp.mnc`"/>
657                                                         </execute>
658                                                         <set>
659                                                             <parameter name='tmp.maxNumberOfConns' value='`$tmp.payload.maxNumberofConns/$tmp.cellCUListEntries`'/>
660                                                         </set>
661                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
662                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
663                                                             <parameter name="level" value="info" />
664                                                             <parameter name="field1" value="Add PLMNInfoListEntry ToNRCellCU URL"/>
665                                                             <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
666                                                         </record>
667                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
668                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
669                                                             <parameter name="level" value="info" />
670                                                             <parameter name="field1" value="Setting variables for PLMNInfoList Entry Add to NRCellCU"/>
671                                                             <parameter name="field2" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
672                                                             <parameter name="field3" value="`$tmp.mcc`"/>
673                                                             <parameter name="field4" value="`$tmp.mnc`"/>
674                                                             <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/>
675                                                             <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
676                                                             <parameter name="field7" value="`$tmp.dLThptPerSlice`"/>
677                                                         </record>
678                                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
679                                                             <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-get-PLMNInfoListEntry-NRCellCU.json'`" />
680                                                             <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
681                                                             <parameter name="restapiUser" value="`$prop.controller.user`" />
682                                                             <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
683                                                             <parameter name="httpMethod" value="PUT"/>
684                                                             <parameter name="responsePrefix" value="PLMNInfoListEntry-response"/>
685                                                             <parameter name='contentType' value='application/json' />
686                                                             <parameter name='format' value='json' />
687                                                             <outcome value='failure'>
688                                                                 <block>
689                                                                     <return status='failure'>
690                                                                         <parameter name='ack-final' value='Y'/>
691                                                                         <parameter name="error-code" value="500" />
692                                                                         <parameter name="error-message" value="Error adding PLMNInfoList Entry to NRCellCU" />
693                                                                     </return>
694                                                                     <block atomic='true'>
695                                                                         <set>
696                                                                             <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
697                                                                             <parameter name="tmp.status" value="`$error-code`"/>
698                                                                             <parameter name="tmp.reason" value="`$error-message`"/>
699                                                                             <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
700                                                                             <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
701                                                                         </set>
702                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
703                                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
704                                                                             <parameter name="level" value="info" />
705                                                                             <parameter name="field1" value="URL for SO Callback Response"/>
706                                                                             <parameter name='field2' value="`$tmp.so.callbackURL`" />
707                                                                             <parameter name='field3' value="`$tmp.status`" />
708                                                                             <parameter name='field4' value="`$tmp.reason`" />
709                                                                             <parameter name='field5' value="`$tmp.requestID`" />
710                                                                             <parameter name='field6' value="`$tmp.action`" />
711                                                                             <parameter name='field7' value="`$tmp.CUCPList`" />
712                                                                             <parameter name='field8' value="`$tmp.CUUPList`" />
713                                                                             <parameter name='field9' value="`$tmp.DUList`" />
714                                                                         </record>
715                                                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
716                                                                             <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
717                                                                             <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
718                                                                             <parameter name="httpMethod" value="POST"/>
719                                                                             <parameter name="responsePrefix" value="so-callback-response"/>
720                                                                             <parameter name='contentType' value='application/json' />
721                                                                             <parameter name='format' value='json' />
722                                                                             <parameter name='accept' value='*/*' />
723                                                                             <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
724                                                                             <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
725                                                                             <outcome value='failure'>
726                                                                                 <block>
727                                                                                     <return status='failure'>
728                                                                                         <parameter name='ack-final' value='Y'/>
729                                                                                         <parameter name="error-code" value="500" />
730                                                                                         <parameter name="error-message" value="Error sending SO Response" />
731                                                                                     </return>
732                                                                                 </block>
733                                                                             </outcome>
734                                                                             <outcome value='success'>
735                                                                                 <block>
736                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
737                                                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
738                                                                                         <parameter name="level" value="info" />
739                                                                                         <parameter name="field1" value="SO Response Sent "/>
740                                                                                     </record>
741                                                                                 </block>
742                                                                             </outcome>
743                                                                         </execute>
744                                                                     </block>
745                                                                 </block>
746                                                             </outcome>
747                                                             <outcome value='success'>
748                                                                 <block>
749                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
750                                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
751                                                                         <parameter name="level" value="info" />
752                                                                         <parameter name="field1" value="PLMNInfo List Entry Add to NRCELLCU Executed Successfully "/>
753                                                                     </record>
754                                                                 </block>
755                                                             </outcome>
756                                                         </execute>
757                                                     </block>
758                                                     <block atomic='true'>
759                                                         <switch test='`$prop.ransim-mounted`'>
760                                                             <outcome value='false'>
761                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
762                                                                     <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellCU`"/>
763                                                                     <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/>
764                                                                     <parameter name="target" value="{idNearRTRIC}"/>
765                                                                     <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
766                                                                 </execute>
767                                                             </outcome>
768                                                             <outcome value='true'>
769                                                                 <block atomic='true'>
770                                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
771                                                                         <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellCU.ransim-mounted`"/>
772                                                                         <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/>
773                                                                         <parameter name="target" value="{idNearRTRIC}"/>
774                                                                         <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
775                                                                     </execute>
776                                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
777                                                                         <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/>
778                                                                         <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/>
779                                                                         <parameter name="target" value="{mountName}"/>
780                                                                         <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/>
781                                                                     </execute>
782                                                                 </block>
783                                                             </outcome>
784                                                         </switch>
785                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
786                                                             <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/>
787                                                             <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/>
788                                                             <parameter name="target" value="{idGNBCUCPFunction}"/>
789                                                             <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/>
790                                                         </execute>
791                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
792                                                             <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/>
793                                                             <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/>
794                                                             <parameter name="target" value="{idNRCellCU}"/>
795                                                             <parameter name="replacement" value="`$tmp.cellLocalId`"/>
796                                                         </execute>
797                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
798                                                             <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/>
799                                                             <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/>
800                                                             <parameter name="target" value="{id}"/>
801                                                             <parameter name="replacement" value="`$tmp.RRMPolicyRatioID.NRCellCU`"/>
802                                                         </execute>
803                                                         <set>
804                                                             <parameter name='tmp.resourceID' value='`$tmp.cellLocalId`'/>
805                                                         </set>
806                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
807                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
808                                                             <parameter name="level" value="info" />
809                                                             <parameter name="field1" value="addRRMPolicyRatio ToNRCellCU URL"/>
810                                                             <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/>
811                                                         </record>
812                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
813                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
814                                                             <parameter name="level" value="info" />
815                                                             <parameter name="field1" value="Setting variables for addRRMPolicyRatio to NRCellCU"/>
816                                                             <parameter name="field2" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToNRCellCU.url`"/>
817                                                             <parameter name="field3" value="`$tmp.mcc`"/>
818                                                             <parameter name="field4" value="`$tmp.mnc`"/>
819                                                             <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/>
820                                                             <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
821                                                             <parameter name="field7" value="`$tmp.dLThptPerSlice`"/>
822                                                         </record>
823                                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
824                                                             <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-RRMPolicyRatio-NRCellCU.json'`" />
825                                                             <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToNRCellCU.url`"/>
826                                                             <parameter name="restapiUser" value="`$prop.controller.user`" />
827                                                             <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
828                                                             <parameter name="httpMethod" value="PUT"/>
829                                                             <parameter name="responsePrefix" value="addRRMPolicyRatio-response"/>
830                                                             <parameter name='contentType' value='application/json' />
831                                                             <parameter name='format' value='json' />
832                                                             <outcome value='failure'>
833                                                                 <block>
834                                                                     <return status='failure'>
835                                                                         <parameter name='ack-final' value='Y'/>
836                                                                         <parameter name="error-code" value="500" />
837                                                                         <parameter name="error-message" value="Error adding RRMPolicyr" />
838                                                                     </return>
839                                                                     <block atomic='true'>
840                                                                         <set>
841                                                                             <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
842                                                                             <parameter name="tmp.status" value="`$error-code`"/>
843                                                                             <parameter name="tmp.reason" value="`$error-message`"/>
844                                                                             <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
845                                                                             <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
846                                                                         </set>
847                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
848                                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
849                                                                             <parameter name="level" value="info" />
850                                                                             <parameter name="field1" value="URL for SO Callback Response"/>
851                                                                             <parameter name='field2' value="`$tmp.so.callbackURL`" />
852                                                                             <parameter name='field3' value="`$tmp.status`" />
853                                                                             <parameter name='field4' value="`$tmp.reason`" />
854                                                                             <parameter name='field5' value="`$tmp.requestID`" />
855                                                                             <parameter name='field6' value="`$tmp.action`" />
856                                                                             <parameter name='field7' value="`$tmp.CUCPList`" />
857                                                                             <parameter name='field8' value="`$tmp.CUUPList`" />
858                                                                             <parameter name='field9' value="`$tmp.DUList`" />
859                                                                         </record>
860                                                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
861                                                                             <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
862                                                                             <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
863                                                                             <parameter name="httpMethod" value="POST"/>
864                                                                             <parameter name="responsePrefix" value="so-callback-response"/>
865                                                                             <parameter name='contentType' value='application/json' />
866                                                                             <parameter name='format' value='json' />
867                                                                             <parameter name='accept' value='*/*' />
868                                                                             <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
869                                                                             <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
870                                                                             <outcome value='failure'>
871                                                                                 <block>
872                                                                                     <return status='failure'>
873                                                                                         <parameter name='ack-final' value='Y'/>
874                                                                                         <parameter name="error-code" value="500" />
875                                                                                         <parameter name="error-message" value="Error sending SO Response" />
876                                                                                     </return>
877                                                                                 </block>
878                                                                             </outcome>
879                                                                             <outcome value='success'>
880                                                                                 <block>
881                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
882                                                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
883                                                                                         <parameter name="level" value="info" />
884                                                                                         <parameter name="field1" value="SO Response Sent "/>
885                                                                                     </record>
886                                                                                 </block>
887                                                                             </outcome>
888                                                                         </execute>
889                                                                     </block>
890                                                                 </block>
891                                                             </outcome>
892                                                             <outcome value='success'>
893                                                                 <block>
894                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
895                                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
896                                                                         <parameter name="level" value="info" />
897                                                                         <parameter name="field1" value="addRRMPolicyRatio to NRCELLCU Executed Successfully "/>
898                                                                     </record>
899                                                                 </block>
900                                                             </outcome>
901                                                         </execute>
902                                                     </block>
903                                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
904                                                         <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updategNBCUCP`"/>
905                                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updategNBCUCP.json'`" />
906                                                         <parameter name="httpMethod" value="PUT"/>
907                                                         <parameter name="responsePrefix" value="update-gNBCUCP-configdb-response"/>
908                                                         <parameter name='contentType' value='application/json' />
909                                                         <parameter name='format' value='json' />
910                                                         <parameter name='accept' value='application/json' />
911                                                         <parameter name="convertResponse" value="true"/>
912                                                         <outcome value='failure'>
913                                                             <block>
914                                                                 <set>
915                                                                     <parameter name='error-code' value='500'/>
916                                                                     <parameter name='error-message' value='Error updating configCUCP info in ConfigDB. Aborting RPC executiopn'/>
917                                                                 </set>
918                                                                 <return status='failure'>
919                                                                     <parameter name='ack-final' value='Y'/>
920                                                                     <parameter name='error-code' value='500'/>
921                                                                     <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/>
922                                                                 </return>
923                                                                 <block atomic='true'>
924                                                                     <set>
925                                                                         <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
926                                                                         <parameter name="tmp.status" value="`$error-code`"/>
927                                                                         <parameter name="tmp.reason" value="`$error-message`"/>
928                                                                         <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
929                                                                         <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
930                                                                     </set>
931                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
932                                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
933                                                                         <parameter name="level" value="info" />
934                                                                         <parameter name="field1" value="URL for SO Callback Response"/>
935                                                                         <parameter name='field2' value="`$tmp.so.callbackURL`" />
936                                                                         <parameter name='field3' value="`$tmp.status`" />
937                                                                         <parameter name='field4' value="`$tmp.reason`" />
938                                                                         <parameter name='field5' value="`$tmp.requestID`" />
939                                                                         <parameter name='field6' value="`$tmp.action`" />
940                                                                         <parameter name='field7' value="`$tmp.CUCPList`" />
941                                                                         <parameter name='field8' value="`$tmp.CUUPList`" />
942                                                                         <parameter name='field9' value="`$tmp.DUList`" />
943                                                                     </record>
944                                                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
945                                                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
946                                                                         <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
947                                                                         <parameter name="httpMethod" value="POST"/>
948                                                                         <parameter name="responsePrefix" value="so-callback-response"/>
949                                                                         <parameter name='contentType' value='application/json' />
950                                                                         <parameter name='format' value='json' />
951                                                                         <parameter name='accept' value='*/*' />
952                                                                         <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
953                                                                         <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
954                                                                         <outcome value='failure'>
955                                                                             <block>
956                                                                                 <return status='failure'>
957                                                                                     <parameter name='ack-final' value='Y'/>
958                                                                                     <parameter name="error-code" value="500" />
959                                                                                     <parameter name="error-message" value="Error sending SO Response" />
960                                                                                 </return>
961                                                                             </block>
962                                                                         </outcome>
963                                                                         <outcome value='success'>
964                                                                             <block>
965                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
966                                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
967                                                                                     <parameter name="level" value="info" />
968                                                                                     <parameter name="field1" value="SO Response Sent "/>
969                                                                                 </record>
970                                                                             </block>
971                                                                         </outcome>
972                                                                     </execute>
973                                                                 </block>
974                                                             </block>
975                                                         </outcome>
976                                                         <outcome value='success'>
977                                                             <block>
978                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
979                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
980                                                                     <parameter name="level" value="info" />
981                                                                     <parameter name="field1" value="Successfully Updated gNBCUCP info in ConfigDB"/>
982                                                                 </record>
983                                                             </block>
984                                                         </outcome>
985                                                     </execute>
986                                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
987                                                         <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateRRMPolicy`"/>
988                                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateRRMPolicy-CUCP.json'`" />
989                                                         <parameter name="httpMethod" value="PUT"/>
990                                                         <parameter name="responsePrefix" value="update-gNBCUCP-rrmpolicy-configdb-response"/>
991                                                         <parameter name='contentType' value='application/json' />
992                                                         <parameter name='format' value='json' />
993                                                         <parameter name='accept' value='application/json' />
994                                                         <parameter name="convertResponse" value="true"/>
995                                                         <outcome value='failure'>
996                                                             <block>
997                                                                 <block atomic='true'>
998                                                                     <set>
999                                                                         <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
1000                                                                         <parameter name="tmp.status" value="`$error-code`"/>
1001                                                                         <parameter name="tmp.reason" value="`$error-message`"/>
1002                                                                         <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
1003                                                                         <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
1004                                                                     </set>
1005                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1006                                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
1007                                                                         <parameter name="level" value="info" />
1008                                                                         <parameter name="field1" value="URL for SO Callback Response"/>
1009                                                                         <parameter name='field2' value="`$tmp.so.callbackURL`" />
1010                                                                         <parameter name='field3' value="`$tmp.status`" />
1011                                                                         <parameter name='field4' value="`$tmp.reason`" />
1012                                                                         <parameter name='field5' value="`$tmp.requestID`" />
1013                                                                         <parameter name='field6' value="`$tmp.action`" />
1014                                                                         <parameter name='field7' value="`$tmp.CUCPList`" />
1015                                                                         <parameter name='field8' value="`$tmp.CUUPList`" />
1016                                                                         <parameter name='field9' value="`$tmp.DUList`" />
1017                                                                     </record>
1018                                                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
1019                                                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
1020                                                                         <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
1021                                                                         <parameter name="httpMethod" value="POST"/>
1022                                                                         <parameter name="responsePrefix" value="so-callback-response"/>
1023                                                                         <parameter name='contentType' value='application/json' />
1024                                                                         <parameter name='format' value='json' />
1025                                                                         <parameter name='accept' value='*/*' />
1026                                                                         <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
1027                                                                         <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
1028                                                                         <outcome value='failure'>
1029                                                                             <block>
1030                                                                                 <return status='failure'>
1031                                                                                     <parameter name='ack-final' value='Y'/>
1032                                                                                     <parameter name="error-code" value="500" />
1033                                                                                     <parameter name="error-message" value="Error sending SO Response" />
1034                                                                                 </return>
1035                                                                             </block>
1036                                                                         </outcome>
1037                                                                         <outcome value='success'>
1038                                                                             <block>
1039                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1040                                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1041                                                                                     <parameter name="level" value="info" />
1042                                                                                     <parameter name="field1" value="SO Response Sent "/>
1043                                                                                 </record>
1044                                                                             </block>
1045                                                                         </outcome>
1046                                                                     </execute>
1047                                                                 </block>
1048                                                                 <set>
1049                                                                     <parameter name='error-code' value='500'/>
1050                                                                     <parameter name='error-message' value='Error updating RRMPolicy CUCP info in ConfigDB. Aborting RPC executiopn'/>
1051                                                                 </set>
1052                                                                 <return status='failure'>
1053                                                                     <parameter name='ack-final' value='Y'/>
1054                                                                     <parameter name='error-code' value='500'/>
1055                                                                     <parameter name='error-message' value='Error updating RRMPolicy CUCP info in ConfigDB. Aborting RPC executiopn'/>
1056                                                                 </return>
1057                                                             </block>
1058                                                         </outcome>
1059                                                         <outcome value='success'>
1060                                                             <block>
1061                                                                 <set>
1062                                                                     <parameter name='prop.configDB.rrmPolicyID' value='`$prop.configDB.rrmPolicyID + 1`' />
1063                                                                 </set>
1064                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1065                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1066                                                                     <parameter name="level" value="info" />
1067                                                                     <parameter name="field1" value="Successfully Updated RRMPolicy CUCP info in ConfigDB"/>
1068                                                                     <parameter name="field2" value="Incremented ConfigDB rrmPolicyID"/>
1069                                                                     <parameter name="field3" value='`$prop.configDB.rrmPolicyID`' />
1070                                                                 </record>
1071                                                             </block>
1072                                                         </outcome>
1073                                                     </execute>
1074                                                 </block>
1075                                             </outcome>
1076                                         </switch>
1077                                     </block>
1078                                 </for>
1079                             </for>
1080                         </for>
1081                     </block>
1082                     <block atomic='true'>
1083                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1084                             <parameter name='outputPath' value='tmp.CUUPListEntries' />
1085                             <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList_length'`" />
1086                         </execute>
1087                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1088                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1089                             <parameter name="level" value="info" />
1090                             <parameter name="field1" value="getListofCells-configdb-response. "/>
1091                             <parameter name="field2" value="`$tmp.CUUPListEntries`"/>
1092                         </record>
1093                         <block atomic='true'>
1094                             <set>
1095                                 <parameter name='tmp.maxNumberOfConns-CUUP' value='`$tmp.payload.maxNumberofConns/$tmp.cellCUListEntries`' />
1096                             </set>
1097                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1098                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1099                                 <parameter name="level" value="info" />
1100                                 <parameter name="field1" value="maxNumberOfConns.CUUP "/>
1101                                 <parameter name="field2" value="`$tmp.maxNumberOfConns-CUUP`"/>
1102                             </record>
1103                             <set>
1104                                 <parameter name='tmp.TotalNumberOfDRBForNSSAI' value='`$tmp.maxNumberOfConns-CUUP*4`' />
1105                             </set>
1106                             <set>
1107                                 <parameter name='tmp.DRBPerCUUPForSNSSAI' value='`$tmp.TotalNumberOfDRBForNSSAI / $tmp.CUUPListEntries`' />
1108                             </set>
1109                             <set>
1110                                 <parameter name='tmp.rRMPolicyDedicatedRatio.CUUP1' value='`$tmp.DRBPerCUUPForSNSSAI * 100`' />
1111                             </set>
1112                             <set>
1113                                 <parameter name='tmp.rRMPolicyDedicatedRatio.CUUP' value='`$tmp.rRMPolicyDedicatedRatio.CUUP1 / $prop.cuupfunction.maxNumberOfDRBsPerCUUP`' />
1114                             </set>
1115                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1116                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1117                                 <parameter name="level" value="info" />
1118                                 <parameter name="field1" value="rRMPolicyDedicatedRatio for CUUP "/>
1119                                 <parameter name="field2" value="`$tmp.rRMPolicyDedicatedRatio.CUUP`"/>
1120                                 <parameter name="field3" value="tmp.TotalNumberOfDRBForNSSAI "/>
1121                                 <parameter name="field4" value="`$tmp.TotalNumberOfDRBForNSSAI`"/>
1122                                 <parameter name="field5" value="tmp.DRBPerCUUPForSNSSAI "/>
1123                                 <parameter name="field6" value="`$tmp.DRBPerCUUPForSNSSAI`"/>
1124                                 <parameter name="field7" value="tmp.rRMPolicyDedicatedRatio.CUUP1 "/>
1125                                 <parameter name="field8" value="`$tmp.rRMPolicyDedicatedRatio.CUUP1`"/>
1126                                 <parameter name="field9" value="tmp.rRMPolicyDedicatedRatio.CUUP"/>
1127                                 <parameter name="field10" value="`$tmp.rRMPolicyDedicatedRatio.CUUP`"/>
1128                                 <parameter name="field11" value="tmp.maxNumberOfConns"/>
1129                                 <parameter name="field12" value="`$tmp.maxNumberOfConns-CUUP`"/>
1130                             </record>
1131                         </block>
1132                         <for index='id2' start='0' end='`$tmp.CUUPListEntries `' >
1133                             <block atomic='true'>
1134                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1135                                     <parameter name='outputPath' value='tmp.gNBCUUPList.gNBCUUPId' />
1136                                     <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].gNBCUUPId'`" />
1137                                 </execute>
1138                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1139                                     <parameter name='outputPath' value='tmp.gNBCUUPList.gNBId' />
1140                                     <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].gNBId'`" />
1141                                 </execute>
1142                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1143                                     <parameter name='outputPath' value='tmp.gNBCUUPList.gNBIdLength' />
1144                                     <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].gNBIdLength'`" />
1145                                 </execute>
1146                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1147                                     <parameter name='outputPath' value='tmp.pLMNInfoListEntries' />
1148                                     <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].pLMNInfoList_length'`" />
1149                                 </execute>
1150                             </block>
1151                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1152                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1153                                 <parameter name="level" value="info" />
1154                                 <parameter name="field1" value="CUCP Details "/>
1155                                 <parameter name="field2" value="`$tmp.gNBCUUPList.gNBCUUPId`"/>
1156                                 <parameter name="field3" value="`$tmp.gNBCUUPList.gNBId`"/>
1157                                 <parameter name="field4" value="`$tmp.gNBCUUPList.gNBIdLength`"/>
1158                                 <parameter name="field5" value="`$tmp.gNBCUUPList.pLMNInfoList_length`"/>
1159                                 <parameter name="field6" value="`$tmp.payload.pLMNId`"/>
1160                             </record>
1161                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1162                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1163                                 <parameter name="level" value="info" />
1164                                 <parameter name="field1" value="MCC "/>
1165                                 <parameter name="field2" value="`$tmp.mcc`"/>
1166                                 <parameter name="field3" value="MNC "/>
1167                                 <parameter name="field4" value="`$tmp.mnc`"/>
1168                                 <parameter name="field5" value="Calculated uLThptPerSlice "/>
1169                                 <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
1170                                 <parameter name="field7" value="Calculated dLThptPerSlice "/>
1171                                 <parameter name="field8" value="`$tmp.dLThptPerSlice`"/>
1172                             </record>
1173                             <for index='id4' start='0' end='`$tmp.pLMNInfoListEntries`' >
1174                                 <block atomic='true'>
1175                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1176                                         <parameter name='outputPath' value='tmp.fromRAN.sNSSAI' />
1177                                         <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].pLMNInfoList[' + $id3 + '].sNSSAI'`" />
1178                                     </execute>
1179                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1180                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1181                                         <parameter name="level" value="info" />
1182                                         <parameter name="field1" value="sNSSAI from RAN to check if already exists "/>
1183                                         <parameter name="field2" value="`$tmp.fromRAN.sNSSAI`"/>
1184                                     </record>
1185                                 </block>
1186                             </for>
1187                             <block atomic='true'>
1188                                 <switch test='`$prop.ransim-mounted`'>
1189                                     <outcome value='false'>
1190                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1191                                             <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToGNBCUUPFn`"/>
1192                                             <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/>
1193                                             <parameter name="target" value="{idNearRTRIC}"/>
1194                                             <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
1195                                         </execute>
1196                                     </outcome>
1197                                     <outcome value='true'>
1198                                         <block atomic='true'>
1199                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1200                                                 <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToGNBCUUPFn.ransim-mounted`"/>
1201                                                 <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/>
1202                                                 <parameter name="target" value="{idNearRTRIC}"/>
1203                                                 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
1204                                             </execute>
1205                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1206                                                 <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/>
1207                                                 <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/>
1208                                                 <parameter name="target" value="{mountName}"/>
1209                                                 <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/>
1210                                             </execute>
1211                                         </block>
1212                                     </outcome>
1213                                 </switch>
1214                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1215                                     <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/>
1216                                     <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/>
1217                                     <parameter name="target" value="{idGNBCUUPFunction}"/>
1218                                     <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/>
1219                                 </execute>
1220                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1221                                     <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/>
1222                                     <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/>
1223                                     <parameter name="target" value="{mcc}"/>
1224                                     <parameter name="replacement" value="`$tmp.mcc`"/>
1225                                 </execute>
1226                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1227                                     <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/>
1228                                     <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/>
1229                                     <parameter name="target" value="{mnc}"/>
1230                                     <parameter name="replacement" value="`$tmp.mnc`"/>
1231                                 </execute>
1232                                 <set>
1233                                     <parameter name='tmp.maxNumberOfConns' value='`$tmp.payload.maxNumberofConns/$tmp.cellCUListEntries`'/>
1234                                 </set>
1235                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1236                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1237                                     <parameter name="level" value="info" />
1238                                     <parameter name="field1" value="Add PLMNInfoListEntry ToGNBCUUPFn URL"/>
1239                                     <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/>
1240                                 </record>
1241                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1242                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1243                                     <parameter name="level" value="info" />
1244                                     <parameter name="field1" value="Setting variables for PLMNInfoList Entry Add to NRCellCU"/>
1245                                     <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
1246                                     <parameter name="field3" value="`$tmp.mcc`"/>
1247                                     <parameter name="field4" value="`$tmp.mnc`"/>
1248                                     <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/>
1249                                     <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
1250                                     <parameter name="field7" value="`$tmp.dLThptPerSlice`"/>
1251                                 </record>
1252                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
1253                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-get-PLMNInfoListEntry-GNBCUUPFn.json'`" />
1254                                     <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/>
1255                                     <parameter name="restapiUser" value="`$prop.controller.user`" />
1256                                     <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
1257                                     <parameter name="httpMethod" value="PUT"/>
1258                                     <parameter name="responsePrefix" value="PLMNInfoListEntry-response"/>
1259                                     <parameter name='contentType' value='application/json' />
1260                                     <parameter name='format' value='json' />
1261                                     <outcome value='failure'>
1262                                         <block>
1263                                             <block atomic='true'>
1264                                                 <set>
1265                                                     <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
1266                                                     <parameter name="tmp.status" value="`$error-code`"/>
1267                                                     <parameter name="tmp.reason" value="`$error-message`"/>
1268                                                     <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
1269                                                     <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
1270                                                 </set>
1271                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1272                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
1273                                                     <parameter name="level" value="info" />
1274                                                     <parameter name="field1" value="URL for SO Callback Response"/>
1275                                                     <parameter name='field2' value="`$tmp.so.callbackURL`" />
1276                                                     <parameter name='field3' value="`$tmp.status`" />
1277                                                     <parameter name='field4' value="`$tmp.reason`" />
1278                                                     <parameter name='field5' value="`$tmp.requestID`" />
1279                                                     <parameter name='field6' value="`$tmp.action`" />
1280                                                     <parameter name='field7' value="`$tmp.CUCPList`" />
1281                                                     <parameter name='field8' value="`$tmp.CUUPList`" />
1282                                                     <parameter name='field9' value="`$tmp.DUList`" />
1283                                                 </record>
1284                                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
1285                                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
1286                                                     <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
1287                                                     <parameter name="httpMethod" value="POST"/>
1288                                                     <parameter name="responsePrefix" value="so-callback-response"/>
1289                                                     <parameter name='contentType' value='application/json' />
1290                                                     <parameter name='format' value='json' />
1291                                                     <parameter name='accept' value='*/*' />
1292                                                     <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
1293                                                     <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
1294                                                     <outcome value='failure'>
1295                                                         <block>
1296                                                             <return status='failure'>
1297                                                                 <parameter name='ack-final' value='Y'/>
1298                                                                 <parameter name="error-code" value="500" />
1299                                                                 <parameter name="error-message" value="Error sending SO Response" />
1300                                                             </return>
1301                                                         </block>
1302                                                     </outcome>
1303                                                     <outcome value='success'>
1304                                                         <block>
1305                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1306                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1307                                                                 <parameter name="level" value="info" />
1308                                                                 <parameter name="field1" value="SO Response Sent "/>
1309                                                             </record>
1310                                                         </block>
1311                                                     </outcome>
1312                                                 </execute>
1313                                             </block>
1314                                             <return status='failure'>
1315                                                 <parameter name='ack-final' value='Y'/>
1316                                                 <parameter name="error-code" value="500" />
1317                                                 <parameter name="error-message" value="Error adding PLMNInfoList Entry to GNBCUUPFn" />
1318                                             </return>
1319                                         </block>
1320                                     </outcome>
1321                                     <outcome value='success'>
1322                                         <block>
1323                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1324                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1325                                                 <parameter name="level" value="info" />
1326                                                 <parameter name="field1" value="PLMNInfo List Entry Add Executed Successfully "/>
1327                                             </record>
1328                                         </block>
1329                                     </outcome>
1330                                 </execute>
1331                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setPropertiesForList'>
1332                                     <parameter name='prefixKey' value='tmp.CUUPList.response' />
1333                                     <parameter name='keyName' value='gNBCUUPId' />
1334                                     <parameter name='keyValue' value="`$tmp.gNBCUUPList.gNBCUUPId`"/>
1335                                 </execute>
1336                             </block>
1337                             <block atomic='true'>
1338                                 <switch test='`$prop.ransim-mounted`'>
1339                                     <outcome value='false'>
1340                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1341                                             <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToGNBCUUPFn`"/>
1342                                             <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/>
1343                                             <parameter name="target" value="{idNearRTRIC}"/>
1344                                             <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
1345                                         </execute>
1346                                     </outcome>
1347                                     <outcome value='true'>
1348                                         <block atomic='true'>
1349                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1350                                                 <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToGNBCUUPFn.ransim-mounted`"/>
1351                                                 <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/>
1352                                                 <parameter name="target" value="{idNearRTRIC}"/>
1353                                                 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
1354                                             </execute>
1355                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1356                                                 <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/>
1357                                                 <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/>
1358                                                 <parameter name="target" value="{mountName}"/>
1359                                                 <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/>
1360                                             </execute>
1361                                         </block>
1362                                     </outcome>
1363                                 </switch>
1364                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1365                                     <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/>
1366                                     <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/>
1367                                     <parameter name="target" value="{idGNBCUUPFunction}"/>
1368                                     <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/>
1369                                 </execute>
1370                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1371                                     <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/>
1372                                     <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/>
1373                                     <parameter name="target" value="{id}"/>
1374                                     <parameter name="replacement" value="`$tmp.RRMPolicyRatioID.GNBCUUPFunction`"/>
1375                                 </execute>
1376                                 <set>
1377                                     <parameter name='tmp.resourceID' value='`$tmp.gNBCUUPList.gNBCUUPId`'/>
1378                                 </set>
1379                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1380                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1381                                     <parameter name="level" value="info" />
1382                                     <parameter name="field1" value="addRRMPolicyRatio ToGNBCUUPFn URL"/>
1383                                     <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/>
1384                                 </record>
1385                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1386                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1387                                     <parameter name="level" value="info" />
1388                                     <parameter name="field1" value="Setting variables for addRRMPolicyRatio to GNBCUUPFn"/>
1389                                     <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/>
1390                                     <parameter name="field3" value="`$tmp.mcc`"/>
1391                                     <parameter name="field4" value="`$tmp.mnc`"/>
1392                                     <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/>
1393                                     <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
1394                                     <parameter name="field7" value="`$tmp.dLThptPerSlice`"/>
1395                                 </record>
1396                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
1397                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-RRMPolicyRatio-GNBCUUPFn.json'`" />
1398                                     <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/>
1399                                     <parameter name="restapiUser" value="`$prop.controller.user`" />
1400                                     <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
1401                                     <parameter name="httpMethod" value="PUT"/>
1402                                     <parameter name="responsePrefix" value="addRRMPolicyRatio-response"/>
1403                                     <parameter name='contentType' value='application/json' />
1404                                     <parameter name='format' value='json' />
1405                                     <outcome value='failure'>
1406                                         <block>
1407                                             <block atomic='true'>
1408                                                 <set>
1409                                                     <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
1410                                                     <parameter name="tmp.status" value="`$error-code`"/>
1411                                                     <parameter name="tmp.reason" value="`$error-message`"/>
1412                                                     <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
1413                                                     <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
1414                                                 </set>
1415                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1416                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
1417                                                     <parameter name="level" value="info" />
1418                                                     <parameter name="field1" value="URL for SO Callback Response"/>
1419                                                     <parameter name='field2' value="`$tmp.so.callbackURL`" />
1420                                                     <parameter name='field3' value="`$tmp.status`" />
1421                                                     <parameter name='field4' value="`$tmp.reason`" />
1422                                                     <parameter name='field5' value="`$tmp.requestID`" />
1423                                                     <parameter name='field6' value="`$tmp.action`" />
1424                                                     <parameter name='field7' value="`$tmp.CUCPList`" />
1425                                                     <parameter name='field8' value="`$tmp.CUUPList`" />
1426                                                     <parameter name='field9' value="`$tmp.DUList`" />
1427                                                 </record>
1428                                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
1429                                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
1430                                                     <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
1431                                                     <parameter name="httpMethod" value="POST"/>
1432                                                     <parameter name="responsePrefix" value="so-callback-response"/>
1433                                                     <parameter name='contentType' value='application/json' />
1434                                                     <parameter name='format' value='json' />
1435                                                     <parameter name='accept' value='*/*' />
1436                                                     <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
1437                                                     <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
1438                                                     <outcome value='failure'>
1439                                                         <block>
1440                                                             <return status='failure'>
1441                                                                 <parameter name='ack-final' value='Y'/>
1442                                                                 <parameter name="error-code" value="500" />
1443                                                                 <parameter name="error-message" value="Error sending SO Response" />
1444                                                             </return>
1445                                                         </block>
1446                                                     </outcome>
1447                                                     <outcome value='success'>
1448                                                         <block>
1449                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1450                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1451                                                                 <parameter name="level" value="info" />
1452                                                                 <parameter name="field1" value="SO Response Sent "/>
1453                                                             </record>
1454                                                         </block>
1455                                                     </outcome>
1456                                                 </execute>
1457                                             </block>
1458                                             <return status='failure'>
1459                                                 <parameter name='ack-final' value='Y'/>
1460                                                 <parameter name="error-code" value="500" />
1461                                                 <parameter name="error-message" value="Error adding RRMPolicy" />
1462                                             </return>
1463                                         </block>
1464                                     </outcome>
1465                                     <outcome value='success'>
1466                                         <block>
1467                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1468                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1469                                                 <parameter name="level" value="info" />
1470                                                 <parameter name="field1" value="addRRMPolicyRatio Executed Successfully "/>
1471                                             </record>
1472                                         </block>
1473                                     </outcome>
1474                                 </execute>
1475                             </block>
1476                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
1477                                 <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updategNBCUUP`"/>
1478                                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updategNBCUUP.json'`" />
1479                                 <parameter name="httpMethod" value="PUT"/>
1480                                 <parameter name="responsePrefix" value="update-gNBCUUP-configdb-response"/>
1481                                 <parameter name='contentType' value='application/json' />
1482                                 <parameter name='format' value='json' />
1483                                 <parameter name='accept' value='application/json' />
1484                                 <parameter name="convertResponse" value="true"/>
1485                                 <outcome value='failure'>
1486                                     <block>
1487                                         <block atomic='true'>
1488                                             <set>
1489                                                 <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
1490                                                 <parameter name="tmp.status" value="`$error-code`"/>
1491                                                 <parameter name="tmp.reason" value="`$error-message`"/>
1492                                                 <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
1493                                                 <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
1494                                             </set>
1495                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1496                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
1497                                                 <parameter name="level" value="info" />
1498                                                 <parameter name="field1" value="URL for SO Callback Response"/>
1499                                                 <parameter name='field2' value="`$tmp.so.callbackURL`" />
1500                                                 <parameter name='field3' value="`$tmp.status`" />
1501                                                 <parameter name='field4' value="`$tmp.reason`" />
1502                                                 <parameter name='field5' value="`$tmp.requestID`" />
1503                                                 <parameter name='field6' value="`$tmp.action`" />
1504                                                 <parameter name='field7' value="`$tmp.CUCPList`" />
1505                                                 <parameter name='field8' value="`$tmp.CUUPList`" />
1506                                                 <parameter name='field9' value="`$tmp.DUList`" />
1507                                             </record>
1508                                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
1509                                                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
1510                                                 <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
1511                                                 <parameter name="httpMethod" value="POST"/>
1512                                                 <parameter name="responsePrefix" value="so-callback-response"/>
1513                                                 <parameter name='contentType' value='application/json' />
1514                                                 <parameter name='format' value='json' />
1515                                                 <parameter name='accept' value='*/*' />
1516                                                 <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
1517                                                 <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
1518                                                 <outcome value='failure'>
1519                                                     <block>
1520                                                         <return status='failure'>
1521                                                             <parameter name='ack-final' value='Y'/>
1522                                                             <parameter name="error-code" value="500" />
1523                                                             <parameter name="error-message" value="Error sending SO Response" />
1524                                                         </return>
1525                                                     </block>
1526                                                 </outcome>
1527                                                 <outcome value='success'>
1528                                                     <block>
1529                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1530                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1531                                                             <parameter name="level" value="info" />
1532                                                             <parameter name="field1" value="SO Response Sent "/>
1533                                                         </record>
1534                                                     </block>
1535                                                 </outcome>
1536                                             </execute>
1537                                         </block>
1538                                         <set>
1539                                             <parameter name='error-code' value='500'/>
1540                                             <parameter name='error-message' value='Error updating configCUUP info in ConfigDB. Aborting RPC executiopn'/>
1541                                         </set>
1542                                         <return status='failure'>
1543                                             <parameter name='ack-final' value='Y'/>
1544                                             <parameter name='error-code' value='500'/>
1545                                             <parameter name='error-message' value='Error updating CUUP info in ConfigDB. Aborting RPC executiopn'/>
1546                                         </return>
1547                                     </block>
1548                                 </outcome>
1549                                 <outcome value='success'>
1550                                     <block>
1551                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1552                                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1553                                             <parameter name="level" value="info" />
1554                                             <parameter name="field1" value="Successfully Updated gNBCUUP info in ConfigDB"/>
1555                                         </record>
1556                                     </block>
1557                                 </outcome>
1558                             </execute>
1559                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
1560                                 <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateRRMPolicy`"/>
1561                                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateRRMPolicy-CUUP.json'`" />
1562                                 <parameter name="httpMethod" value="PUT"/>
1563                                 <parameter name="responsePrefix" value="update-gNBCUUP-rrmpolicy-configdb-response"/>
1564                                 <parameter name='contentType' value='application/json' />
1565                                 <parameter name='format' value='json' />
1566                                 <parameter name='accept' value='application/json' />
1567                                 <parameter name="convertResponse" value="true"/>
1568                                 <outcome value='failure'>
1569                                     <block>
1570                                         <block atomic='true'>
1571                                             <set>
1572                                                 <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
1573                                                 <parameter name="tmp.status" value="`$error-code`"/>
1574                                                 <parameter name="tmp.reason" value="`$error-message`"/>
1575                                                 <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
1576                                                 <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
1577                                             </set>
1578                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1579                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
1580                                                 <parameter name="level" value="info" />
1581                                                 <parameter name="field1" value="URL for SO Callback Response"/>
1582                                                 <parameter name='field2' value="`$tmp.so.callbackURL`" />
1583                                                 <parameter name='field3' value="`$tmp.status`" />
1584                                                 <parameter name='field4' value="`$tmp.reason`" />
1585                                                 <parameter name='field5' value="`$tmp.requestID`" />
1586                                                 <parameter name='field6' value="`$tmp.action`" />
1587                                                 <parameter name='field7' value="`$tmp.CUCPList`" />
1588                                                 <parameter name='field8' value="`$tmp.CUUPList`" />
1589                                                 <parameter name='field9' value="`$tmp.DUList`" />
1590                                             </record>
1591                                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
1592                                                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
1593                                                 <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
1594                                                 <parameter name="httpMethod" value="POST"/>
1595                                                 <parameter name="responsePrefix" value="so-callback-response"/>
1596                                                 <parameter name='contentType' value='application/json' />
1597                                                 <parameter name='format' value='json' />
1598                                                 <parameter name='accept' value='*/*' />
1599                                                 <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
1600                                                 <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
1601                                                 <outcome value='failure'>
1602                                                     <block>
1603                                                         <return status='failure'>
1604                                                             <parameter name='ack-final' value='Y'/>
1605                                                             <parameter name="error-code" value="500" />
1606                                                             <parameter name="error-message" value="Error sending SO Response" />
1607                                                         </return>
1608                                                     </block>
1609                                                 </outcome>
1610                                                 <outcome value='success'>
1611                                                     <block>
1612                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1613                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1614                                                             <parameter name="level" value="info" />
1615                                                             <parameter name="field1" value="SO Response Sent "/>
1616                                                         </record>
1617                                                     </block>
1618                                                 </outcome>
1619                                             </execute>
1620                                         </block>
1621                                         <set>
1622                                             <parameter name='error-code' value='500'/>
1623                                             <parameter name='error-message' value='Error updating RRMPolicy CUUP info in ConfigDB. Aborting RPC executiopn'/>
1624                                         </set>
1625                                         <return status='failure'>
1626                                             <parameter name='ack-final' value='Y'/>
1627                                             <parameter name='error-code' value='500'/>
1628                                             <parameter name='error-message' value='Error updating RRMPolicy CUUP info in ConfigDB. Aborting RPC executiopn'/>
1629                                         </return>
1630                                     </block>
1631                                 </outcome>
1632                                 <outcome value='success'>
1633                                     <block>
1634                                         <set>
1635                                             <parameter name='prop.configDB.rrmPolicyID' value='`$prop.configDB.rrmPolicyID + 1`' />
1636                                         </set>
1637                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1638                                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1639                                             <parameter name="level" value="info" />
1640                                             <parameter name="field1" value="Successfully Updated RRMPolicy CUUP info in ConfigDB"/>
1641                                             <parameter name="field2" value="Incremented ConfigDB rrmPolicyID"/>
1642                                             <parameter name="field3" value='`$prop.configDB.rrmPolicyID`' />
1643                                         </record>
1644                                     </block>
1645                                 </outcome>
1646                             </execute>
1647                         </for>
1648                     </block>
1649                     <block atomic='true'>
1650                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1651                             <parameter name='outputPath' value='tmp.DUListEntries' />
1652                             <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList_length'`" />
1653                         </execute>
1654                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1655                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1656                             <parameter name="level" value="info" />
1657                             <parameter name="field1" value="Number of DU List Entries "/>
1658                             <parameter name="field2" value="`$tmp.DUListEntries`"/>
1659                         </record>
1660                         <block atomic='true'>
1661                             <set>
1662                                 <parameter name='tmp.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`' />
1663                             </set>
1664                             <set>
1665                                 <parameter name='tmp.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`' />
1666                             </set>
1667                             <set>
1668                                 <parameter name='tmp.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberOfConns`' />
1669                             </set>
1670                             <set>
1671                                 <parameter name='tmp.nearRTRIC.trafficCapacity1' value='`$tmp.uLThptPerSlice + $tmp.dLThptPerSlice`' />
1672                             </set>
1673                             <set>
1674                                 <parameter name='tmp.nearRTRIC.trafficCapacity' value='`$tmp.nearRTRIC.trafficCapacity1 / 2`' />
1675                             </set>
1676                             <set>
1677                                 <parameter name='tmp.nearRTRIC.trafficCapacityBPS' value='`$tmp.nearRTRIC.trafficCapacity * 1000000`' />
1678                             </set>
1679                             <set>
1680                                 <parameter name='tmp.nrcelldu.totalPRBForSNSSAI' value='`$tmp.nearRTRIC.trafficCapacityBPS / 1008000`' />
1681                             </set>
1682                             <set>
1683                                 <parameter name='tmp.nrcelldu.PRBPerImpactedCell' value='`$tmp.nrcelldu.totalPRBForSNSSAI / $tmp.DUListEntries`' />
1684                             </set>
1685                             <set>
1686                                 <parameter name='tmp.rRMPolicyDedicatedRatio.CellDU1' value='`$tmp.nrcelldu.PRBPerImpactedCell * 100`' />
1687                             </set>
1688                             <set>
1689                                 <parameter name='tmp.rRMPolicyDedicatedRatio.CellDU' value='`$tmp.rRMPolicyDedicatedRatio.CellDU1 / $prop.nrcelldu.TotalPRBsPerCell`' />
1690                             </set>
1691                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1692                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1693                                 <parameter name="level" value="info" />
1694                                 <parameter name="field1" value="rRMPolicyDedicatedRatio for CellDU "/>
1695                                 <parameter name="field2" value="`$tmp.rRMPolicyDedicatedRatio.CellDU`"/>
1696                                 <parameter name="field3" value="tmp.nearRTRIC.trafficCapacity1 "/>
1697                                 <parameter name="field4" value="`$tmp.nearRTRIC.trafficCapacity1`"/>
1698                                 <parameter name="field5" value="tmp.nearRTRIC.trafficCapacity "/>
1699                                 <parameter name="field6" value="`$tmp.nearRTRIC.trafficCapacity`"/>
1700                                 <parameter name="field7" value="tmp.nearRTRIC.trafficCapacityBPS"/>
1701                                 <parameter name="field8" value="`$tmp.nearRTRIC.trafficCapacityBPS`"/>
1702                                 <parameter name="field9" value="tmp.nrcelldu.totalPRBForSNSSAI "/>
1703                                 <parameter name="field10" value="`$tmp.nrcelldu.totalPRBForSNSSAI`"/>
1704                                 <parameter name="field11" value="tmp.nrcelldu.PRBPerImpactedCell "/>
1705                                 <parameter name="field12" value="`$tmp.nrcelldu.PRBPerImpactedCell`"/>
1706                                 <parameter name="field13" value="tmp.rRMPolicyDedicatedRatio.CellDU1 "/>
1707                                 <parameter name="field14" value="`$tmp.rRMPolicyDedicatedRatio.CellDU1`"/>
1708                             </record>
1709                         </block>
1710                         <for index='id2' start='0' end='`$tmp.DUListEntries`' >
1711                             <block atomic='true'>
1712                                 <block atomic='true'>
1713                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1714                                         <parameter name='outputPath' value='tmp.cellDUListEntries' />
1715                                         <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList_length'`" />
1716                                     </execute>
1717                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1718                                         <parameter name='outputPath' value='tmp.gNBDUList.gNBDUId' />
1719                                         <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBDUId'`" />
1720                                     </execute>
1721                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1722                                         <parameter name='outputPath' value='tmp.gNBDUName' />
1723                                         <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBDUName'`" />
1724                                     </execute>
1725                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1726                                         <parameter name='outputPath' value='tmp.gNBId' />
1727                                         <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBId'`" />
1728                                     </execute>
1729                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1730                                         <parameter name='outputPath' value='tmp.gNBIdLength' />
1731                                         <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBIdLength'`" />
1732                                     </execute>
1733                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1734                                         <parameter name='outputPath' value='tmp.nFType' />
1735                                         <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].nFType'`" />
1736                                     </execute>
1737                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1738                                         <parameter name='outputPath' value='tmp.pLMNId' />
1739                                         <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].pLMNId'`" />
1740                                     </execute>
1741                                 </block>
1742                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1743                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1744                                     <parameter name="level" value="info" />
1745                                     <parameter name="field1" value="Numberof cellDU of Entries "/>
1746                                     <parameter name="field2" value="`$tmp.cellDUListEntries`"/>
1747                                     <parameter name="field3" value="`$tmp.gNBDUList.gNBDUId`"/>
1748                                     <parameter name="field4" value="`$tmp.gNBDUName`"/>
1749                                     <parameter name="field5" value="`$tmp.gNBId`"/>
1750                                     <parameter name="field6" value="`$tmp.gNBIdLength`"/>
1751                                     <parameter name="field7" value="`$tmp.nFType`"/>
1752                                     <parameter name="field8" value="`$tmp.pLMNId`"/>
1753                                 </record>
1754                                 <for index='id3' start='0' end='`$getListofCells-configdb-response._length `' >
1755                                     <block atomic='true'>
1756                                         <for index='idCell' start='0' end='`$tmp.cellDUListEntries`' >
1757                                             <block atomic='true'>
1758                                                 <block atomic='true'>
1759                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1760                                                         <parameter name='outputPath' value='tmp.pLMNInfoListEntries' />
1761                                                         <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $idCell + '].pLMNInfoList_length'`" />
1762                                                     </execute>
1763                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1764                                                         <parameter name='outputPath' value='tmp.cellLocalId' />
1765                                                         <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $idCell + '].cellLocalId'`" />
1766                                                     </execute>
1767                                                 </block>
1768                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1769                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1770                                                     <parameter name="level" value="info" />
1771                                                     <parameter name="field1" value="Numberof pLMNInfoList Entries "/>
1772                                                     <parameter name="field2" value="`$tmp.pLMNInfoListEntries`"/>
1773                                                     <parameter name="field3" value="cellLocalId for TA "/>
1774                                                     <parameter name="field4" value="`$tmp.cellLocalId`"/>
1775                                                 </record>
1776                                                 <for index='id4' start='0' end='`$tmp.pLMNInfoListEntries`' >
1777                                                     <block atomic='true'>
1778                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1779                                                             <parameter name='outputPath' value='tmp.fromRAN.sNSSAI' />
1780                                                             <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $idCell + '].pLMNInfoList[' + $id4 + '].sNSSAI.sNSSAI'`" />
1781                                                         </execute>
1782                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1783                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1784                                                             <parameter name="level" value="info" />
1785                                                             <parameter name="field1" value="sNSSAI from RAN to check if already exists "/>
1786                                                             <parameter name="field2" value="`$tmp.fromRAN.sNSSAI`"/>
1787                                                         </record>
1788                                                     </block>
1789                                                 </for>
1790                                             </block>
1791                                             <block atomic='true'>
1792                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
1793                                                     <parameter name='outputPath' value='tmp.gNBDUList.cellLocalId' />
1794                                                     <parameter name='source' value="`'getListofCells-configdb-response.[' + $id3 + ']'`" />
1795                                                 </execute>
1796                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1797                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1798                                                     <parameter name="level" value="info" />
1799                                                     <parameter name="field1" value="CellLocal ID for comparison -- specific DUList"/>
1800                                                     <parameter name="field2" value="`$tmp.gNBDUList.cellLocalId`"/>
1801                                                     <parameter name="field3" value="CellLocal ID for comparison - overall TA "/>
1802                                                     <parameter name="field4" value="`$tmp.cellLocalId`"/>
1803                                                 </record>
1804                                                 <switch test="`$tmp.gNBDUList.cellLocalId == $tmp.cellLocalId`">
1805                                                     <outcome value='true'>
1806                                                         <block atomic='true'>
1807                                                             <block atomic='true'>
1808                                                                 <switch test='`$prop.ransim-mounted`'>
1809                                                                     <outcome value='false'>
1810                                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1811                                                                             <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellDU`"/>
1812                                                                             <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/>
1813                                                                             <parameter name="target" value="{idNearRTRIC}"/>
1814                                                                             <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
1815                                                                         </execute>
1816                                                                     </outcome>
1817                                                                     <outcome value='true'>
1818                                                                         <block atomic='true'>
1819                                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1820                                                                                 <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellDU.ransim-mounted`"/>
1821                                                                                 <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/>
1822                                                                                 <parameter name="target" value="{idNearRTRIC}"/>
1823                                                                                 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
1824                                                                             </execute>
1825                                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1826                                                                                 <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
1827                                                                                 <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/>
1828                                                                                 <parameter name="target" value="{mountName}"/>
1829                                                                                 <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/>
1830                                                                             </execute>
1831                                                                         </block>
1832                                                                     </outcome>
1833                                                                 </switch>
1834                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1835                                                                     <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
1836                                                                     <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/>
1837                                                                     <parameter name="target" value="{idGNBDUFunction}"/>
1838                                                                     <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/>
1839                                                                 </execute>
1840                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1841                                                                     <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
1842                                                                     <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/>
1843                                                                     <parameter name="target" value="{idNRCellDU}"/>
1844                                                                     <parameter name="replacement" value="`$tmp.cellLocalId`"/>
1845                                                                 </execute>
1846                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1847                                                                     <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
1848                                                                     <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/>
1849                                                                     <parameter name="target" value="{mcc}"/>
1850                                                                     <parameter name="replacement" value="`$tmp.mcc`"/>
1851                                                                 </execute>
1852                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
1853                                                                     <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
1854                                                                     <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/>
1855                                                                     <parameter name="target" value="{mnc}"/>
1856                                                                     <parameter name="replacement" value="`$tmp.mnc`"/>
1857                                                                 </execute>
1858                                                                 <set>
1859                                                                     <parameter name='tmp.uLThptPerSlice' value='`$tmp.payload.uLThptPerSlice/$tmp.cellDUListEntries`'/>
1860                                                                     <parameter name='tmp.dLThptPerSlice' value='`$tmp.payload.dLThptPerSlice/$tmp.cellDUListEntries`'/>
1861                                                                 </set>
1862                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1863                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1864                                                                     <parameter name="level" value="info" />
1865                                                                     <parameter name="field1" value="Add PLMNInfoListEntry ToNRCellDU URL"/>
1866                                                                     <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
1867                                                                 </record>
1868                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1869                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1870                                                                     <parameter name="level" value="info" />
1871                                                                     <parameter name="field1" value="Setting variables for PLMNInfoList Entry Add to NRCellDU"/>
1872                                                                     <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
1873                                                                     <parameter name="field3" value="`$tmp.mcc`"/>
1874                                                                     <parameter name="field4" value="`$tmp.mnc`"/>
1875                                                                     <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/>
1876                                                                     <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
1877                                                                     <parameter name="field7" value="`$tmp.dLThptPerSlice`"/>
1878                                                                 </record>
1879                                                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
1880                                                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-get-PLMNInfoListEntry-NRCellDU.json'`" />
1881                                                                     <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
1882                                                                     <parameter name="restapiUser" value="`$prop.controller.user`" />
1883                                                                     <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
1884                                                                     <parameter name="httpMethod" value="PUT"/>
1885                                                                     <parameter name="responsePrefix" value="PLMNInfoListEntry-response"/>
1886                                                                     <parameter name='contentType' value='application/json' />
1887                                                                     <parameter name='format' value='json' />
1888                                                                     <outcome value='failure'>
1889                                                                         <block>
1890                                                                             <block atomic='true'>
1891                                                                                 <set>
1892                                                                                     <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
1893                                                                                     <parameter name="tmp.status" value="`$error-code`"/>
1894                                                                                     <parameter name="tmp.reason" value="`$error-message`"/>
1895                                                                                     <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
1896                                                                                     <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
1897                                                                                 </set>
1898                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1899                                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
1900                                                                                     <parameter name="level" value="info" />
1901                                                                                     <parameter name="field1" value="URL for SO Callback Response"/>
1902                                                                                     <parameter name='field2' value="`$tmp.so.callbackURL`" />
1903                                                                                     <parameter name='field3' value="`$tmp.status`" />
1904                                                                                     <parameter name='field4' value="`$tmp.reason`" />
1905                                                                                     <parameter name='field5' value="`$tmp.requestID`" />
1906                                                                                     <parameter name='field6' value="`$tmp.action`" />
1907                                                                                     <parameter name='field7' value="`$tmp.CUCPList`" />
1908                                                                                     <parameter name='field8' value="`$tmp.CUUPList`" />
1909                                                                                     <parameter name='field9' value="`$tmp.DUList`" />
1910                                                                                 </record>
1911                                                                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
1912                                                                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
1913                                                                                     <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
1914                                                                                     <parameter name="httpMethod" value="POST"/>
1915                                                                                     <parameter name="responsePrefix" value="so-callback-response"/>
1916                                                                                     <parameter name='contentType' value='application/json' />
1917                                                                                     <parameter name='format' value='json' />
1918                                                                                     <parameter name='accept' value='*/*' />
1919                                                                                     <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
1920                                                                                     <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
1921                                                                                     <outcome value='failure'>
1922                                                                                         <block>
1923                                                                                             <return status='failure'>
1924                                                                                                 <parameter name='ack-final' value='Y'/>
1925                                                                                                 <parameter name="error-code" value="500" />
1926                                                                                                 <parameter name="error-message" value="Error sending SO Response" />
1927                                                                                             </return>
1928                                                                                         </block>
1929                                                                                     </outcome>
1930                                                                                     <outcome value='success'>
1931                                                                                         <block>
1932                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1933                                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1934                                                                                                 <parameter name="level" value="info" />
1935                                                                                                 <parameter name="field1" value="SO Response Sent "/>
1936                                                                                             </record>
1937                                                                                         </block>
1938                                                                                     </outcome>
1939                                                                                 </execute>
1940                                                                             </block>
1941                                                                             <return status='failure'>
1942                                                                                 <parameter name='ack-final' value='Y'/>
1943                                                                                 <parameter name="error-code" value="500" />
1944                                                                                 <parameter name="error-message" value="Error adding PLMNInfo List Entry to NRCellCUr" />
1945                                                                             </return>
1946                                                                         </block>
1947                                                                     </outcome>
1948                                                                     <outcome value='success'>
1949                                                                         <block>
1950                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1951                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1952                                                                                 <parameter name="level" value="info" />
1953                                                                                 <parameter name="field1" value="PLMNInfo List Entry Add to NRCELLDU Executed Successfully "/>
1954                                                                             </record>
1955                                                                         </block>
1956                                                                     </outcome>
1957                                                                 </execute>
1958                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='setPropertiesForList'>
1959                                                                     <parameter name='prefixKey' value='tmp.DUList.response' />
1960                                                                     <parameter name='keyName' value='gNBDUId' />
1961                                                                     <parameter name='keyValue' value="`$tmp.gNBDUList.gNBDUId`"/>
1962                                                                 </execute>
1963                                                             </block>
1964                                                             <block atomic='true'>
1965                                                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
1966                                                                     <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updategNBDU`"/>
1967                                                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updategNBDU.json'`" />
1968                                                                     <parameter name="httpMethod" value="PUT"/>
1969                                                                     <parameter name="responsePrefix" value="update-gNBDU-configdb-response"/>
1970                                                                     <parameter name='contentType' value='application/json' />
1971                                                                     <parameter name='format' value='json' />
1972                                                                     <parameter name='accept' value='application/json' />
1973                                                                     <parameter name="convertResponse" value="true"/>
1974                                                                     <outcome value='success'>
1975                                                                         <block>
1976                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
1977                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
1978                                                                                 <parameter name="level" value="info" />
1979                                                                                 <parameter name="field1" value="Successfully Updated DU info in ConfigDB"/>
1980                                                                             </record>
1981                                                                         </block>
1982                                                                     </outcome>
1983                                                                     <outcome value='failure'>
1984                                                                         <block>
1985                                                                             <set>
1986                                                                                 <parameter name='error-code' value='500'/>
1987                                                                                 <parameter name='error-message' value='Error updating configCUUP info in ConfigDB. Aborting RPC executiopn'/>
1988                                                                             </set>
1989                                                                             <return status='failure'>
1990                                                                                 <parameter name='ack-final' value='Y'/>
1991                                                                                 <parameter name='error-code' value='500'/>
1992                                                                                 <parameter name='error-message' value='Error updating CUUP info in ConfigDB. Aborting RPC executiopn'/>
1993                                                                             </return>
1994                                                                             <block atomic='true'>
1995                                                                                 <set>
1996                                                                                     <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
1997                                                                                     <parameter name="tmp.status" value="`$error-code`"/>
1998                                                                                     <parameter name="tmp.reason" value="`$error-message`"/>
1999                                                                                     <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
2000                                                                                     <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
2001                                                                                 </set>
2002                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2003                                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
2004                                                                                     <parameter name="level" value="info" />
2005                                                                                     <parameter name="field1" value="URL for SO Callback Response"/>
2006                                                                                     <parameter name='field2' value="`$tmp.so.callbackURL`" />
2007                                                                                     <parameter name='field3' value="`$tmp.status`" />
2008                                                                                     <parameter name='field4' value="`$tmp.reason`" />
2009                                                                                     <parameter name='field5' value="`$tmp.requestID`" />
2010                                                                                     <parameter name='field6' value="`$tmp.action`" />
2011                                                                                     <parameter name='field7' value="`$tmp.CUCPList`" />
2012                                                                                     <parameter name='field8' value="`$tmp.CUUPList`" />
2013                                                                                     <parameter name='field9' value="`$tmp.DUList`" />
2014                                                                                 </record>
2015                                                                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
2016                                                                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
2017                                                                                     <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
2018                                                                                     <parameter name="httpMethod" value="POST"/>
2019                                                                                     <parameter name="responsePrefix" value="so-callback-response"/>
2020                                                                                     <parameter name='contentType' value='application/json' />
2021                                                                                     <parameter name='format' value='json' />
2022                                                                                     <parameter name='accept' value='application/json' />
2023                                                                                     <outcome value='failure'>
2024                                                                                         <block>
2025                                                                                             <return status='failure'>
2026                                                                                                 <parameter name='ack-final' value='Y'/>
2027                                                                                                 <parameter name="error-code" value="500" />
2028                                                                                                 <parameter name="error-message" value="Error sending SO Response" />
2029                                                                                             </return>
2030                                                                                         </block>
2031                                                                                     </outcome>
2032                                                                                     <outcome value='success'>
2033                                                                                         <block>
2034                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2035                                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
2036                                                                                                 <parameter name="level" value="info" />
2037                                                                                                 <parameter name="field1" value="SO Response Sent "/>
2038                                                                                             </record>
2039                                                                                         </block>
2040                                                                                     </outcome>
2041                                                                                 </execute>
2042                                                                             </block>
2043                                                                         </block>
2044                                                                     </outcome>
2045                                                                 </execute>
2046                                                                 <set>
2047                                                                     <parameter name='tmp.resourceID-DU' value='`$tmp.cellLocalId`'/>
2048                                                                 </set>
2049                                                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
2050                                                                     <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateRRMPolicy`"/>
2051                                                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateRRMPolicy-DU.json'`" />
2052                                                                     <parameter name="httpMethod" value="PUT"/>
2053                                                                     <parameter name="responsePrefix" value="update-DU-rrmpolicy-configdb-response"/>
2054                                                                     <parameter name='contentType' value='application/json' />
2055                                                                     <parameter name='format' value='json' />
2056                                                                     <parameter name='accept' value='application/json' />
2057                                                                     <parameter name="convertResponse" value="true"/>
2058                                                                     <outcome value='success'>
2059                                                                         <block>
2060                                                                             <set>
2061                                                                                 <parameter name='prop.configDB.rrmPolicyID' value='`$prop.configDB.rrmPolicyID + 1`' />
2062                                                                             </set>
2063                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2064                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
2065                                                                                 <parameter name="level" value="info" />
2066                                                                                 <parameter name="field1" value="Successfully Updated RRMPolicy DU info in ConfigDB"/>
2067                                                                                 <parameter name="field2" value="Incremented ConfigDB rrmPolicyID"/>
2068                                                                                 <parameter name="field3" value='`$prop.configDB.rrmPolicyID`' />
2069                                                                             </record>
2070                                                                         </block>
2071                                                                     </outcome>
2072                                                                     <outcome value='failure'>
2073                                                                         <block>
2074                                                                             <block atomic='true'>
2075                                                                                 <set>
2076                                                                                     <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
2077                                                                                     <parameter name="tmp.status" value="`$error-code`"/>
2078                                                                                     <parameter name="tmp.reason" value="`$error-message`"/>
2079                                                                                     <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
2080                                                                                     <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
2081                                                                                 </set>
2082                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2083                                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
2084                                                                                     <parameter name="level" value="info" />
2085                                                                                     <parameter name="field1" value="URL for SO Callback Response"/>
2086                                                                                     <parameter name='field2' value="`$tmp.so.callbackURL`" />
2087                                                                                     <parameter name='field3' value="`$tmp.status`" />
2088                                                                                     <parameter name='field4' value="`$tmp.reason`" />
2089                                                                                     <parameter name='field5' value="`$tmp.requestID`" />
2090                                                                                     <parameter name='field6' value="`$tmp.action`" />
2091                                                                                     <parameter name='field7' value="`$tmp.CUCPList`" />
2092                                                                                     <parameter name='field8' value="`$tmp.CUUPList`" />
2093                                                                                     <parameter name='field9' value="`$tmp.DUList`" />
2094                                                                                 </record>
2095                                                                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
2096                                                                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
2097                                                                                     <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
2098                                                                                     <parameter name="httpMethod" value="POST"/>
2099                                                                                     <parameter name="responsePrefix" value="so-callback-response"/>
2100                                                                                     <parameter name='contentType' value='application/json' />
2101                                                                                     <parameter name='format' value='json' />
2102                                                                                     <parameter name='accept' value='application/json' />
2103                                                                                     <outcome value='failure'>
2104                                                                                         <block>
2105                                                                                             <return status='failure'>
2106                                                                                                 <parameter name='ack-final' value='Y'/>
2107                                                                                                 <parameter name="error-code" value="500" />
2108                                                                                                 <parameter name="error-message" value="Error sending SO Response" />
2109                                                                                             </return>
2110                                                                                         </block>
2111                                                                                     </outcome>
2112                                                                                     <outcome value='success'>
2113                                                                                         <block>
2114                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2115                                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
2116                                                                                                 <parameter name="level" value="info" />
2117                                                                                                 <parameter name="field1" value="SO Response Sent "/>
2118                                                                                             </record>
2119                                                                                         </block>
2120                                                                                     </outcome>
2121                                                                                 </execute>
2122                                                                             </block>
2123                                                                             <set>
2124                                                                                 <parameter name='error-code' value='500'/>
2125                                                                                 <parameter name='error-message' value='Error updating RRMPolicy DU info in ConfigDB. Aborting RPC executiopn'/>
2126                                                                             </set>
2127                                                                             <return status='failure'>
2128                                                                                 <parameter name='ack-final' value='Y'/>
2129                                                                                 <parameter name='error-code' value='500'/>
2130                                                                                 <parameter name='error-message' value='Error updating RRMPolicy DU info in ConfigDB. Aborting RPC executiopn'/>
2131                                                                             </return>
2132                                                                         </block>
2133                                                                     </outcome>
2134                                                                 </execute>
2135                                                             </block>
2136                                                             <block atomic='true'>
2137                                                                 <switch test='`$prop.ransim-mounted`'>
2138                                                                     <outcome value='false'>
2139                                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
2140                                                                             <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellDU`"/>
2141                                                                             <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/>
2142                                                                             <parameter name="target" value="{idNearRTRIC}"/>
2143                                                                             <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
2144                                                                         </execute>
2145                                                                     </outcome>
2146                                                                     <outcome value='true'>
2147                                                                         <block atomic='true'>
2148                                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
2149                                                                                 <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellDU.ransim-mounted`"/>
2150                                                                                 <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/>
2151                                                                                 <parameter name="target" value="{idNearRTRIC}"/>
2152                                                                                 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
2153                                                                             </execute>
2154                                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
2155                                                                                 <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/>
2156                                                                                 <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/>
2157                                                                                 <parameter name="target" value="{mountName}"/>
2158                                                                                 <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/>
2159                                                                             </execute>
2160                                                                         </block>
2161                                                                     </outcome>
2162                                                                 </switch>
2163                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
2164                                                                     <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/>
2165                                                                     <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/>
2166                                                                     <parameter name="target" value="{idGNBDUFunction}"/>
2167                                                                     <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/>
2168                                                                 </execute>
2169                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
2170                                                                     <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/>
2171                                                                     <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/>
2172                                                                     <parameter name="target" value="{idNRCellDU}"/>
2173                                                                     <parameter name="replacement" value="`$tmp.cellLocalId`"/>
2174                                                                 </execute>
2175                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
2176                                                                     <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/>
2177                                                                     <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/>
2178                                                                     <parameter name="target" value="{id}"/>
2179                                                                     <parameter name="replacement" value="`$tmp.RRMPolicyRatioID.NRCellDU`"/>
2180                                                                 </execute>
2181                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2182                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
2183                                                                     <parameter name="level" value="info" />
2184                                                                     <parameter name="field1" value="addRRMPolicyRatio ToNRCellDU URL"/>
2185                                                                     <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/>
2186                                                                 </record>
2187                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2188                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
2189                                                                     <parameter name="level" value="info" />
2190                                                                     <parameter name="field1" value="Setting variables for addRRMPolicyRatio to NRCellDU"/>
2191                                                                     <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/>
2192                                                                     <parameter name="field3" value="`$tmp.mcc`"/>
2193                                                                     <parameter name="field4" value="`$tmp.mnc`"/>
2194                                                                     <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/>
2195                                                                     <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
2196                                                                     <parameter name="field7" value="`$tmp.dLThptPerSlice`"/>
2197                                                                 </record>
2198                                                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
2199                                                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-RRMPolicyRatio-NRCellDU.json'`" />
2200                                                                     <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToNRCellDU.url`"/>
2201                                                                     <parameter name="restapiUser" value="`$prop.controller.user`" />
2202                                                                     <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
2203                                                                     <parameter name="httpMethod" value="PUT"/>
2204                                                                     <parameter name="responsePrefix" value="addRRMPolicyRatio-response"/>
2205                                                                     <parameter name='contentType' value='application/json' />
2206                                                                     <parameter name='format' value='json' />
2207                                                                     <outcome value='failure'>
2208                                                                         <block>
2209                                                                             <block atomic='true'>
2210                                                                                 <set>
2211                                                                                     <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
2212                                                                                     <parameter name="tmp.status" value="`$error-code`"/>
2213                                                                                     <parameter name="tmp.reason" value="`$error-message`"/>
2214                                                                                     <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
2215                                                                                     <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
2216                                                                                 </set>
2217                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2218                                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
2219                                                                                     <parameter name="level" value="info" />
2220                                                                                     <parameter name="field1" value="URL for SO Callback Response"/>
2221                                                                                     <parameter name='field2' value="`$tmp.so.callbackURL`" />
2222                                                                                     <parameter name='field3' value="`$tmp.status`" />
2223                                                                                     <parameter name='field4' value="`$tmp.reason`" />
2224                                                                                     <parameter name='field5' value="`$tmp.requestID`" />
2225                                                                                     <parameter name='field6' value="`$tmp.action`" />
2226                                                                                     <parameter name='field7' value="`$tmp.CUCPList`" />
2227                                                                                     <parameter name='field8' value="`$tmp.CUUPList`" />
2228                                                                                     <parameter name='field9' value="`$tmp.DUList`" />
2229                                                                                 </record>
2230                                                                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
2231                                                                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
2232                                                                                     <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
2233                                                                                     <parameter name="httpMethod" value="POST"/>
2234                                                                                     <parameter name="responsePrefix" value="so-callback-response"/>
2235                                                                                     <parameter name='contentType' value='application/json' />
2236                                                                                     <parameter name='format' value='json' />
2237                                                                                     <parameter name='accept' value='*/*' />
2238                                                                                     <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
2239                                                                                     <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
2240                                                                                     <outcome value='failure'>
2241                                                                                         <block>
2242                                                                                             <return status='failure'>
2243                                                                                                 <parameter name='ack-final' value='Y'/>
2244                                                                                                 <parameter name="error-code" value="500" />
2245                                                                                                 <parameter name="error-message" value="Error sending SO Response" />
2246                                                                                             </return>
2247                                                                                         </block>
2248                                                                                     </outcome>
2249                                                                                     <outcome value='success'>
2250                                                                                         <block>
2251                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2252                                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
2253                                                                                                 <parameter name="level" value="info" />
2254                                                                                                 <parameter name="field1" value="SO Response Sent "/>
2255                                                                                             </record>
2256                                                                                         </block>
2257                                                                                     </outcome>
2258                                                                                 </execute>
2259                                                                             </block>
2260                                                                             <return status='failure'>
2261                                                                                 <parameter name='ack-final' value='Y'/>
2262                                                                                 <parameter name="error-code" value="500" />
2263                                                                                 <parameter name="error-message" value="Error adding RRM Policy" />
2264                                                                             </return>
2265                                                                         </block>
2266                                                                     </outcome>
2267                                                                     <outcome value='success'>
2268                                                                         <block>
2269                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2270                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
2271                                                                                 <parameter name="level" value="info" />
2272                                                                                 <parameter name="field1" value="addRRMPolicyRatio to NRCELLDU Executed Successfully "/>
2273                                                                             </record>
2274                                                                         </block>
2275                                                                     </outcome>
2276                                                                 </execute>
2277                                                             </block>
2278                                                         </block>
2279                                                     </outcome>
2280                                                 </switch>
2281                                             </block>
2282                                         </for>
2283                                     </block>
2284                                 </for>
2285                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2286                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
2287                                     <parameter name="level" value="info" />
2288                                     <parameter name="field1" value="MCC "/>
2289                                     <parameter name="field2" value="`$tmp.mcc`"/>
2290                                     <parameter name="field3" value="MNC "/>
2291                                     <parameter name="field4" value="`$tmp.mnc`"/>
2292                                     <parameter name="field5" value="Calculated uLThptPerSlice "/>
2293                                     <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
2294                                     <parameter name="field7" value="Calculated dLThptPerSlice "/>
2295                                     <parameter name="field8" value="`$tmp.dLThptPerSlice`"/>
2296                                 </record>
2297                             </block>
2298                         </for>
2299                     </block>
2300                 </for>
2301                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2302                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
2303                     <parameter name="level" value="info" />
2304                     <parameter name="field1" value="Update inventory in ConfigDB"/>
2305                 </record>
2306                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
2307                     <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateRANSliceInventory`"/>
2308                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateRANSliceInventory.json'`" />
2309                     <parameter name="httpMethod" value="PUT"/>
2310                     <parameter name="responsePrefix" value="update-inventory-configdb-response"/>
2311                     <parameter name='contentType' value='application/json' />
2312                     <parameter name='format' value='json' />
2313                     <parameter name='accept' value='application/json' />
2314                     <parameter name="convertResponse" value="true"/>
2315                     <outcome value='failure'>
2316                         <block>
2317                             <set>
2318                                 <parameter name='error-code' value='500'/>
2319                                 <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/>
2320                             </set>
2321                             <return status='failure'>
2322                                 <parameter name='ack-final' value='Y'/>
2323                                 <parameter name='error-code' value='500'/>
2324                                 <parameter name='error-message' value='Error updating inventory in ConfigDB. Aborting RPC executiopn'/>
2325                             </return>
2326                             <block atomic='true'>
2327                                 <set>
2328                                     <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
2329                                     <parameter name="tmp.status" value="`$error-code`"/>
2330                                     <parameter name="tmp.reason" value="`$error-message`"/>
2331                                     <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
2332                                     <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
2333                                 </set>
2334                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2335                                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
2336                                     <parameter name="level" value="info" />
2337                                     <parameter name="field1" value="URL for SO Callback Response"/>
2338                                     <parameter name='field2' value="`$tmp.so.callbackURL`" />
2339                                     <parameter name='field3' value="`$tmp.status`" />
2340                                     <parameter name='field4' value="`$tmp.reason`" />
2341                                     <parameter name='field5' value="`$tmp.requestID`" />
2342                                     <parameter name='field6' value="`$tmp.action`" />
2343                                     <parameter name='field7' value="`$tmp.CUCPList`" />
2344                                     <parameter name='field8' value="`$tmp.CUUPList`" />
2345                                     <parameter name='field9' value="`$tmp.DUList`" />
2346                                 </record>
2347                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
2348                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
2349                                     <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
2350                                     <parameter name="httpMethod" value="POST"/>
2351                                     <parameter name="responsePrefix" value="so-callback-response"/>
2352                                     <parameter name='contentType' value='application/json' />
2353                                     <parameter name='format' value='json' />
2354                                     <parameter name='accept' value='*/*' />
2355                                     <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
2356                                     <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
2357                                     <outcome value='failure'>
2358                                         <block>
2359                                             <return status='failure'>
2360                                                 <parameter name='ack-final' value='Y'/>
2361                                                 <parameter name="error-code" value="500" />
2362                                                 <parameter name="error-message" value="Error sending SO Response" />
2363                                             </return>
2364                                         </block>
2365                                     </outcome>
2366                                     <outcome value='success'>
2367                                         <block>
2368                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2369                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
2370                                                 <parameter name="level" value="info" />
2371                                                 <parameter name="field1" value="SO Response Sent "/>
2372                                             </record>
2373                                         </block>
2374                                     </outcome>
2375                                 </execute>
2376                             </block>
2377                         </block>
2378                     </outcome>
2379                     <outcome value='success'>
2380                         <block>
2381                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2382                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
2383                                 <parameter name="level" value="info" />
2384                                 <parameter name="field1" value="Successfully Updated inventory in ConfigDB"/>
2385                             </record>
2386                         </block>
2387                     </outcome>
2388                 </execute>
2389                 <block atomic='true'>
2390                     <set>
2391                         <parameter name="tmp.status" value="`$error-code`"/>
2392                         <parameter name="tmp.reason" value="`$error-message`"/>
2393                         <parameter name="tmp.requestID" value="`$instantiate-r-a-n-slice-input.common-header.request-id `"/>
2394                         <parameter name="tmp.action" value="`$instantiate-r-a-n-slice-input.action`"/>
2395                     </set>
2396                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
2397                         <parameter name="source" value="`$prop.restapi.so.callbackURL`"/>
2398                         <parameter name="outputPath" value="tmp.so.callbackURL"/>
2399                         <parameter name="target" value="{requestId}"/>
2400                         <parameter name="replacement" value="`$tmp.requestID`"/>
2401                     </execute>
2402                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2403                         <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
2404                         <parameter name="level" value="info" />
2405                         <parameter name="field1" value="URL for SO Callback Response"/>
2406                         <parameter name='field2' value="`$payloadJson.input.callbackURL`" />
2407                         <parameter name='field3' value="`$tmp.status`" />
2408                         <parameter name='field4' value="`$tmp.reason`" />
2409                         <parameter name='field5' value="`$tmp.requestID`" />
2410                         <parameter name='field6' value="`$tmp.action`" />
2411                         <parameter name='field7' value="`$prop.restapi.so.user`" />
2412                         <parameter name='field8' value="`$prop.restapi.so.password`" />
2413                         <parameter name='field9' value="`$tmp.DUList.response_length`" />
2414                         <parameter name='field10' value="`$tmp.CUCPList.response`" />
2415                         <parameter name='field11' value="`$tmp.CUUPList.response`" />
2416                         <parameter name='field12' value="`$tmp.DUList.response`" />
2417                     </record>
2418                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
2419                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
2420                         <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
2421                         <parameter name="httpMethod" value="POST"/>
2422                         <parameter name="responsePrefix" value="so-callback-response"/>
2423                         <parameter name='contentType' value='application/json' />
2424                         <parameter name='format' value='json' />
2425                         <parameter name='accept' value='*/*' />
2426                         <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
2427                         <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
2428                         <outcome value='failure'>
2429                             <block>
2430                                 <set>
2431                                     <parameter name='error-code' value='500'/>
2432                                     <parameter name='error-message' value='Error sending SO response. Aborting RPC executiopn'/>
2433                                 </set>
2434                                 <return status='failure'>
2435                                     <parameter name='ack-final' value='Y'/>
2436                                     <parameter name="error-code" value="500" />
2437                                     <parameter name="error-message" value="Error sending SO Response" />
2438                                 </return>
2439                             </block>
2440                         </outcome>
2441                         <outcome value='success'>
2442                             <block>
2443                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
2444                                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
2445                                     <parameter name="level" value="info" />
2446                                     <parameter name="field1" value="SO Response Sent "/>
2447                                 </record>
2448                             </block>
2449                         </outcome>
2450                     </execute>
2451                 </block>
2452                 <return status='success'>
2453                     <parameter name="ack-final" value="N" />
2454                     <parameter name="error-code" value="200" />
2455                     <parameter name="error-message" value="SUCCESSFUL Execution" />
2456                 </return>
2457             </block>
2458         </block>
2459     </method>
2460 </service-logic>