ActivateRANSliceInstance - CPS Integration
[ccsdk/distribution.git] / platform-logic / ran-slice-api / src / main / xml / ran-slice-api_activateRANSliceInstance-cps.xml
1 <service-logic\r
2     xmlns='http://www.onap.org/sdnc/svclogic'\r
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}'>\r
4     <method rpc='activateRANSliceInstance-cps' mode='sync'>\r
5         <block atomic='true'>\r
6             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
7                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
8                 <parameter name="level" value="info" />\r
9                 <parameter name="field1" value="RPC to handle activateRANSlice.: "/>\r
10                 <parameter name="field2" value="`$activate-r-a-n-slice-instance-input.action`"/>\r
11                 <parameter name="field3" value="`$activate-r-a-n-slice-instance-input.timestamp`"/>\r
12                 <parameter name="field4" value="`$activate-r-a-n-slice-instance-input.common-header.request-id`"/>\r
13                 <parameter name="field5" value="`$activate-r-a-n-slice-instance-input.common-header.originator-id`"/>\r
14                 <parameter name="field6" value="RPC Payload String "/>\r
15                 <parameter name="field7" value="`$activate-r-a-n-slice-instance-input.payload`"/>\r
16             </record>\r
17             <set>\r
18                 <parameter name='error-code' value='200' />\r
19                 <parameter name='error-message' value='Successful execution of activateRANSice RPC' />\r
20             </set>\r
21             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='jsonStringToCtx'>\r
22                 <parameter name='source' value='activate-r-a-n-slice-instance-input.payload' />\r
23                 <parameter name='outputPath' value='payloadJson' />\r
24                 <parameter name='isEscaped' value='false' />\r
25                 <outcome value='success'>\r
26                     <block atomic='true'>\r
27                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\r
28                             <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-activateRANSlice-context.log' />\r
29                         </execute>\r
30                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
31                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
32                             <parameter name="level" value="info" />\r
33                             <parameter name="field1" value="Payload for activateRANSlice.: "/>\r
34                             <parameter name="field2" value="`$payloadJson.input.sNSSAI`"/>\r
35                             <parameter name="field3" value="`$payloadJson.input.RANNFNSSIId`"/>\r
36                             <parameter name="field4" value="`$payloadJson.input.callbackURL`"/>\r
37                             <parameter name="field5" value="`$payloadJson.input.sliceProfileId`"/>\r
38                         </record>\r
39                     </block>\r
40                 </outcome>\r
41             </execute>\r
42             <set>\r
43                 <parameter name='tmp.sNSSAI' value="`$payloadJson.input.sNSSAI`" />\r
44             </set>\r
45             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\r
46                 <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-activateRANSlice-context.log' />\r
47             </execute>\r
48             <set>\r
49                 <parameter name='tmp.sliceprofileid' value="`$payloadJson.input.sliceProfileId`" />\r
50             </set>\r
51             <set>\r
52                 <parameter name='tmp.payload.RANNFNSSIId' value="`$payloadJson.input.RANNFNSSIId`" />\r
53             </set>\r
54             <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\r
55                 <parameter name='fileName' value='/opt/onap/ccsdk/data/properties/ran-slice-api-dg.properties' />\r
56                 <parameter name='contextPrefix' value='prop' />\r
57             </execute>\r
58             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
59                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
60                 <parameter name="level" value="info" />\r
61                 <parameter name="field1" value="Properties read .. controller details "/>\r
62                 <parameter name="field2" value="`$prop.controller.user`"/>\r
63                 <parameter name="field3" value="`$prop.controller.pwd`"/>\r
64                 <parameter name="field4" value="`$prop.controller.url`"/>\r
65                 <parameter name="field5" value="ransim-mounted (true/false): "/>\r
66                 <parameter name="field6" value="`$prop.ransim-mounted`"/>\r
67                 <parameter name="field7" value="config DB deployed (true/false): "/>\r
68                 <parameter name="field8" value="`$prop.configdb-deployed`"/>\r
69             </record>\r
70             <switch test='`$activate-r-a-n-slice-instance-input.action == activate`'>\r
71                 <outcome value='true'>\r
72                     <block atomic='true'>\r
73                         <set>\r
74                             <parameter name='tmp.status' value='ACTIVE' />\r
75                         </set>\r
76                     </block>\r
77                 </outcome>\r
78                 <outcome value='false'>\r
79                     <block atomic='true'>\r
80                         <set>\r
81                             <parameter name='tmp.status' value='INACTIVE' />\r
82                         </set>\r
83                     </block>\r
84                 </outcome>\r
85             </switch>\r
86             <set>\r
87                 <parameter name='tmp.getAnchors.URL' value="`$prop.restapi.cps.anchors.endpoint`"/>\r
88             </set>\r
89             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
90                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
91                 <parameter name="level" value="info" />\r
92                 <parameter name="field1" value="URL to fetch the anchors"/>\r
93                 <parameter name="field2" value="`$tmp.getAnchors.URL`"/>\r
94             </record>\r
95             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
96                 <parameter name="restapiUrl" value="`$tmp.getAnchors.URL`"/>\r
97                 <parameter name="httpMethod" value="GET"/>\r
98                 <parameter name="restapiUser" value="cpsuser" />\r
99                 <parameter name="restapiPassword" value="cpsr0cks!"/>\r
100                 <parameter name="responsePrefix" value="get-anchors-cps-response"/>\r
101                 <parameter name='contentType' value='application/json' />\r
102                 <parameter name='format' value='json' />\r
103                 <parameter name='accept' value='application/json' />\r
104                 <parameter name="convertResponse" value="true"/>\r
105                 <outcome value='failure'>\r
106                     <block>\r
107                         <set>\r
108                             <parameter name='error-code' value='500'/>\r
109                             <parameter name='error-message' value='Error Getting Info from CPS. Aborting RPC executiopn'/>\r
110                         </set>\r
111                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
112                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
113                             <parameter name="level" value="info" />\r
114                             <parameter name="field1" value="Failed to fetch anchors from CPS"/>\r
115                         </record>\r
116                     </block>\r
117                 </outcome>\r
118                 <outcome value='success'>\r
119                     <block atomic='true'>\r
120                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
121                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
122                             <parameter name="level" value="info" />\r
123                             <parameter name="field1" value="Successfully Obtained anchors from CPS"/>\r
124                             <parameter name="field2" value="`$get-anchors-cps-response._length`"/>\r
125                         </record>\r
126                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\r
127                             <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-activateRANSlice-context.log' />\r
128                         </execute>\r
129                     </block>\r
130                 </outcome>\r
131             </execute>\r
132             <set>\r
133                 <parameter name='tmp.anchors.length' value="`$get-anchors-cps-response._length`"/>\r
134             </set>\r
135             <set>\r
136                 <parameter name='tmp.RIC.length' value="0"/>\r
137             </set>\r
138             <for index='anc' start='0' end='`$tmp.anchors.length`'>\r
139                 <block atomic='true'>\r
140                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
141                         <parameter name='outputPath' value='tmp.schemaset.name' />\r
142                         <parameter name='source' value="`'get-anchors-cps-response.['+$anc+'].schemaSetName'`" />\r
143                     </execute>\r
144                     <switch test='`$tmp.schemaset.name`'>\r
145                         <outcome value='ran-network'>\r
146                             <block atomic='true'>\r
147                                 <set>\r
148                                     <parameter name='tmp.RIC.length' value="`$tmp.RIC.length+1`"/>\r
149                                 </set>\r
150                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
151                                     <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
152                                     <parameter name="level" value="info" />\r
153                                     <parameter name="field1" value="Applicable RIC length"/>\r
154                                     <parameter name="field2" value="`$tmp.RIC.length`"/>\r
155                                 </record>\r
156                             </block>\r
157                         </outcome>\r
158                     </switch>\r
159                 </block>\r
160             </for>\r
161             <return status='success'>\r
162                 <parameter name="ack-final" value="Y" />\r
163                 <parameter name="error-code" value="200" />\r
164                 <parameter name="error-message" value="SUCCESSFUL Execution" />\r
165             </return>\r
166             <for index='anc' start='0' end='`$tmp.anchors.length`'>\r
167                 <block atomic='true'>\r
168                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
169                         <parameter name='outputPath' value='tmp.schemaset.name' />\r
170                         <parameter name='source' value="`'get-anchors-cps-response.['+$anc+'].schemaSetName'`" />\r
171                     </execute>\r
172                     <switch test='`$tmp.schemaset.name`'>\r
173                         <outcome value='ran-network'>\r
174                             <block atomic='true'>\r
175                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
176                                     <parameter name='outputPath' value='tmp.anchor.name' />\r
177                                     <parameter name='source' value="`'get-anchors-cps-response.['+$anc+'].name'`" />\r
178                                 </execute>\r
179                                 <block atomic='true'>\r
180                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
181                                         <parameter name="source" value="`$prop.restapi.cps.tbdmt.execute.endpoint`"/>\r
182                                         <parameter name="outputPath" value="tmp.cps.getNearRTRICByNSSI.url"/>\r
183                                         <parameter name="target" value="{schemaSet}"/>\r
184                                         <parameter name="replacement" value="`$tmp.anchor.name`"/>\r
185                                     </execute>\r
186                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
187                                         <parameter name="source" value="`$tmp.cps.getNearRTRICByNSSI.url`"/>\r
188                                         <parameter name="outputPath" value="tmp.cps.getNearRTRICByNSSI.url"/>\r
189                                         <parameter name="target" value="{templateId}"/>\r
190                                         <parameter name="replacement" value="`$prop.tbdmt.template.get-nearrtric-by-rannfnssi`"/>\r
191                                     </execute>\r
192                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
193                                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
194                                         <parameter name="level" value="info" />\r
195                                         <parameter name="field1" value="URL for CPS TDBMT to Get NearRTRIC for RANNFNSSI"/>\r
196                                         <parameter name='field2' value="`$tmp.cps.getNearRTRICByNSSI.url`" />\r
197                                     </record>\r
198                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
199                                         <parameter name="restapiUrl" value="`$tmp.cps.getNearRTRICByNSSI.url`"/>\r
200                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/cps-templates/cps-get-nearrtric-by-rannfnssi.json'`" />\r
201                                         <parameter name="httpMethod" value="POST"/>\r
202                                         <parameter name="responsePrefix" value="getNFNSSIRIC-cps-response"/>\r
203                                         <parameter name='contentType' value='application/json' />\r
204                                         <parameter name='format' value='json' />\r
205                                         <parameter name='accept' value='application/json' />\r
206                                         <parameter name="convertResponse" value="true"/>\r
207                                         <outcome value='failure'>\r
208                                             <block>\r
209                                                 <set>\r
210                                                     <parameter name='error-code' value='500'/>\r
211                                                     <parameter name='error-message' value='Error Getting Info from CPS. Aborting RPC executiopn'/>\r
212                                                 </set>\r
213                                                 <block atomic='true'>\r
214                                                     <set>\r
215                                                         <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>\r
216                                                         <parameter name="tmp.status" value="`$error-code`"/>\r
217                                                         <parameter name="tmp.reason" value="`$error-message`"/>\r
218                                                         <parameter name="tmp.requestID" value="`$activate-r-a-n-slice-instance-input.common-header.request-id`"/>\r
219                                                         <parameter name="tmp.action" value="`$activate-r-a-n-slice-instance-input.action`"/>\r
220                                                     </set>\r
221                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
222                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />\r
223                                                         <parameter name="level" value="info" />\r
224                                                         <parameter name="field1" value="URL for SO Callback Response"/>\r
225                                                         <parameter name='field2' value="`$tmp.so.callbackURL`" />\r
226                                                         <parameter name='field3' value="`$tmp.status`" />\r
227                                                         <parameter name='field4' value="`$tmp.reason`" />\r
228                                                         <parameter name='field5' value="`$tmp.requestID`" />\r
229                                                         <parameter name='field6' value="`$tmp.action`" />\r
230                                                     </record>\r
231                                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
232                                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />\r
233                                                         <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>\r
234                                                         <parameter name="httpMethod" value="POST"/>\r
235                                                         <parameter name="responsePrefix" value="so-callback-activate-response"/>\r
236                                                         <parameter name='contentType' value='application/json' />\r
237                                                         <parameter name='format' value='json' />\r
238                                                         <parameter name='accept' value='*/*' />\r
239                                                         <parameter name="convertResponse" value="true"/>\r
240                                                         <outcome value='failure'>\r
241                                                             <block>\r
242                                                                 <return status='failure'>\r
243                                                                     <parameter name='ack-final' value='Y'/>\r
244                                                                     <parameter name="error-code" value="500" />\r
245                                                                     <parameter name="error-message" value="Error sending SO Response" />\r
246                                                                 </return>\r
247                                                             </block>\r
248                                                         </outcome>\r
249                                                         <outcome value='success'>\r
250                                                             <block>\r
251                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
252                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
253                                                                     <parameter name="level" value="info" />\r
254                                                                     <parameter name="field1" value="SO Response Sent "/>\r
255                                                                 </record>\r
256                                                             </block>\r
257                                                         </outcome>\r
258                                                     </execute>\r
259                                                 </block>\r
260                                             </block>\r
261                                         </outcome>\r
262                                         <outcome value='success'>\r
263                                             <block atomic='true'>\r
264                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
265                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
266                                                     <parameter name="level" value="info" />\r
267                                                     <parameter name="field1" value="Successfully Obtained NearRTRIC info from CPS"/>\r
268                                                     <parameter name="field2" value="`$getNFNSSIRIC-cps-response._length`"/>\r
269                                                 </record>\r
270                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\r
271                                                     <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-activateRANSlice-context.log' />\r
272                                                 </execute>\r
273                                             </block>\r
274                                         </outcome>\r
275                                     </execute>\r
276                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
277                                         <parameter name="source" value="`$prop.restapi.cps.tbdmt.execute.endpoint`"/>\r
278                                         <parameter name="outputPath" value="tmp.cps.getPLMNID.url"/>\r
279                                         <parameter name="target" value="{schemaSet}"/>\r
280                                         <parameter name="replacement" value="`$tmp.schemaset.name`"/>\r
281                                     </execute>\r
282                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
283                                         <parameter name="source" value="`$tmp.cps.getPLMNID.url`"/>\r
284                                         <parameter name="outputPath" value="tmp.cps.getPLMNID.url"/>\r
285                                         <parameter name="target" value="{templateId}"/>\r
286                                         <parameter name="replacement" value="`$prop.tbdmt.template.getmcc`"/>\r
287                                     </execute>\r
288                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
289                                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
290                                         <parameter name="level" value="info" />\r
291                                         <parameter name="field1" value="URL for CPS TDBMT to Get plmnid from sliceprofile"/>\r
292                                         <parameter name='field2' value="`$tmp.cps.getPLMNID.url`" />\r
293                                     </record>\r
294                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
295                                         <parameter name="restapiUrl" value="`$tmp.cps.getPLMNID.url`"/>\r
296                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/cps-templates/cps-get-plmnid.json'`" />\r
297                                         <parameter name="httpMethod" value="POST"/>\r
298                                         <parameter name="responsePrefix" value="getplmnmccid-cps-response"/>\r
299                                         <parameter name='contentType' value='application/json' />\r
300                                         <parameter name='format' value='json' />\r
301                                         <parameter name='accept' value='application/json' />\r
302                                         <parameter name="convertResponse" value="true"/>\r
303                                         <outcome value='failure'>\r
304                                             <block>\r
305                                                 <set>\r
306                                                     <parameter name='error-code' value='500'/>\r
307                                                     <parameter name='error-message' value='Error Getting Info from CPS. Aborting RPC executiopn'/>\r
308                                                 </set>\r
309                                             </block>\r
310                                         </outcome>\r
311                                         <outcome value='success'>\r
312                                             <block atomic='true'>\r
313                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
314                                                     <parameter name='outputPath' value='tmp.plmn.mcc' />\r
315                                                     <parameter name='source' value="`'getplmnmccid-cps-response.[0]'`" />\r
316                                                 </execute>\r
317                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
318                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
319                                                     <parameter name="level" value="info" />\r
320                                                     <parameter name="field1" value="Successfully Obtained MCC info from CPS"/>\r
321                                                     <parameter name="field2" value="`$getplmnmccid-cps-response.httpResponse`"/>\r
322                                                 </record>\r
323                                             </block>\r
324                                         </outcome>\r
325                                     </execute>\r
326                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
327                                         <parameter name="source" value="`$prop.restapi.cps.tbdmt.execute.endpoint`"/>\r
328                                         <parameter name="outputPath" value="tmp.cps.getPLMNMNCID.url"/>\r
329                                         <parameter name="target" value="{schemaSet}"/>\r
330                                         <parameter name="replacement" value="`$tmp.schemaset.name`"/>\r
331                                     </execute>\r
332                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
333                                         <parameter name="source" value="`$tmp.cps.getPLMNMNCID.url`"/>\r
334                                         <parameter name="outputPath" value="tmp.cps.getPLMNMNCID.url"/>\r
335                                         <parameter name="target" value="{templateId}"/>\r
336                                         <parameter name="replacement" value="`$prop.tbdmt.template.get-plmnmncid-from-sliceprofile`"/>\r
337                                     </execute>\r
338                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
339                                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
340                                         <parameter name="level" value="info" />\r
341                                         <parameter name="field1" value="URL for CPS TDBMT to Get plmnid from sliceprofile"/>\r
342                                         <parameter name='field2' value="`$tmp.cps.getPLMNMNCID.url`" />\r
343                                     </record>\r
344                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
345                                         <parameter name="restapiUrl" value="`$tmp.cps.getPLMNMNCID.url`"/>\r
346                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/cps-templates/cps-get-plmnid.json'`" />\r
347                                         <parameter name="httpMethod" value="POST"/>\r
348                                         <parameter name="responsePrefix" value="getplmnmncid-cps-response"/>\r
349                                         <parameter name='contentType' value='application/json' />\r
350                                         <parameter name='format' value='json' />\r
351                                         <parameter name='accept' value='application/json' />\r
352                                         <parameter name="convertResponse" value="true"/>\r
353                                         <outcome value='failure'>\r
354                                             <block>\r
355                                                 <set>\r
356                                                     <parameter name='error-code' value='500'/>\r
357                                                     <parameter name='error-message' value='Error Getting Info from CPS. Aborting RPC executiopn'/>\r
358                                                 </set>\r
359                                             </block>\r
360                                         </outcome>\r
361                                         <outcome value='success'>\r
362                                             <block atomic='true'>\r
363                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
364                                                     <parameter name='outputPath' value='tmp.plmn.mnc' />\r
365                                                     <parameter name='source' value="`'getplmnmncid-cps-response.[0]'`" />\r
366                                                 </execute>\r
367                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
368                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
369                                                     <parameter name="level" value="info" />\r
370                                                     <parameter name="field1" value="Successfully Obtained MNC info from Cps"/>\r
371                                                     <parameter name="field2" value="`$getplmnmncid-cps-response.httpResponse`"/>\r
372                                                 </record>\r
373                                             </block>\r
374                                         </outcome>\r
375                                     </execute>\r
376                                     <set>\r
377                                         <parameter name='tmp.mcc' value='`$tmp.plmn.mcc`'/>\r
378                                         <parameter name='tmp.mnc' value='`$tmp.plmn.mnc`'/>\r
379                                     </set>\r
380                                     <set>\r
381                                         <parameter name='tmp.RICList_length' value="`$getNFNSSIRIC-cps-response._length`"/>\r
382                                     </set>\r
383                                 </block>\r
384                             </block>\r
385                         </outcome>\r
386                     </switch>\r
387                 </block>\r
388             </for>\r
389             <for index='idy' start='0' end='`$tmp.RICList_length`' >\r
390                 <block atomic='true'>\r
391                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
392                         <parameter name='outputPath' value='tmp.nearRTRICId' />\r
393                         <parameter name='source' value="`'getNFNSSIRIC-cps-response.[' + $idy +'].idNearRTRIC'`" />\r
394                     </execute>\r
395                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
396                         <parameter name='outputPath' value='tmp.pLMNInfoList_nearrtric_length' />\r
397                         <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].attributes.pLMNInfoList_length'`" />\r
398                     </execute>\r
399                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
400                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
401                         <parameter name="level" value="info" />\r
402                         <parameter name="field1" value="NearRTRIC plmninfolength "/>\r
403                         <parameter name="field2" value="`$tmp.pLMNInfoList_nearrtric_length`"/>\r
404                     </record>\r
405                     <for index='id-ric' start='0' end='`$tmp.pLMNInfoList_nearrtric_length`' >\r
406                         <block atomic='true'>\r
407                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
408                                 <parameter name='outputPath' value='tmp.ric.sNSSAILength' />\r
409                                 <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].attributes.pLMNInfoList['+$id-ric+'].sNSSAIList_length'`" />\r
410                             </execute>\r
411                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
412                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
413                                 <parameter name="level" value="info" />\r
414                                 <parameter name="field1" value="NearRTRIC-snssailength "/>\r
415                                 <parameter name="field2" value="`$tmp.ric.sNSSAILength`"/>\r
416                             </record>\r
417                             <switch test='`$tmp.ric.sNSSAILength > 0`'>\r
418                                 <outcome value='true'>\r
419                                     <block atomic='true'>\r
420                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
421                                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
422                                             <parameter name="level" value="info" />\r
423                                             <parameter name="field1" value="plmninfolistnssailength in true in nearRTRIC "/>\r
424                                             <parameter name="field2" value="`$tmp.ric.sNSSAILength`"/>\r
425                                         </record>\r
426                                         <for index='id-ric-snssai' start='0' end='`$tmp.ric.sNSSAILength`' >\r
427                                             <block atomic='true'>\r
428                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
429                                                     <parameter name='outputPath' value='tmp.ric.sNSSAI' />\r
430                                                     <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].attributes.pLMNInfoList['+$id-ric+'].sNSSAIList['+$id-ric-snssai+'].sNssai'`" />\r
431                                                 </execute>\r
432                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
433                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
434                                                     <parameter name="level" value="info" />\r
435                                                     <parameter name="field1" value="snssai from cps response"/>\r
436                                                     <parameter name="field2" value="`$tmp.ric.sNSSAI`"/>\r
437                                                     <parameter name="field3" value="sNSSAI from request"/>\r
438                                                     <parameter name="field4" value="`$tmp.sNSSAI`"/>\r
439                                                 </record>\r
440                                                 <switch test='`$tmp.ric.sNSSAI == $tmp.sNSSAI`'>\r
441                                                     <outcome value='true'>\r
442                                                         <block atomic='true'>\r
443                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
444                                                                 <parameter name="source" value="`$prop.restapi.cps.tbdmt.execute.endpoint`"/>\r
445                                                                 <parameter name="outputPath" value="tmp.cps.putstatus.rtric.url"/>\r
446                                                                 <parameter name="target" value="{schemaSet}"/>\r
447                                                                 <parameter name="replacement" value="`$tmp.schemaset.name`"/>\r
448                                                             </execute>\r
449                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
450                                                                 <parameter name="source" value="`$tmp.cps.putstatus.rtric.url`"/>\r
451                                                                 <parameter name="outputPath" value="tmp.cps.putstatus.rtric.url"/>\r
452                                                                 <parameter name="target" value="{templateId}"/>\r
453                                                                 <parameter name="replacement" value="`$prop.tbdmt.template.put-status-rtric`"/>\r
454                                                             </execute>\r
455                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
456                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
457                                                                 <parameter name="level" value="info" />\r
458                                                                 <parameter name="field1" value="URL for CPS TDBMT to put status NearRTRIC"/>\r
459                                                                 <parameter name='field2' value="`$tmp.cps.putstatus.rtric.url`" />\r
460                                                             </record>\r
461                                                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
462                                                                 <parameter name="restapiUrl" value="`$tmp.cps.putstatus.rtric.url`"/>\r
463                                                                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/cps-templates/cps-put-nearrtric.json'`" />\r
464                                                                 <parameter name="httpMethod" value="POsT"/>\r
465                                                                 <parameter name="responsePrefix" value="cps-put-status-nearrtic-response"/>\r
466                                                                 <parameter name='contentType' value='application/json' />\r
467                                                                 <parameter name='format' value='json' />\r
468                                                                 <parameter name='accept' value='application/json' />\r
469                                                                 <parameter name="convertResponse" value="true"/>\r
470                                                                 <outcome value='failure'>\r
471                                                                     <block atomic='true'>\r
472                                                                         <set>\r
473                                                                             <parameter name='error-code' value='500'/>\r
474                                                                             <parameter name='error-message' value='Error updating nearRTRIC info in CPS. Aborting RPC executiopn'/>\r
475                                                                         </set>\r
476                                                                         <return status='failure'>\r
477                                                                             <parameter name='ack-final' value='Y'/>\r
478                                                                             <parameter name='error-code' value='500'/>\r
479                                                                             <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/>\r
480                                                                         </return>\r
481                                                                     </block>\r
482                                                                 </outcome>\r
483                                                                 <outcome value='success'>\r
484                                                                     <block atomic='true'>\r
485                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
486                                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
487                                                                             <parameter name="level" value="info" />\r
488                                                                             <parameter name="field1" value="Successfully Updated NearRT RIC info in cps"/>\r
489                                                                         </record>\r
490                                                                     </block>\r
491                                                                 </outcome>\r
492                                                             </execute>\r
493                                                         </block>\r
494                                                     </outcome>\r
495                                                     <outcome value='false'>\r
496                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
497                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
498                                                             <parameter name="level" value="info" />\r
499                                                             <parameter name="field1" value="NSSAI doesn't exist "/>\r
500                                                         </record>\r
501                                                     </outcome>\r
502                                                 </switch>\r
503                                             </block>\r
504                                         </for>\r
505                                     </block>\r
506                                 </outcome>\r
507                                 <outcome value='false'>\r
508                                     <block atomic='true'>\r
509                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
510                                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
511                                             <parameter name="level" value="info" />\r
512                                             <parameter name="field1" value="plmninfolistnssailength in false in nearRTRIC "/>\r
513                                             <parameter name="field2" value="`$tmp.ric.sNSSAILength`"/>\r
514                                         </record>\r
515                                     </block>\r
516                                 </outcome>\r
517                             </switch>\r
518                         </block>\r
519                     </for>\r
520                 </block>\r
521                 <block atomic='true'>\r
522                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
523                         <parameter name='outputPath' value='tmp.CUCPList_length' />\r
524                         <parameter name='source' value="`'getNFNSSIRIC-cps-response.[' + $idy +'].GNBCUCPFunction_length'`" />\r
525                     </execute>\r
526                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
527                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
528                         <parameter name="level" value="info" />\r
529                         <parameter name="field1" value="Number of CUCP List Entries "/>\r
530                         <parameter name="field2" value="`$tmp.CUCPList_length`"/>\r
531                         <parameter name="field3" value="for the NearRTRIC"/>\r
532                         <parameter name="field4" value="`$tmp.nearRTRICId`"/>\r
533                     </record>\r
534                     <for index='idz' start='0' end='`$tmp.CUCPList_length`'>\r
535                         <block atomic='true'>\r
536                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
537                                 <parameter name='outputPath' value='tmp.CUCPName' />\r
538                                 <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].GNBCUCPFunction['+ $idz +'].attributes.gNBCUName'`" />\r
539                             </execute>\r
540                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
541                                 <parameter name='outputPath' value='tmp.idCUCP' />\r
542                                 <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].GNBCUCPFunction['+ $idz +'].idGNBCUCPFunction'`" />\r
543                             </execute>\r
544                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
545                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
546                                 <parameter name="level" value="info" />\r
547                                 <parameter name="field1" value="ID CUCP "/>\r
548                                 <parameter name="field2" value="`$tmp.idCUCP`"/>\r
549                                 <parameter name="field3" value="CUCPName "/>\r
550                                 <parameter name="field4" value="`$tmp.CUCPName`"/>\r
551                             </record>\r
552                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
553                                 <parameter name='outputPath' value='tmp.cellCUList_length' />\r
554                                 <parameter name='source' value="`'getNFNSSIRIC-cps-response.[' + $idy +'].GNBCUCPFunction[' + $idz +'].NRCellCU_length'`" />\r
555                             </execute>\r
556                             <for index='idcu' start='0' end='`$tmp.cellCUList_length`' >\r
557                                 <block atomic='true'>\r
558                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
559                                         <parameter name='outputPath' value='tmp.pLMNInfoList_length' />\r
560                                         <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].GNBCUCPFunction['+ $idz +'].NRCellCU['+ $idcu +'].attributes.pLMNInfoList_length'`" />\r
561                                     </execute>\r
562                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
563                                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
564                                         <parameter name="level" value="info" />\r
565                                         <parameter name="field1" value="CUCP plmninfolength "/>\r
566                                         <parameter name="field2" value="`$tmp.pLMNInfoList_length`"/>\r
567                                     </record>\r
568                                     <switch test='`$tmp.pLMNInfoList_length > 0`'>\r
569                                         <outcome value='true'>\r
570                                             <block atomic='true'>\r
571                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
572                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
573                                                     <parameter name="level" value="info" />\r
574                                                     <parameter name="field1" value="CUCP plmninfolistLength in true "/>\r
575                                                     <parameter name="field2" value="`$tmp.pLMNInfoList_length`"/>\r
576                                                 </record>\r
577                                                 <for index='id-cuplmn' start='0' end='`$tmp.pLMNInfoList_length`' >\r
578                                                     <block atomic='true'>\r
579                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
580                                                             <parameter name='outputPath' value='tmp.sNssaiListLengthCU' />\r
581                                                             <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].GNBCUCPFunction['+ $idz +'].NRCellCU['+ $idcu +'].attributes.pLMNInfoList['+ $id-cuplmn +'].sNSSAIList_length'`" />\r
582                                                         </execute>\r
583                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
584                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
585                                                             <parameter name="level" value="info" />\r
586                                                             <parameter name="field1" value="CUCP-snssailength "/>\r
587                                                             <parameter name="field2" value="`$tmp.sNssaiListLengthCU`"/>\r
588                                                         </record>\r
589                                                         <switch test='`$tmp.sNssaiListLengthCU > 0`'>\r
590                                                             <outcome value='true'>\r
591                                                                 <block atomic='true'>\r
592                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
593                                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
594                                                                         <parameter name="level" value="info" />\r
595                                                                         <parameter name="field1" value="plmninfolistnssailength in true in CU "/>\r
596                                                                         <parameter name="field2" value="`$tmp.sNssaiListLengthCU`"/>\r
597                                                                     </record>\r
598                                                                     <for index='id-cusnssai' start='0' end='`$tmp.sNssaiListLengthCU`'>\r
599                                                                         <block atomic='true'>\r
600                                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
601                                                                                 <parameter name='outputPath' value='tmp.cpsSNSSAI' />\r
602                                                                                 <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].GNBCUCPFunction['+ $idz +'].NRCellCU['+ $idcu +'].attributes.pLMNInfoList['+ $id-cuplmn +'].sNSSAIList['+ $id-cusnssai +'].sNssai'`" />\r
603                                                                             </execute>\r
604                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
605                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
606                                                                                 <parameter name="level" value="info" />\r
607                                                                                 <parameter name="field1" value="sNSSAI - getNFNSSIRIC-cps-response"/>\r
608                                                                                 <parameter name="field2" value="`$tmp.cpsSNSSAI`"/>\r
609                                                                                 <parameter name="field3" value="sNSSAI from request"/>\r
610                                                                                 <parameter name="field4" value="`$tmp.sNSSAI`"/>\r
611                                                                             </record>\r
612                                                                             <switch test='`$tmp.cpsSNSSAI == $tmp.sNSSAI`'>\r
613                                                                                 <outcome value='true'>\r
614                                                                                     <block atomic='true'>\r
615                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
616                                                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
617                                                                                             <parameter name="level" value="info" />\r
618                                                                                             <parameter name="field1" value="CellCU is applicable for the NSSAI "/>\r
619                                                                                         </record>\r
620                                                                                         <switch test='`$prop.ransim-mounted`'>\r
621                                                                                             <outcome value='false'>\r
622                                                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
623                                                                                                     <parameter name="source" value="`$prop.restapi.patchPLMNInfoListEntry.ToNRCellCU`"/>\r
624                                                                                                     <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry.url"/>\r
625                                                                                                     <parameter name="target" value="{idNearRTRIC}"/>\r
626                                                                                                     <parameter name="replacement" value="`$tmp.nearRTRICId`"/>\r
627                                                                                                 </execute>\r
628                                                                                             </outcome>\r
629                                                                                             <outcome value='true'>\r
630                                                                                                 <block atomic='true'>\r
631                                                                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
632                                                                                                         <parameter name="source" value="`$prop.restapi.patchPLMNInfoListEntry.ToNRCellCU.ransim-mounted`"/>\r
633                                                                                                         <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry.url"/>\r
634                                                                                                         <parameter name="target" value="{idNearRTRIC}"/>\r
635                                                                                                         <parameter name="replacement" value="`$tmp.nearRTRICId`"/>\r
636                                                                                                     </execute>\r
637                                                                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
638                                                                                                         <parameter name="source" value="`$tmp.patchPLMNInfoListEntry.url`"/>\r
639                                                                                                         <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry.url"/>\r
640                                                                                                         <parameter name="target" value="{mountName}"/>\r
641                                                                                                         <parameter name="replacement" value="`$tmp.CUCPName`"/>\r
642                                                                                                     </execute>\r
643                                                                                                 </block>\r
644                                                                                             </outcome>\r
645                                                                                         </switch>\r
646                                                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
647                                                                                             <parameter name='outputPath' value='tmp.NRCellCUID' />\r
648                                                                                             <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].GNBCUCPFunction['+ $idz +'].NRCellCU['+ $idcu +'].idNRCellCU'`" />\r
649                                                                                         </execute>\r
650                                                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
651                                                                                             <parameter name="source" value="`$tmp.patchPLMNInfoListEntry.url`"/>\r
652                                                                                             <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry.url"/>\r
653                                                                                             <parameter name="target" value="{idGNBCUCPFunction}"/>\r
654                                                                                             <parameter name="replacement" value="`$tmp.CUCPName`"/>\r
655                                                                                         </execute>\r
656                                                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
657                                                                                             <parameter name="source" value="`$tmp.patchPLMNInfoListEntry.url`"/>\r
658                                                                                             <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry.url"/>\r
659                                                                                             <parameter name="target" value="{idNRCellCU}"/>\r
660                                                                                             <parameter name="replacement" value="`$tmp.NRCellCUID`"/>\r
661                                                                                         </execute>\r
662                                                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
663                                                                                             <parameter name="source" value="`$tmp.patchPLMNInfoListEntry.url`"/>\r
664                                                                                             <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry.url"/>\r
665                                                                                             <parameter name="target" value="{mcc}"/>\r
666                                                                                             <parameter name="replacement" value="`$tmp.mcc`"/>\r
667                                                                                         </execute>\r
668                                                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
669                                                                                             <parameter name="source" value="`$tmp.patchPLMNInfoListEntry.url`"/>\r
670                                                                                             <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry.url"/>\r
671                                                                                             <parameter name="target" value="{mnc}"/>\r
672                                                                                             <parameter name="replacement" value="`$tmp.mnc`"/>\r
673                                                                                         </execute>\r
674                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
675                                                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
676                                                                                             <parameter name="level" value="info" />\r
677                                                                                             <parameter name="field1" value="patch cellCU NSSAI parameters"/>\r
678                                                                                             <parameter name="field2" value="`$tmp.nearRTRICId`"/>\r
679                                                                                             <parameter name="field3" value="`$tmp.CUCPName`"/>\r
680                                                                                             <parameter name="field4" value="`$tmp.NRCellCUID`"/>\r
681                                                                                             <parameter name="field5" value="`$tmp.mcc`"/>\r
682                                                                                             <parameter name="field6" value="`$tmp.mnc`"/>\r
683                                                                                             <parameter name="field7" value="`$tmp.patchPLMNInfoListEntry.url`"/>\r
684                                                                                         </record>\r
685                                                                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
686                                                                                             <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-patch-sNSSAI-status.json'`" />\r
687                                                                                             <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.patchPLMNInfoListEntry.url`"/>\r
688                                                                                             <parameter name="restapiUser" value="`$prop.controller.user`" />\r
689                                                                                             <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>\r
690                                                                                             <parameter name="httpMethod" value="PATCH"/>\r
691                                                                                             <parameter name="responsePrefix" value="activate-cellCU-PLMNInfoList-response"/>\r
692                                                                                             <parameter name='contentType' value='application/yang.patch+json' />\r
693                                                                                             <parameter name='accept' value='application/yang.patch-status+json'/>\r
694                                                                                             <parameter name='format' value='json' />\r
695                                                                                             <outcome value='failure'>\r
696                                                                                                 <block atomic='true'>\r
697                                                                                                     <set>\r
698                                                                                                         <parameter name='error-code' value='500'/>\r
699                                                                                                         <parameter name='error-message' value='Error patching cellCU PLMNInfoList. Aborting RPC executiopn'/>\r
700                                                                                                     </set>\r
701                                                                                                     <return status='failure'>\r
702                                                                                                         <parameter name='ack-final' value='Y'/>\r
703                                                                                                         <parameter name='error-code' value='500'/>\r
704                                                                                                         <parameter name='error-message' value='Error updating NRcellCU - PLMNInfo. Aborting RPC executiopn'/>\r
705                                                                                                     </return>\r
706                                                                                                     <block atomic='true'>\r
707                                                                                                         <set>\r
708                                                                                                             <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>\r
709                                                                                                             <parameter name="tmp.status" value="`$error-code`"/>\r
710                                                                                                             <parameter name="tmp.reason" value="`$error-message`"/>\r
711                                                                                                             <parameter name="tmp.requestID" value="`$activate-r-a-n-slice-instance-input.common-header.request-id`"/>\r
712                                                                                                             <parameter name="tmp.action" value="`$activate-r-a-n-slice-instance-input.action`"/>\r
713                                                                                                         </set>\r
714                                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
715                                                                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />\r
716                                                                                                             <parameter name="level" value="info" />\r
717                                                                                                             <parameter name="field1" value="URL for SO Callback Response"/>\r
718                                                                                                             <parameter name='field2' value="`$tmp.so.callbackURL`" />\r
719                                                                                                             <parameter name='field3' value="`$tmp.status`" />\r
720                                                                                                             <parameter name='field4' value="`$tmp.reason`" />\r
721                                                                                                             <parameter name='field5' value="`$tmp.requestID`" />\r
722                                                                                                             <parameter name='field6' value="`$tmp.action`" />\r
723                                                                                                         </record>\r
724                                                                                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
725                                                                                                             <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />\r
726                                                                                                             <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>\r
727                                                                                                             <parameter name="httpMethod" value="POST"/>\r
728                                                                                                             <parameter name="responsePrefix" value="so-callback-activate-response"/>\r
729                                                                                                             <parameter name='contentType' value='application/json' />\r
730                                                                                                             <parameter name='format' value='json' />\r
731                                                                                                             <parameter name='accept' value='*/*' />\r
732                                                                                                             <parameter name="convertResponse" value="true"/>\r
733                                                                                                             <outcome value='failure'>\r
734                                                                                                                 <block>\r
735                                                                                                                     <return status='failure'>\r
736                                                                                                                         <parameter name='ack-final' value='Y'/>\r
737                                                                                                                         <parameter name="error-code" value="500" />\r
738                                                                                                                         <parameter name="error-message" value="Error sending SO Response" />\r
739                                                                                                                     </return>\r
740                                                                                                                 </block>\r
741                                                                                                             </outcome>\r
742                                                                                                             <outcome value='success'>\r
743                                                                                                                 <block>\r
744                                                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
745                                                                                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
746                                                                                                                         <parameter name="level" value="info" />\r
747                                                                                                                         <parameter name="field1" value="SO Response Sent "/>\r
748                                                                                                                     </record>\r
749                                                                                                                 </block>\r
750                                                                                                             </outcome>\r
751                                                                                                         </execute>\r
752                                                                                                     </block>\r
753                                                                                                 </block>\r
754                                                                                             </outcome>\r
755                                                                                             <outcome value='success'>\r
756                                                                                                 <block atomic='true'>\r
757                                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
758                                                                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
759                                                                                                         <parameter name="level" value="info" />\r
760                                                                                                         <parameter name="field1" value="Successfully Patched - cellCU PLMNInfo List"/>\r
761                                                                                                     </record>\r
762                                                                                                 </block>\r
763                                                                                             </outcome>\r
764                                                                                         </execute>\r
765                                                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
766                                                                                             <parameter name="source" value="`$prop.restapi.cps.tbdmt.execute.endpoint`"/>\r
767                                                                                             <parameter name="outputPath" value="tmp.cps.putstatus.nrcellcu.url"/>\r
768                                                                                             <parameter name="target" value="{schemaSet}"/>\r
769                                                                                             <parameter name="replacement" value="`$tmp.schemaset.name`"/>\r
770                                                                                         </execute>\r
771                                                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
772                                                                                             <parameter name="source" value="`$tmp.cps.putstatus.nrcellcu.url`"/>\r
773                                                                                             <parameter name="outputPath" value="tmp.cps.putstatus.nrcellcu.url"/>\r
774                                                                                             <parameter name="target" value="{templateId}"/>\r
775                                                                                             <parameter name="replacement" value="`$prop.tbdmt.template.put-status-nrcellcu`"/>\r
776                                                                                         </execute>\r
777                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
778                                                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
779                                                                                             <parameter name="level" value="info" />\r
780                                                                                             <parameter name="field1" value="URL for CPS TDBMT to put status NRCellCU"/>\r
781                                                                                             <parameter name='field2' value="`$tmp.cps.putstatus.nrcellcu.url`" />\r
782                                                                                         </record>\r
783                                                                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
784                                                                                             <parameter name="restapiUrl" value="`$tmp.cps.putstatus.nrcellcu.url`"/>\r
785                                                                                             <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/cps-templates/cps-put-gnbcucpfunction.json'`" />\r
786                                                                                             <parameter name="httpMethod" value="POST"/>\r
787                                                                                             <parameter name="responsePrefix" value="cps-put-status-nrcellcu-response"/>\r
788                                                                                             <parameter name='contentType' value='application/json' />\r
789                                                                                             <parameter name='format' value='json' />\r
790                                                                                             <parameter name='accept' value='application/json' />\r
791                                                                                             <parameter name="convertResponse" value="true"/>\r
792                                                                                             <outcome value='failure'>\r
793                                                                                                 <block atomic='true'>\r
794                                                                                                     <set>\r
795                                                                                                         <parameter name='error-code' value='500'/>\r
796                                                                                                         <parameter name='error-message' value='Error updating nearRTRIC info in CPS. Aborting RPC executiopn'/>\r
797                                                                                                     </set>\r
798                                                                                                     <return status='failure'>\r
799                                                                                                         <parameter name='ack-final' value='Y'/>\r
800                                                                                                         <parameter name='error-code' value='500'/>\r
801                                                                                                         <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/>\r
802                                                                                                     </return>\r
803                                                                                                     <block atomic='true'>\r
804                                                                                                         <set>\r
805                                                                                                             <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>\r
806                                                                                                             <parameter name="tmp.status" value="`$error-code`"/>\r
807                                                                                                             <parameter name="tmp.reason" value="`$error-message`"/>\r
808                                                                                                             <parameter name="tmp.requestID" value="`$activate-r-a-n-slice-instance-input.common-header.request-id`"/>\r
809                                                                                                             <parameter name="tmp.action" value="`$activate-r-a-n-slice-instance-input.action`"/>\r
810                                                                                                         </set>\r
811                                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
812                                                                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />\r
813                                                                                                             <parameter name="level" value="info" />\r
814                                                                                                             <parameter name="field1" value="URL for SO Callback Response"/>\r
815                                                                                                             <parameter name='field2' value="`$tmp.so.callbackURL`" />\r
816                                                                                                             <parameter name='field3' value="`$tmp.status`" />\r
817                                                                                                             <parameter name='field4' value="`$tmp.reason`" />\r
818                                                                                                             <parameter name='field5' value="`$tmp.requestID`" />\r
819                                                                                                             <parameter name='field6' value="`$tmp.action`" />\r
820                                                                                                         </record>\r
821                                                                                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
822                                                                                                             <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />\r
823                                                                                                             <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>\r
824                                                                                                             <parameter name="httpMethod" value="POST"/>\r
825                                                                                                             <parameter name="responsePrefix" value="so-callback-activate-response"/>\r
826                                                                                                             <parameter name='contentType' value='application/json' />\r
827                                                                                                             <parameter name='format' value='json' />\r
828                                                                                                             <parameter name='accept' value='*/*' />\r
829                                                                                                             <parameter name="convertResponse" value="true"/>\r
830                                                                                                             <outcome value='failure'>\r
831                                                                                                                 <block>\r
832                                                                                                                     <return status='failure'>\r
833                                                                                                                         <parameter name='ack-final' value='Y'/>\r
834                                                                                                                         <parameter name="error-code" value="500" />\r
835                                                                                                                         <parameter name="error-message" value="Error sending SO Response" />\r
836                                                                                                                     </return>\r
837                                                                                                                 </block>\r
838                                                                                                             </outcome>\r
839                                                                                                             <outcome value='success'>\r
840                                                                                                                 <block>\r
841                                                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
842                                                                                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
843                                                                                                                         <parameter name="level" value="info" />\r
844                                                                                                                         <parameter name="field1" value="SO Response Sent "/>\r
845                                                                                                                     </record>\r
846                                                                                                                 </block>\r
847                                                                                                             </outcome>\r
848                                                                                                         </execute>\r
849                                                                                                     </block>\r
850                                                                                                 </block>\r
851                                                                                             </outcome>\r
852                                                                                             <outcome value='success'>\r
853                                                                                                 <block atomic='true'>\r
854                                                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
855                                                                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
856                                                                                                         <parameter name="level" value="info" />\r
857                                                                                                         <parameter name="field1" value="Successfully Updated NRCellCU info in cps"/>\r
858                                                                                                     </record>\r
859                                                                                                 </block>\r
860                                                                                             </outcome>\r
861                                                                                         </execute>\r
862                                                                                     </block>\r
863                                                                                 </outcome>\r
864                                                                             </switch>\r
865                                                                         </block>\r
866                                                                     </for>\r
867                                                                 </block>\r
868                                                             </outcome>\r
869                                                             <outcome value='false'>\r
870                                                                 <block atomic='true'>\r
871                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
872                                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
873                                                                         <parameter name="level" value="info" />\r
874                                                                         <parameter name="field1" value="plmninfolistnssailength in false in CU "/>\r
875                                                                         <parameter name="field2" value="`$tmp.sNssaiListLengthCU`"/>\r
876                                                                     </record>\r
877                                                                 </block>\r
878                                                             </outcome>\r
879                                                         </switch>\r
880                                                     </block>\r
881                                                 </for>\r
882                                             </block>\r
883                                         </outcome>\r
884                                         <outcome value='false'>\r
885                                             <block atomic='true'>\r
886                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
887                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
888                                                     <parameter name="level" value="info" />\r
889                                                     <parameter name="field1" value="CUCP plmninfolistlength in false "/>\r
890                                                     <parameter name="field2" value="`$tmp.pLMNInfoList_length`"/>\r
891                                                 </record>\r
892                                             </block>\r
893                                         </outcome>\r
894                                     </switch>\r
895                                 </block>\r
896                             </for>\r
897                         </block>\r
898                     </for>\r
899                 </block>\r
900                 <block atomic='true'>\r
901                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
902                         <parameter name='outputPath' value='tmp.CUUPList_length' />\r
903                         <parameter name='source' value="`'getNFNSSIRIC-cps-response.[' + $idy +'].GNBCUUPFunction_length'`" />\r
904                     </execute>\r
905                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
906                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
907                         <parameter name="level" value="info" />\r
908                         <parameter name="field1" value="Number of CUUP List Entries "/>\r
909                         <parameter name="field2" value="`$tmp.CUUPList_length`"/>\r
910                         <parameter name="field3" value="for the NearRTRIC"/>\r
911                         <parameter name="field4" value="`$tmp.nearRTRICId`"/>\r
912                     </record>\r
913                     <for index='id-cuup' start='0' end='`$tmp.CUUPList_length`'>\r
914                         <block atomic='true'>\r
915                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
916                                 <parameter name='outputPath' value='tmp.idGNBCUUPFunction' />\r
917                                 <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].GNBCUUPFunction['+ $id-cuup +'].idGNBCUUPFunction'`" />\r
918                             </execute>\r
919                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
920                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
921                                 <parameter name="level" value="info" />\r
922                                 <parameter name="field1" value="idGNBCUUPFunction "/>\r
923                                 <parameter name="field2" value="`$tmp.idGNBCUUPFunction`"/>\r
924                             </record>\r
925                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
926                                 <parameter name='outputPath' value='tmp.pLMNInfoList' />\r
927                                 <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].GNBCUUPFunction['+ $id-cuup +'].attributes.pLMNInfoList_length'`" />\r
928                             </execute>\r
929                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
930                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
931                                 <parameter name="level" value="info" />\r
932                                 <parameter name="field1" value="CUUP plmninfolength "/>\r
933                                 <parameter name="field2" value="`$tmp.pLMNInfoList`"/>\r
934                             </record>\r
935                             <switch test='`$tmp.pLMNInfoList > 0`'>\r
936                                 <outcome value='true'>\r
937                                     <block atomic='true'>\r
938                                         <for index='id-plmn' start='0' end='`$tmp.pLMNInfoList`'>\r
939                                             <block atomic='true'>\r
940                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
941                                                     <parameter name='outputPath' value='tmp.snssaiListup_length' />\r
942                                                     <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].GNBCUUPFunction['+ $id-cuup +'].attributes.pLMNInfoList['+ $id-plmn +'].sNSSAIList_length'`" />\r
943                                                 </execute>\r
944                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
945                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
946                                                     <parameter name="level" value="info" />\r
947                                                     <parameter name="field1" value="CUUP - snssaiList_length"/>\r
948                                                     <parameter name="field2" value="`$tmp.snssaiListup_length`"/>\r
949                                                 </record>\r
950                                                 <switch test='`$tmp.snssaiListup_length > 0`'>\r
951                                                     <outcome value='false'>\r
952                                                         <block atomic='true'>\r
953                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
954                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
955                                                                 <parameter name="level" value="info" />\r
956                                                                 <parameter name="field1" value="plmninfolistnssailength in false "/>\r
957                                                                 <parameter name="field2" value="`$tmp.snssaiListup_length`"/>\r
958                                                             </record>\r
959                                                         </block>\r
960                                                     </outcome>\r
961                                                     <outcome value='true'>\r
962                                                         <block atomic='true'>\r
963                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
964                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
965                                                                 <parameter name="level" value="info" />\r
966                                                                 <parameter name="field1" value="plmninfolistnssailength in true "/>\r
967                                                                 <parameter name="field2" value="`$tmp.snssaiListup_length`"/>\r
968                                                             </record>\r
969                                                             <for index='id-cuupnssai' start='0' end='`$tmp.snssaiListup_length`' >\r
970                                                                 <block atomic='true'>\r
971                                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
972                                                                         <parameter name='outputPath' value='tmp.cpsSNSSAI1' />\r
973                                                                         <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].GNBCUUPFunction['+ $id-cuup +'].attributes.pLMNInfoList['+ $id-plmn +'].sNSSAIList['+ $id-snssai +'].sNssai'`" />\r
974                                                                     </execute>\r
975                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
976                                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
977                                                                         <parameter name="level" value="info" />\r
978                                                                         <parameter name="field1" value="sNSSAI - getNFNSSIRIC-cps-response"/>\r
979                                                                         <parameter name="field2" value="`$tmp.cpsSNSSAI`"/>\r
980                                                                         <parameter name="field3" value="sNSSAI from request"/>\r
981                                                                         <parameter name="field4" value="`$tmp.sNSSAI`"/>\r
982                                                                     </record>\r
983                                                                     <switch test='`$tmp.cpsSNSSAI == $tmp.sNSSAI`'>\r
984                                                                         <outcome value='false'>\r
985                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
986                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
987                                                                                 <parameter name="level" value="info" />\r
988                                                                                 <parameter name="field1" value="sNSSAI doesn't match"/>\r
989                                                                             </record>\r
990                                                                         </outcome>\r
991                                                                         <outcome value='true'>\r
992                                                                             <block atomic='true'>\r
993                                                                                 <switch test='`$prop.ransim-mounted`'>\r
994                                                                                     <outcome value='false'>\r
995                                                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
996                                                                                             <parameter name="source" value="`$prop.restapi.patchPLMNInfoListEntry.ToGNBCUUP`"/>\r
997                                                                                             <parameter name="outputPath" value="tmp.patchPLMNInfoList-CUUP.url"/>\r
998                                                                                             <parameter name="target" value="{idNearRTRIC}"/>\r
999                                                                                             <parameter name="replacement" value="`$tmp.nearRTRICId`"/>\r
1000                                                                                         </execute>\r
1001                                                                                     </outcome>\r
1002                                                                                     <outcome value='true'>\r
1003                                                                                         <block atomic='true'>\r
1004                                                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1005                                                                                                 <parameter name="source" value="`$prop.restapi.patchPLMNInfoListEntry.ToGNBCUUP.ransim-mounted`"/>\r
1006                                                                                                 <parameter name="outputPath" value="tmp.patchPLMNInfoList-CUUP.url"/>\r
1007                                                                                                 <parameter name="target" value="{idNearRTRIC}"/>\r
1008                                                                                                 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>\r
1009                                                                                             </execute>\r
1010                                                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1011                                                                                                 <parameter name="source" value="`$tmp.patchPLMNInfoList-CUUP.url`"/>\r
1012                                                                                                 <parameter name="outputPath" value="tmp.patchPLMNInfoList-CUUP.url"/>\r
1013                                                                                                 <parameter name="target" value="{mountName}"/>\r
1014                                                                                                 <parameter name="replacement" value="`$tmp.idGNBCUUPFunction`"/>\r
1015                                                                                             </execute>\r
1016                                                                                         </block>\r
1017                                                                                     </outcome>\r
1018                                                                                 </switch>\r
1019                                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1020                                                                                     <parameter name="source" value="`$tmp.patchPLMNInfoList-CUUP.url`"/>\r
1021                                                                                     <parameter name="outputPath" value="tmp.patchPLMNInfoList-CUUP.url"/>\r
1022                                                                                     <parameter name="target" value="{idNearRTRIC}"/>\r
1023                                                                                     <parameter name="replacement" value="`$tmp.nearRTRICId`"/>\r
1024                                                                                 </execute>\r
1025                                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1026                                                                                     <parameter name="source" value="`$tmp.patchPLMNInfoList-CUUP.url`"/>\r
1027                                                                                     <parameter name="outputPath" value="tmp.patchPLMNInfoList-CUUP.url"/>\r
1028                                                                                     <parameter name="target" value="{idGNBCUUPFunction}"/>\r
1029                                                                                     <parameter name="replacement" value="`$tmp.idGNBCUUPFunction`"/>\r
1030                                                                                 </execute>\r
1031                                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1032                                                                                     <parameter name="source" value="`$tmp.patchPLMNInfoList-CUUP.url`"/>\r
1033                                                                                     <parameter name="outputPath" value="tmp.patchPLMNInfoList-CUUP.url"/>\r
1034                                                                                     <parameter name="target" value="{mcc}"/>\r
1035                                                                                     <parameter name="replacement" value="`$tmp.mcc`"/>\r
1036                                                                                 </execute>\r
1037                                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1038                                                                                     <parameter name="source" value="`$tmp.patchPLMNInfoList-CUUP.url`"/>\r
1039                                                                                     <parameter name="outputPath" value="tmp.patchPLMNInfoList-CUUP.url"/>\r
1040                                                                                     <parameter name="target" value="{mnc}"/>\r
1041                                                                                     <parameter name="replacement" value="`$tmp.mnc`"/>\r
1042                                                                                 </execute>\r
1043                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1044                                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1045                                                                                     <parameter name="level" value="info" />\r
1046                                                                                     <parameter name="field1" value="patch cellCUUP NSSAI parameters"/>\r
1047                                                                                     <parameter name="field2" value="`$tmp.nearRTRICId`"/>\r
1048                                                                                     <parameter name="field3" value="`$tmp.idGNBCUUPFunction`"/>\r
1049                                                                                     <parameter name="field4" value="`$tmp.mcc`"/>\r
1050                                                                                     <parameter name="field5" value="`$tmp.mnc`"/>\r
1051                                                                                     <parameter name="field6" value="`$tmp.patchPLMNInfoList-CUUP.url`"/>\r
1052                                                                                 </record>\r
1053                                                                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
1054                                                                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-patch-sNSSAI-status.json'`" />\r
1055                                                                                     <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.patchPLMNInfoList-CUUP.url`"/>\r
1056                                                                                     <parameter name="restapiUser" value="`$prop.controller.user`" />\r
1057                                                                                     <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>\r
1058                                                                                     <parameter name="httpMethod" value="PATCH"/>\r
1059                                                                                     <parameter name="responsePrefix" value="activate-gNBCUUP-PLMNInfoList-response"/>\r
1060                                                                                     <parameter name='contentType' value='application/yang.patch+json' />\r
1061                                                                                     <parameter name='accept' value='application/yang.patch-status+json'/>\r
1062                                                                                     <parameter name='format' value='json' />\r
1063                                                                                     <outcome value='failure'>\r
1064                                                                                         <block atomic='true'>\r
1065                                                                                             <return status='failure'>\r
1066                                                                                                 <parameter name='ack-final' value='Y'/>\r
1067                                                                                                 <parameter name='error-code' value='500'/>\r
1068                                                                                                 <parameter name='error-message' value='Error patching CUUP PLMNInfo. Aborting RPC executiopn'/>\r
1069                                                                                             </return>\r
1070                                                                                             <set>\r
1071                                                                                                 <parameter name='error-code' value='500'/>\r
1072                                                                                                 <parameter name='error-message' value='Error patching CUUP PLMNInfoList. Aborting RPC executiopn'/>\r
1073                                                                                             </set>\r
1074                                                                                             <block atomic='true'>\r
1075                                                                                                 <set>\r
1076                                                                                                     <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>\r
1077                                                                                                     <parameter name="tmp.status" value="`$error-code`"/>\r
1078                                                                                                     <parameter name="tmp.reason" value="`$error-message`"/>\r
1079                                                                                                     <parameter name="tmp.requestID" value="`$activate-r-a-n-slice-instance-input.common-header.request-id`"/>\r
1080                                                                                                     <parameter name="tmp.action" value="`$activate-r-a-n-slice-instance-input.action`"/>\r
1081                                                                                                 </set>\r
1082                                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1083                                                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />\r
1084                                                                                                     <parameter name="level" value="info" />\r
1085                                                                                                     <parameter name="field1" value="URL for SO Callback Response"/>\r
1086                                                                                                     <parameter name='field2' value="`$tmp.so.callbackURL`" />\r
1087                                                                                                     <parameter name='field3' value="`$tmp.status`" />\r
1088                                                                                                     <parameter name='field4' value="`$tmp.reason`" />\r
1089                                                                                                     <parameter name='field5' value="`$tmp.requestID`" />\r
1090                                                                                                     <parameter name='field6' value="`$tmp.action`" />\r
1091                                                                                                 </record>\r
1092                                                                                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
1093                                                                                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />\r
1094                                                                                                     <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>\r
1095                                                                                                     <parameter name="httpMethod" value="POST"/>\r
1096                                                                                                     <parameter name="responsePrefix" value="so-callback-activate-response"/>\r
1097                                                                                                     <parameter name='contentType' value='application/json' />\r
1098                                                                                                     <parameter name='format' value='json' />\r
1099                                                                                                     <parameter name='accept' value='*/*' />\r
1100                                                                                                     <parameter name="convertResponse" value="true"/>\r
1101                                                                                                     <outcome value='failure'>\r
1102                                                                                                         <block>\r
1103                                                                                                             <return status='failure'>\r
1104                                                                                                                 <parameter name='ack-final' value='Y'/>\r
1105                                                                                                                 <parameter name="error-code" value="500" />\r
1106                                                                                                                 <parameter name="error-message" value="Error sending SO Response" />\r
1107                                                                                                             </return>\r
1108                                                                                                         </block>\r
1109                                                                                                     </outcome>\r
1110                                                                                                     <outcome value='success'>\r
1111                                                                                                         <block>\r
1112                                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1113                                                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1114                                                                                                                 <parameter name="level" value="info" />\r
1115                                                                                                                 <parameter name="field1" value="SO Response Sent "/>\r
1116                                                                                                             </record>\r
1117                                                                                                         </block>\r
1118                                                                                                     </outcome>\r
1119                                                                                                 </execute>\r
1120                                                                                             </block>\r
1121                                                                                         </block>\r
1122                                                                                     </outcome>\r
1123                                                                                     <outcome value='success'>\r
1124                                                                                         <block atomic='true'>\r
1125                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1126                                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1127                                                                                                 <parameter name="level" value="info" />\r
1128                                                                                                 <parameter name="field1" value="Successfully Patched - gNBCUUP PLMNInfo List"/>\r
1129                                                                                             </record>\r
1130                                                                                         </block>\r
1131                                                                                     </outcome>\r
1132                                                                                 </execute>\r
1133                                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1134                                                                                     <parameter name="source" value="`$prop.restapi.cps.tbdmt.execute.endpoint`"/>\r
1135                                                                                     <parameter name="outputPath" value="tmp.cps.putstatus.cuup.url"/>\r
1136                                                                                     <parameter name="target" value="{schemaSet}"/>\r
1137                                                                                     <parameter name="replacement" value="`$tmp.schemaset.name`"/>\r
1138                                                                                 </execute>\r
1139                                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1140                                                                                     <parameter name="source" value="`$tmp.cps.putstatus.cuup.url`"/>\r
1141                                                                                     <parameter name="outputPath" value="tmp.cps.putstatus.cuup.url"/>\r
1142                                                                                     <parameter name="target" value="{templateId}"/>\r
1143                                                                                     <parameter name="replacement" value="`$prop.tbdmt.template.put-status-cuup`"/>\r
1144                                                                                 </execute>\r
1145                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1146                                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1147                                                                                     <parameter name="level" value="info" />\r
1148                                                                                     <parameter name="field1" value="URL for CPS TDBMT to put status CUUP"/>\r
1149                                                                                     <parameter name='field2' value="`$tmp.cps.putstatus.cuup.url`" />\r
1150                                                                                 </record>\r
1151                                                                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
1152                                                                                     <parameter name="restapiUrl" value="`$tmp.cps.putstatus.cuup.url`"/>\r
1153                                                                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/cps-templates/cps-put-gnbcuupfunction.json'`" />\r
1154                                                                                     <parameter name="httpMethod" value="POST"/>\r
1155                                                                                     <parameter name="responsePrefix" value="cps-put-status-cuup-response"/>\r
1156                                                                                     <parameter name='contentType' value='application/json' />\r
1157                                                                                     <parameter name='format' value='json' />\r
1158                                                                                     <parameter name='accept' value='application/json' />\r
1159                                                                                     <parameter name="convertResponse" value="true"/>\r
1160                                                                                     <outcome value='failure'>\r
1161                                                                                         <block atomic='true'>\r
1162                                                                                             <set>\r
1163                                                                                                 <parameter name='error-code' value='500'/>\r
1164                                                                                                 <parameter name='error-message' value='Error updating nearRTRIC info in CPS. Aborting RPC executiopn'/>\r
1165                                                                                             </set>\r
1166                                                                                             <return status='failure'>\r
1167                                                                                                 <parameter name='ack-final' value='Y'/>\r
1168                                                                                                 <parameter name='error-code' value='500'/>\r
1169                                                                                                 <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/>\r
1170                                                                                             </return>\r
1171                                                                                             <block atomic='true'>\r
1172                                                                                                 <set>\r
1173                                                                                                     <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>\r
1174                                                                                                     <parameter name="tmp.status" value="`$error-code`"/>\r
1175                                                                                                     <parameter name="tmp.reason" value="`$error-message`"/>\r
1176                                                                                                     <parameter name="tmp.requestID" value="`$activate-r-a-n-slice-instance-input.common-header.request-id`"/>\r
1177                                                                                                     <parameter name="tmp.action" value="`$activate-r-a-n-slice-instance-input.action`"/>\r
1178                                                                                                 </set>\r
1179                                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1180                                                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />\r
1181                                                                                                     <parameter name="level" value="info" />\r
1182                                                                                                     <parameter name="field1" value="URL for SO Callback Response"/>\r
1183                                                                                                     <parameter name='field2' value="`$tmp.so.callbackURL`" />\r
1184                                                                                                     <parameter name='field3' value="`$tmp.status`" />\r
1185                                                                                                     <parameter name='field4' value="`$tmp.reason`" />\r
1186                                                                                                     <parameter name='field5' value="`$tmp.requestID`" />\r
1187                                                                                                     <parameter name='field6' value="`$tmp.action`" />\r
1188                                                                                                 </record>\r
1189                                                                                                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
1190                                                                                                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />\r
1191                                                                                                     <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>\r
1192                                                                                                     <parameter name="httpMethod" value="POST"/>\r
1193                                                                                                     <parameter name="responsePrefix" value="so-callback-activate-response"/>\r
1194                                                                                                     <parameter name='contentType' value='application/json' />\r
1195                                                                                                     <parameter name='format' value='json' />\r
1196                                                                                                     <parameter name='accept' value='*/*' />\r
1197                                                                                                     <parameter name="convertResponse" value="true"/>\r
1198                                                                                                     <outcome value='failure'>\r
1199                                                                                                         <block>\r
1200                                                                                                             <return status='failure'>\r
1201                                                                                                                 <parameter name='ack-final' value='Y'/>\r
1202                                                                                                                 <parameter name="error-code" value="500" />\r
1203                                                                                                                 <parameter name="error-message" value="Error sending SO Response" />\r
1204                                                                                                             </return>\r
1205                                                                                                         </block>\r
1206                                                                                                     </outcome>\r
1207                                                                                                     <outcome value='success'>\r
1208                                                                                                         <block>\r
1209                                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1210                                                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1211                                                                                                                 <parameter name="level" value="info" />\r
1212                                                                                                                 <parameter name="field1" value="SO Response Sent "/>\r
1213                                                                                                             </record>\r
1214                                                                                                         </block>\r
1215                                                                                                     </outcome>\r
1216                                                                                                 </execute>\r
1217                                                                                             </block>\r
1218                                                                                         </block>\r
1219                                                                                     </outcome>\r
1220                                                                                     <outcome value='success'>\r
1221                                                                                         <block atomic='true'>\r
1222                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1223                                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1224                                                                                                 <parameter name="level" value="info" />\r
1225                                                                                                 <parameter name="field1" value="Successfully Updated CUUP info in cps"/>\r
1226                                                                                             </record>\r
1227                                                                                         </block>\r
1228                                                                                     </outcome>\r
1229                                                                                 </execute>\r
1230                                                                             </block>\r
1231                                                                         </outcome>\r
1232                                                                     </switch>\r
1233                                                                 </block>\r
1234                                                             </for>\r
1235                                                         </block>\r
1236                                                     </outcome>\r
1237                                                 </switch>\r
1238                                             </block>\r
1239                                         </for>\r
1240                                     </block>\r
1241                                 </outcome>\r
1242                                 <outcome value='false'>\r
1243                                     <block atomic='true'>\r
1244                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1245                                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1246                                             <parameter name="level" value="info" />\r
1247                                             <parameter name="field1" value="CUUP plmninfolistlength in false "/>\r
1248                                             <parameter name="field2" value="`$tmp.pLMNInfoList`"/>\r
1249                                         </record>\r
1250                                     </block>\r
1251                                 </outcome>\r
1252                             </switch>\r
1253                         </block>\r
1254                     </for>\r
1255                 </block>\r
1256                 <block atomic='true'>\r
1257                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
1258                         <parameter name='outputPath' value='tmp.DUList_length' />\r
1259                         <parameter name='source' value="`'getNFNSSIRIC-cps-response.[' + $idy +'].GNBDUFunction_length'`" />\r
1260                     </execute>\r
1261                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1262                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1263                         <parameter name="level" value="info" />\r
1264                         <parameter name="field1" value="Number of DU List Entries "/>\r
1265                         <parameter name="field2" value="`$tmp.DUList_length`"/>\r
1266                         <parameter name="field3" value="for the NearRTRIC"/>\r
1267                         <parameter name="field4" value="`$tmp.nearRTRICId`"/>\r
1268                     </record>\r
1269                     <for index='id-du' start='0' end='`$tmp.DUList_length`'>\r
1270                         <block atomic='true'>\r
1271                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
1272                                 <parameter name='outputPath' value='tmp.GNBDUId' />\r
1273                                 <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].GNBDUFunction['+ $id-du +'].idGNBDUFunction'`" />\r
1274                             </execute>\r
1275                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1276                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1277                                 <parameter name="level" value="info" />\r
1278                                 <parameter name="field1" value="GNBDUId "/>\r
1279                                 <parameter name="field2" value="`$tmp.GNBDUId`"/>\r
1280                             </record>\r
1281                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
1282                                 <parameter name='outputPath' value='tmp.cellDUList_length' />\r
1283                                 <parameter name='source' value="`'getNFNSSIRIC-cps-response.[' + $idy +'].GNBDUFunction[' + $id-du +'].NRCellDU_length'`" />\r
1284                             </execute>\r
1285                             <for index='id-celldu' start='0' end='`$tmp.cellDUList_length`' >\r
1286                                 <block atomic='true'>\r
1287                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
1288                                         <parameter name='outputPath' value='tmp.DUpLMNInfoList_length' />\r
1289                                         <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].GNBDUFunction['+ $id-du +'].NRCellDU['+ $id-celldu +'].attributes.pLMNInfoList_length'`" />\r
1290                                     </execute>\r
1291                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1292                                         <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1293                                         <parameter name="level" value="info" />\r
1294                                         <parameter name="field1" value="plmninfolengthcelldu "/>\r
1295                                         <parameter name="field2" value="`$tmp.DUpLMNInfoList_length`"/>\r
1296                                     </record>\r
1297                                     <switch test='`$tmp.DUpLMNInfoList_length > 0`'>\r
1298                                         <outcome value='true'>\r
1299                                             <block atomic='true'>\r
1300                                                 <for index='id-duplmn' start='0' end='`$tmp.DUpLMNInfoList_length`' >\r
1301                                                     <block atomic='true'>\r
1302                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
1303                                                             <parameter name='outputPath' value='tmp.sNssaiListLengthDU' />\r
1304                                                             <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].GNBDUFunction['+ $id-du +'].NRCellDU['+ $id-celldu +'].attributes.pLMNInfoList['+ $id-duplmn +'].sNSSAIList_length'`" />\r
1305                                                         </execute>\r
1306                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1307                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1308                                                             <parameter name="level" value="info" />\r
1309                                                             <parameter name="field1" value="DU_plmninfolength_nssailength "/>\r
1310                                                             <parameter name="field2" value="`$tmp.sNssaiListLengthDU`"/>\r
1311                                                         </record>\r
1312                                                         <for index='id-dusnssai' start='0' end='`$tmp.sNssaiListLengthDU`'>\r
1313                                                             <block atomic='true'>\r
1314                                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
1315                                                                     <parameter name='outputPath' value='tmp.cpsSNSSAI-DU' />\r
1316                                                                     <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].GNBDUFunction['+ $id-du +'].NRCellDU['+ $id-celldu +'].attributes.pLMNInfoList['+ $id-duplmn +'].sNSSAIList['+ $id-dusnssai +'].sNssai'`" />\r
1317                                                                 </execute>\r
1318                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1319                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1320                                                                     <parameter name="level" value="info" />\r
1321                                                                     <parameter name="field1" value="sNSSAI - getNFNSSIRIC-cps-response"/>\r
1322                                                                     <parameter name="field2" value="`$tmp.cpsSNSSAI-DU`"/>\r
1323                                                                     <parameter name="field3" value="sNSSAI from request"/>\r
1324                                                                     <parameter name="field4" value="`$tmp.sNSSAI`"/>\r
1325                                                                 </record>\r
1326                                                                 <switch test='`$tmp.cpsSNSSAI-DU == $tmp.sNSSAI`'>\r
1327                                                                     <outcome value='true'>\r
1328                                                                         <block atomic='true'>\r
1329                                                                             <switch test='`$prop.ransim-mounted`'>\r
1330                                                                                 <outcome value='false'>\r
1331                                                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1332                                                                                         <parameter name="source" value="`$prop.restapi.patchPLMNInfoListEntry.ToNRCellDU`"/>\r
1333                                                                                         <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry-cellDU.url"/>\r
1334                                                                                         <parameter name="target" value="{idNearRTRIC}"/>\r
1335                                                                                         <parameter name="replacement" value="`$tmp.nearRTRICId`"/>\r
1336                                                                                     </execute>\r
1337                                                                                 </outcome>\r
1338                                                                                 <outcome value='true'>\r
1339                                                                                     <block atomic='true'>\r
1340                                                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1341                                                                                             <parameter name="source" value="`$prop.restapi.patchPLMNInfoListEntry.ToNRCellDU.ransim-mounted`"/>\r
1342                                                                                             <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry-cellDU.url"/>\r
1343                                                                                             <parameter name="target" value="{idNearRTRIC}"/>\r
1344                                                                                             <parameter name="replacement" value="`$tmp.nearRTRICId`"/>\r
1345                                                                                         </execute>\r
1346                                                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1347                                                                                             <parameter name="source" value="`$tmp.patchPLMNInfoListEntry-cellDU.url`"/>\r
1348                                                                                             <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry-cellDU.url"/>\r
1349                                                                                             <parameter name="target" value="{mountName}"/>\r
1350                                                                                             <parameter name="replacement" value="`$tmp.GNBDUId`"/>\r
1351                                                                                         </execute>\r
1352                                                                                     </block>\r
1353                                                                                 </outcome>\r
1354                                                                             </switch>\r
1355                                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>\r
1356                                                                                 <parameter name='outputPath' value='tmp.NRCellDUID' />\r
1357                                                                                 <parameter name='source' value="`'getNFNSSIRIC-cps-response.['+ $idy +'].GNBDUFunction['+ $id-du +'].NRCellDU['+ $id-celldu +'].idNRCellDU'`" />\r
1358                                                                             </execute>\r
1359                                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1360                                                                                 <parameter name="source" value="`$tmp.patchPLMNInfoListEntry-cellDU.url`"/>\r
1361                                                                                 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry-cellDU.url"/>\r
1362                                                                                 <parameter name="target" value="{idGNBDUFunction}"/>\r
1363                                                                                 <parameter name="replacement" value="`$tmp.GNBDUId`"/>\r
1364                                                                             </execute>\r
1365                                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1366                                                                                 <parameter name="source" value="`$tmp.patchPLMNInfoListEntry-cellDU.url`"/>\r
1367                                                                                 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry-cellDU.url"/>\r
1368                                                                                 <parameter name="target" value="{idNRCellDU}"/>\r
1369                                                                                 <parameter name="replacement" value="`$tmp.NRCellDUID`"/>\r
1370                                                                             </execute>\r
1371                                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1372                                                                                 <parameter name="source" value="`$tmp.patchPLMNInfoListEntry-cellDU.url`"/>\r
1373                                                                                 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry-cellDU.url"/>\r
1374                                                                                 <parameter name="target" value="{mcc}"/>\r
1375                                                                                 <parameter name="replacement" value="`$tmp.mcc`"/>\r
1376                                                                             </execute>\r
1377                                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1378                                                                                 <parameter name="source" value="`$tmp.patchPLMNInfoListEntry-cellDU.url`"/>\r
1379                                                                                 <parameter name="outputPath" value="tmp.patchPLMNInfoListEntry-cellDU.url"/>\r
1380                                                                                 <parameter name="target" value="{mnc}"/>\r
1381                                                                                 <parameter name="replacement" value="`$tmp.mnc`"/>\r
1382                                                                             </execute>\r
1383                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1384                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1385                                                                                 <parameter name="level" value="info" />\r
1386                                                                                 <parameter name="field1" value="patch cellDU NSSAI parameters"/>\r
1387                                                                                 <parameter name="field2" value="`$tmp.nearRTRICId`"/>\r
1388                                                                                 <parameter name="field3" value="`$tmp.GNBDUId`"/>\r
1389                                                                                 <parameter name="field4" value="`$tmp.NRCellDUID`"/>\r
1390                                                                                 <parameter name="field5" value="`$tmp.mcc`"/>\r
1391                                                                                 <parameter name="field6" value="`$tmp.mnc`"/>\r
1392                                                                                 <parameter name="field7" value="`$tmp.patchPLMNInfoListEntry-cellDU.url`"/>\r
1393                                                                             </record>\r
1394                                                                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
1395                                                                                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-patch-sNSSAI-status.json'`" />\r
1396                                                                                 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.patchPLMNInfoListEntry-cellDU.url`"/>\r
1397                                                                                 <parameter name="restapiUser" value="`$prop.controller.user`" />\r
1398                                                                                 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>\r
1399                                                                                 <parameter name="httpMethod" value="PATCH"/>\r
1400                                                                                 <parameter name="responsePrefix" value="activate-cellDU-PLMNInfoList-response"/>\r
1401                                                                                 <parameter name='contentType' value='application/yang.patch+json' />\r
1402                                                                                 <parameter name='accept' value='application/yang.patch-status+json'/>\r
1403                                                                                 <parameter name='format' value='json' />\r
1404                                                                                 <outcome value='failure'>\r
1405                                                                                     <block atomic='true'>\r
1406                                                                                         <block atomic='true'>\r
1407                                                                                             <set>\r
1408                                                                                                 <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>\r
1409                                                                                                 <parameter name="tmp.status" value="`$error-code`"/>\r
1410                                                                                                 <parameter name="tmp.reason" value="`$error-message`"/>\r
1411                                                                                                 <parameter name="tmp.requestID" value="`$activate-r-a-n-slice-instance-input.common-header.request-id`"/>\r
1412                                                                                                 <parameter name="tmp.action" value="`$activate-r-a-n-slice-instance-input.action`"/>\r
1413                                                                                             </set>\r
1414                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1415                                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />\r
1416                                                                                                 <parameter name="level" value="info" />\r
1417                                                                                                 <parameter name="field1" value="URL for SO Callback Response"/>\r
1418                                                                                                 <parameter name='field2' value="`$tmp.so.callbackURL`" />\r
1419                                                                                                 <parameter name='field3' value="`$tmp.status`" />\r
1420                                                                                                 <parameter name='field4' value="`$tmp.reason`" />\r
1421                                                                                                 <parameter name='field5' value="`$tmp.requestID`" />\r
1422                                                                                                 <parameter name='field6' value="`$tmp.action`" />\r
1423                                                                                             </record>\r
1424                                                                                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
1425                                                                                                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />\r
1426                                                                                                 <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>\r
1427                                                                                                 <parameter name="httpMethod" value="POST"/>\r
1428                                                                                                 <parameter name="responsePrefix" value="so-callback-activate-response"/>\r
1429                                                                                                 <parameter name='contentType' value='application/json' />\r
1430                                                                                                 <parameter name='format' value='json' />\r
1431                                                                                                 <parameter name='accept' value='*/*' />\r
1432                                                                                                 <parameter name="convertResponse" value="true"/>\r
1433                                                                                                 <outcome value='failure'>\r
1434                                                                                                     <block>\r
1435                                                                                                         <return status='failure'>\r
1436                                                                                                             <parameter name='ack-final' value='Y'/>\r
1437                                                                                                             <parameter name="error-code" value="500" />\r
1438                                                                                                             <parameter name="error-message" value="Error sending SO Response" />\r
1439                                                                                                         </return>\r
1440                                                                                                     </block>\r
1441                                                                                                 </outcome>\r
1442                                                                                                 <outcome value='success'>\r
1443                                                                                                     <block>\r
1444                                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1445                                                                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1446                                                                                                             <parameter name="level" value="info" />\r
1447                                                                                                             <parameter name="field1" value="SO Response Sent "/>\r
1448                                                                                                         </record>\r
1449                                                                                                     </block>\r
1450                                                                                                 </outcome>\r
1451                                                                                             </execute>\r
1452                                                                                         </block>\r
1453                                                                                         <set>\r
1454                                                                                             <parameter name='error-code' value='500'/>\r
1455                                                                                             <parameter name='error-message' value='Error patching cellDU PLMNInfoList. Aborting RPC executiopn'/>\r
1456                                                                                         </set>\r
1457                                                                                         <return status='failure'>\r
1458                                                                                             <parameter name='ack-final' value='Y'/>\r
1459                                                                                             <parameter name='error-code' value='500'/>\r
1460                                                                                             <parameter name='error-message' value='Error updating NECellDU - PLMNInfo. Aborting RPC executiopn'/>\r
1461                                                                                         </return>\r
1462                                                                                     </block>\r
1463                                                                                 </outcome>\r
1464                                                                                 <outcome value='success'>\r
1465                                                                                     <block atomic='true'>\r
1466                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1467                                                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1468                                                                                             <parameter name="level" value="info" />\r
1469                                                                                             <parameter name="field1" value="Successfully Patched - cellDU PLMNInfo List"/>\r
1470                                                                                         </record>\r
1471                                                                                     </block>\r
1472                                                                                 </outcome>\r
1473                                                                             </execute>\r
1474                                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1475                                                                                 <parameter name="source" value="`$prop.restapi.cps.tbdmt.execute.endpoint`"/>\r
1476                                                                                 <parameter name="outputPath" value="tmp.cps.putstatus.nrcelldu.url"/>\r
1477                                                                                 <parameter name="target" value="{schemaSet}"/>\r
1478                                                                                 <parameter name="replacement" value="`$tmp.schemaset.name`"/>\r
1479                                                                             </execute>\r
1480                                                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1481                                                                                 <parameter name="source" value="`$tmp.cps.putstatus.nrcelldu.url`"/>\r
1482                                                                                 <parameter name="outputPath" value="tmp.cps.putstatus.nrcelldu.url"/>\r
1483                                                                                 <parameter name="target" value="{templateId}"/>\r
1484                                                                                 <parameter name="replacement" value="`$prop.tbdmt.template.put-status-nrcelldu`"/>\r
1485                                                                             </execute>\r
1486                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1487                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1488                                                                                 <parameter name="level" value="info" />\r
1489                                                                                 <parameter name="field1" value="URL for CPS TDBMT to put status NRCellDU"/>\r
1490                                                                                 <parameter name='field2' value="`$tmp.cps.putstatus.nrcelldu.url`" />\r
1491                                                                             </record>\r
1492                                                                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
1493                                                                                 <parameter name="restapiUrl" value="`$tmp.cps.putstatus.nrcelldu.url`"/>\r
1494                                                                                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/cps-templates/cps-put-gnbdufunction.json'`" />\r
1495                                                                                 <parameter name="httpMethod" value="POST"/>\r
1496                                                                                 <parameter name="responsePrefix" value="cps-put-status-nrcelldu-response"/>\r
1497                                                                                 <parameter name='contentType' value='application/json' />\r
1498                                                                                 <parameter name='format' value='json' />\r
1499                                                                                 <parameter name='accept' value='application/json' />\r
1500                                                                                 <parameter name="convertResponse" value="true"/>\r
1501                                                                                 <outcome value='failure'>\r
1502                                                                                     <block atomic='true'>\r
1503                                                                                         <block atomic='true'>\r
1504                                                                                             <set>\r
1505                                                                                                 <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>\r
1506                                                                                                 <parameter name="tmp.status" value="`$error-code`"/>\r
1507                                                                                                 <parameter name="tmp.reason" value="`$error-message`"/>\r
1508                                                                                                 <parameter name="tmp.requestID" value="`$activate-r-a-n-slice-instance-input.common-header.request-id`"/>\r
1509                                                                                                 <parameter name="tmp.action" value="`$activate-r-a-n-slice-instance-input.action`"/>\r
1510                                                                                             </set>\r
1511                                                                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1512                                                                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />\r
1513                                                                                                 <parameter name="level" value="info" />\r
1514                                                                                                 <parameter name="field1" value="URL for SO Callback Response"/>\r
1515                                                                                                 <parameter name='field2' value="`$tmp.so.callbackURL`" />\r
1516                                                                                                 <parameter name='field3' value="`$tmp.status`" />\r
1517                                                                                                 <parameter name='field4' value="`$tmp.reason`" />\r
1518                                                                                                 <parameter name='field5' value="`$tmp.requestID`" />\r
1519                                                                                                 <parameter name='field6' value="`$tmp.action`" />\r
1520                                                                                             </record>\r
1521                                                                                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
1522                                                                                                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />\r
1523                                                                                                 <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>\r
1524                                                                                                 <parameter name="httpMethod" value="POST"/>\r
1525                                                                                                 <parameter name="responsePrefix" value="so-callback-activate-response"/>\r
1526                                                                                                 <parameter name='contentType' value='application/json' />\r
1527                                                                                                 <parameter name='format' value='json' />\r
1528                                                                                                 <parameter name='accept' value='*/*' />\r
1529                                                                                                 <parameter name="convertResponse" value="true"/>\r
1530                                                                                                 <outcome value='failure'>\r
1531                                                                                                     <block>\r
1532                                                                                                         <return status='failure'>\r
1533                                                                                                             <parameter name='ack-final' value='Y'/>\r
1534                                                                                                             <parameter name="error-code" value="500" />\r
1535                                                                                                             <parameter name="error-message" value="Error sending SO Response" />\r
1536                                                                                                         </return>\r
1537                                                                                                     </block>\r
1538                                                                                                 </outcome>\r
1539                                                                                                 <outcome value='success'>\r
1540                                                                                                     <block>\r
1541                                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1542                                                                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1543                                                                                                             <parameter name="level" value="info" />\r
1544                                                                                                             <parameter name="field1" value="SO Response Sent "/>\r
1545                                                                                                         </record>\r
1546                                                                                                     </block>\r
1547                                                                                                 </outcome>\r
1548                                                                                             </execute>\r
1549                                                                                         </block>\r
1550                                                                                         <set>\r
1551                                                                                             <parameter name='error-code' value='500'/>\r
1552                                                                                             <parameter name='error-message' value='Error updating nearRTRIC info in CPS. Aborting RPC executiopn'/>\r
1553                                                                                         </set>\r
1554                                                                                         <return status='failure'>\r
1555                                                                                             <parameter name='ack-final' value='Y'/>\r
1556                                                                                             <parameter name='error-code' value='500'/>\r
1557                                                                                             <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/>\r
1558                                                                                         </return>\r
1559                                                                                     </block>\r
1560                                                                                 </outcome>\r
1561                                                                                 <outcome value='success'>\r
1562                                                                                     <block atomic='true'>\r
1563                                                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1564                                                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1565                                                                                             <parameter name="level" value="info" />\r
1566                                                                                             <parameter name="field1" value="Successfully Updated NRCellDU info in cps"/>\r
1567                                                                                         </record>\r
1568                                                                                     </block>\r
1569                                                                                 </outcome>\r
1570                                                                             </execute>\r
1571                                                                         </block>\r
1572                                                                     </outcome>\r
1573                                                                 </switch>\r
1574                                                             </block>\r
1575                                                         </for>\r
1576                                                     </block>\r
1577                                                 </for>\r
1578                                             </block>\r
1579                                         </outcome>\r
1580                                         <outcome value='false'>\r
1581                                             <block atomic='true'>\r
1582                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1583                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1584                                                     <parameter name="level" value="info" />\r
1585                                                     <parameter name="field1" value="DU plmninfolistlength in false "/>\r
1586                                                     <parameter name="field2" value="`$tmp.DUpLMNInfoList_length`"/>\r
1587                                                 </record>\r
1588                                             </block>\r
1589                                         </outcome>\r
1590                                     </switch>\r
1591                                 </block>\r
1592                             </for>\r
1593                         </block>\r
1594                     </for>\r
1595                 </block>\r
1596             </for>\r
1597             <block atomic='true'>\r
1598                 <set>\r
1599                     <parameter name="tmp.status" value="success"/>\r
1600                     <parameter name="tmp.reason" value="`$error-message`"/>\r
1601                     <parameter name="tmp.requestID" value="`$activate-r-a-n-slice-instance-input.common-header.request-id `"/>\r
1602                     <parameter name="tmp.action" value="`$activate-r-a-n-slice-instance-input.action`"/>\r
1603                 </set>\r
1604                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
1605                     <parameter name="source" value="`$prop.restapi.so.callbackURL`"/>\r
1606                     <parameter name="outputPath" value="tmp.so.callbackURL"/>\r
1607                     <parameter name="target" value="{requestId}"/>\r
1608                     <parameter name="replacement" value="`$tmp.requestID`"/>\r
1609                 </execute>\r
1610                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1611                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />\r
1612                     <parameter name="level" value="info" />\r
1613                     <parameter name="field1" value="URL for SO Callback Response"/>\r
1614                     <parameter name='field2' value="`$payloadJson.input.callbackURL`" />\r
1615                     <parameter name='field3' value="`$tmp.status`" />\r
1616                     <parameter name='field4' value="`$tmp.reason`" />\r
1617                     <parameter name='field5' value="`$tmp.requestID`" />\r
1618                     <parameter name='field6' value="`$tmp.action`" />\r
1619                 </record>\r
1620                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
1621                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />\r
1622                     <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>\r
1623                     <parameter name="httpMethod" value="POST"/>\r
1624                     <parameter name="responsePrefix" value="so-callback-activate-response"/>\r
1625                     <parameter name='contentType' value='application/json' />\r
1626                     <parameter name='format' value='json' />\r
1627                     <parameter name='accept' value='*/*' />\r
1628                     <parameter name="restapiUser" value="`$prop.restapi.so.user`" />\r
1629                     <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>\r
1630                     <outcome value='failure'>\r
1631                         <block>\r
1632                             <set>\r
1633                                 <parameter name='error-code' value='500'/>\r
1634                                 <parameter name='error-message' value='Error sending SO response. Aborting RPC executiopn'/>\r
1635                             </set>\r
1636                             <return status='failure'>\r
1637                                 <parameter name='ack-final' value='Y'/>\r
1638                                 <parameter name="error-code" value="500" />\r
1639                                 <parameter name="error-message" value="Error sending SO Response" />\r
1640                             </return>\r
1641                         </block>\r
1642                     </outcome>\r
1643                     <outcome value='success'>\r
1644                         <block>\r
1645                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
1646                                 <parameter name="file" value="/opt/opendaylight/current/data/log/activateRANSlice.log" />\r
1647                                 <parameter name="level" value="info" />\r
1648                                 <parameter name="field1" value="SO Response Sent "/>\r
1649                             </record>\r
1650                         </block>\r
1651                     </outcome>\r
1652                 </execute>\r
1653             </block>\r
1654         </block>\r
1655     </method>\r
1656 </service-logic>