RAN Slice DG - Bug fixes
[ccsdk/distribution.git] / platform-logic / ran-slice-api / src / main / xml / ran-slice-api_instantiateRANSliceReconfigure.xml
1 <service-logic
2     xmlns='http://www.onap.org/sdnc/svclogic'
3     xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='ran-slice-api' version='${project.version}'>
4     <method rpc='instantiateRANSliceReconfigure' mode='sync'>
5         <block atomic='true'>
6             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
7                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
8                 <parameter name="level" value="info" />
9                 <parameter name="field1" value="Reached instantiateRANSliceReconfigure "/>
10             </record>
11             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
12                 <parameter name='source' value='`$instantiate-r-a-n-slice-input.payload`' />
13                 <parameter name='target' value='dLThptPerSlice' />
14                 <outcome value='true'>
15                     <block atomic="true">
16                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
17                             <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
18                             <parameter name="level" value="info" />
19                             <parameter name="field1" value="PAYLOAD contains dLThptPerSlice...Closed loop "/>
20                         </record>
21                         <block atomic="true">
22                             <set>
23                                 <parameter name='tmp.payload.numberUpdates' value='`$payloadJson.input.additionalproperties.resourceConfig.data_length`'/>
24                                 <parameter name="tmp.sliceProfileId" value="`$payloadJson.input.sliceProfile.sliceProfileId`"/>
25                                 <parameter name='tmp.payload.sNSSAI' value='`$payloadJson.input.sliceProfile.sNSSAI`'/>
26                             </set>
27                             <for index='id1' start='0' end="`$tmp.payload.numberUpdates`" >
28                                 <set>
29                                     <parameter name="tmp.dLThptPerSlice" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id1].dLThptPerSlice`"/>
30                                     <parameter name="tmp.uLThptPerSlice" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id1].uLThptPerSlice`"/>
31                                     <parameter name="tmp.nearRTRICId" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id1].nearRTRICId`"/>
32                                 </set>
33                                 <block atomic='true'>
34                                     <switch test='`$prop.ransim-mounted`'>
35                                         <outcome value='false'>
36                                             <block atomic='true'>
37                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
38                                                     <parameter name="source" value="`$prop.restapi.addSliceProfile.ToNearRTRIC`"/>
39                                                     <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/>
40                                                     <parameter name="target" value="{idNearRTRIC}"/>
41                                                     <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
42                                                 </execute>
43                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
44                                                     <parameter name="source" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
45                                                     <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/>
46                                                     <parameter name="target" value="{sliceProfileId}"/>
47                                                     <parameter name="replacement" value="`$tmp.sliceProfileId`"/>
48                                                 </execute>
49                                             </block>
50                                         </outcome>
51                                         <outcome value='true'>
52                                             <block atomic='true'>
53                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
54                                                     <parameter name="source" value="`$prop.restapi.addSliceProfile.ToNearRTRIC.ransim-mounted`"/>
55                                                     <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/>
56                                                     <parameter name="target" value="{idNearRTRIC}"/>
57                                                     <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
58                                                 </execute>
59                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
60                                                     <parameter name="source" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
61                                                     <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/>
62                                                     <parameter name="target" value="{sliceProfileId}"/>
63                                                     <parameter name="replacement" value="`$tmp.sliceProfileId`"/>
64                                                 </execute>
65                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
66                                                     <parameter name="source" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
67                                                     <parameter name="outputPath" value="tmp.restapi.addSliceProfile.ToNearRTRIC.url"/>
68                                                     <parameter name="target" value="{mountName}"/>
69                                                     <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
70                                                 </execute>
71                                             </block>
72                                         </outcome>
73                                     </switch>
74                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
75                                         <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
76                                         <parameter name="level" value="info" />
77                                         <parameter name="field1" value="Patch SliceProfile ToNearRTRIC url for closed loop:"/>
78                                         <parameter name="field2" value="`$tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
79                                     </record>
80                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
81                                         <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
82                                         <parameter name="level" value="info" />
83                                         <parameter name="field1" value="Setting variables for PATCH SliceProfile ToNearRTRIC - closed loop"/>
84                                         <parameter name="field2" value="`$prop.controller.url + $tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
85                                         <parameter name="field3" value="`$tmp.dLThptPerSlice`"/>
86                                         <parameter name="field4" value="`$tmp.uLThptPerSlice`"/>
87                                         <parameter name="field5" value="`$tmp.nearRTRICId`"/>
88                                         <parameter name="field6" value="`$tmp.sliceProfileId`"/>
89                                     </record>
90                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
91                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-closed-loop-nearRTRIC-patch.json'`" />
92                                         <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.restapi.addSliceProfile.ToNearRTRIC.url`"/>
93                                         <parameter name="restapiUser" value="`$prop.controller.user`" />
94                                         <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
95                                         <parameter name="httpMethod" value="PATCH"/>
96                                         <parameter name="responsePrefix" value="nearRTRIC-slice-patch-response"/>
97                                         <parameter name='contentType' value='application/yang.patch+json' />
98                                         <parameter name='format' value='json' />
99                                         <parameter name='accept' value='application/yang.patch-status+json' />
100                                         <outcome value='failure'>
101                                             <block>
102                                                 <set>
103                                                     <parameter name='error-code' value='500'/>
104                                                     <parameter name='error-message' value='Error Patching slice profile parms for close loop. Exiting close loop operation'/>
105                                                 </set>
106                                                 <return status='failure'>
107                                                     <parameter name='ack-final' value='Y'/>
108                                                     <parameter name='error-code' value='500'/>
109                                                     <parameter name='error-message' value='Error Patching slice profile parms for close loop. Exiting close loop operation'/>
110                                                 </return>
111                                                 <block atomic='true'>
112                                                     <set>
113                                                         <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
114                                                         <parameter name="tmp.status" value="`$error-code`"/>
115                                                         <parameter name="tmp.reason" value="`$error-message`"/>
116                                                         <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
117                                                         <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
118                                                     </set>
119                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
120                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
121                                                         <parameter name="level" value="info" />
122                                                         <parameter name="field1" value="URL for SO Callback Response"/>
123                                                         <parameter name='field2' value="`$tmp.so.callbackURL`" />
124                                                         <parameter name='field3' value="`$tmp.status`" />
125                                                         <parameter name='field4' value="`$tmp.reason`" />
126                                                         <parameter name='field5' value="`$tmp.requestID`" />
127                                                         <parameter name='field6' value="`$tmp.action`" />
128                                                         <parameter name='field7' value="`$tmp.CUCPList`" />
129                                                         <parameter name='field8' value="`$tmp.CUUPList`" />
130                                                         <parameter name='field9' value="`$tmp.DUList`" />
131                                                     </record>
132                                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
133                                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
134                                                         <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
135                                                         <parameter name="httpMethod" value="POST"/>
136                                                         <parameter name="responsePrefix" value="so-callback-response"/>
137                                                         <parameter name='contentType' value='application/json' />
138                                                         <parameter name='format' value='json' />
139                                                         <parameter name='accept' value='application/json' />
140                                                         <outcome value='failure'>
141                                                             <block>
142                                                                 <return status='failure'>
143                                                                     <parameter name='ack-final' value='Y'/>
144                                                                     <parameter name="error-code" value="500" />
145                                                                     <parameter name="error-message" value="Error sending SO Response" />
146                                                                 </return>
147                                                             </block>
148                                                         </outcome>
149                                                         <outcome value='success'>
150                                                             <block>
151                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
152                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
153                                                                     <parameter name="level" value="info" />
154                                                                     <parameter name="field1" value="SO Response Sent "/>
155                                                                 </record>
156                                                             </block>
157                                                         </outcome>
158                                                     </execute>
159                                                 </block>
160                                             </block>
161                                         </outcome>
162                                         <outcome value='success'>
163                                             <block>
164                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
165                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
166                                                     <parameter name="level" value="info" />
167                                                     <parameter name="field1" value="Successfully PATCHED NearRTRIC for close loop operation"/>
168                                                 </record>
169                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
170                                                     <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-closedloop-nearRTRIC-context.log' />
171                                                 </execute>
172                                             </block>
173                                         </outcome>
174                                     </execute>
175                                 </block>
176                                 <block atomic='true'>
177                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
178                                         <parameter name="source" value="`$prop.restapi.configdb.getplmn`"/>
179                                         <parameter name="outputPath" value="tmp.configdb.getPLMNId.url"/>
180                                         <parameter name="target" value="{sliceProfileId}"/>
181                                         <parameter name="replacement" value="`$tmp.sliceProfileId`"/>
182                                     </execute>
183                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
184                                         <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
185                                         <parameter name="level" value="info" />
186                                         <parameter name="field1" value="Get PLMN from SliceProfileId URL: "/>
187                                         <parameter name="field2" value="`$tmp.configdb.getPLMNId.url`"/>
188                                     </record>
189                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
190                                         <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getPLMNId.url`"/>
191                                         <parameter name="httpMethod" value="GET"/>
192                                         <parameter name="responsePrefix" value="getPLMN-CL-configdb-response"/>
193                                         <parameter name='contentType' value='application/json' />
194                                         <parameter name='format' value='json' />
195                                         <parameter name='accept' value='application/json' />
196                                         <parameter name="convertResponse" value="true"/>
197                                         <outcome value='success'>
198                                             <block atomic='true'>
199                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
200                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
201                                                     <parameter name="level" value="info" />
202                                                     <parameter name="field1" value="Successfully Obtained PLMNId info from ConfigDB"/>
203                                                     <parameter name="field2" value="`$getPLMN-CL-configdb-response`"/>
204                                                 </record>
205                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
206                                                     <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' />
207                                                 </execute>
208                                             </block>
209                                         </outcome>
210                                         <outcome value='failure'>
211                                             <block atomic='true'>
212                                                 <set>
213                                                     <parameter name='error-code' value='500'/>
214                                                     <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
215                                                 </set>
216                                                 <return status='failure'>
217                                                     <parameter name='ack-final' value='Y'/>
218                                                     <parameter name='error-code' value='500'/>
219                                                     <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
220                                                 </return>
221                                                 <block atomic='true'>
222                                                     <set>
223                                                         <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
224                                                         <parameter name="tmp.status" value="`$error-code`"/>
225                                                         <parameter name="tmp.reason" value="`$error-message`"/>
226                                                         <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
227                                                         <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
228                                                     </set>
229                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
230                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
231                                                         <parameter name="level" value="info" />
232                                                         <parameter name="field1" value="URL for SO Callback Response"/>
233                                                         <parameter name='field2' value="`$tmp.so.callbackURL`" />
234                                                         <parameter name='field3' value="`$tmp.status`" />
235                                                         <parameter name='field4' value="`$tmp.reason`" />
236                                                         <parameter name='field5' value="`$tmp.requestID`" />
237                                                         <parameter name='field6' value="`$tmp.action`" />
238                                                         <parameter name='field7' value="`$tmp.CUCPList`" />
239                                                         <parameter name='field8' value="`$tmp.CUUPList`" />
240                                                         <parameter name='field9' value="`$tmp.DUList`" />
241                                                     </record>
242                                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
243                                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
244                                                         <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
245                                                         <parameter name="httpMethod" value="POST"/>
246                                                         <parameter name="responsePrefix" value="so-callback-response"/>
247                                                         <parameter name='contentType' value='application/json' />
248                                                         <parameter name='format' value='json' />
249                                                         <parameter name='accept' value='application/json' />
250                                                         <outcome value='failure'>
251                                                             <block>
252                                                                 <return status='failure'>
253                                                                     <parameter name='ack-final' value='Y'/>
254                                                                     <parameter name="error-code" value="500" />
255                                                                     <parameter name="error-message" value="Error sending SO Response" />
256                                                                 </return>
257                                                             </block>
258                                                         </outcome>
259                                                         <outcome value='success'>
260                                                             <block>
261                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
262                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
263                                                                     <parameter name="level" value="info" />
264                                                                     <parameter name="field1" value="SO Response Sent "/>
265                                                                 </record>
266                                                             </block>
267                                                         </outcome>
268                                                     </execute>
269                                                 </block>
270                                             </block>
271                                         </outcome>
272                                     </execute>
273                                     <set>
274                                         <parameter name='tmp.pLMNId' value='`$getPLMN-CL-configdb-response.plmnId`'/>
275                                     </set>
276                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
277                                         <parameter name="string" value="`$tmp.pLMNId`" />
278                                         <parameter name="result" value="tmp.mcc"/>
279                                         <parameter name="begin-index" value="0" />
280                                         <parameter name="end-index" value="3" />
281                                     </execute>
282                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
283                                         <parameter name="string" value="`$tmp.pLMNId`" />
284                                         <parameter name="result" value="tmp.mnc"/>
285                                         <parameter name="begin-index" value="4" />
286                                     </execute>
287                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
288                                         <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
289                                         <parameter name="level" value="info" />
290                                         <parameter name="field1" value="`$tmp.pLMNId`"/>
291                                         <parameter name="field2" value="`$tmp.mcc`"/>
292                                         <parameter name="field3" value="`$tmp.mnc`"/>
293                                     </record>
294                                 </block>
295                                 <block atomic="true">
296                                     <switch test='`$prop.ransim-mounted`'>
297                                         <outcome value='false'>
298                                             <block atomic='true'>
299                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
300                                                     <parameter name="source" value="`$prop.restapi.addnSSAIEntry.ToNearRTRIC`"/>
301                                                     <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
302                                                     <parameter name="target" value="{idNearRTRIC}"/>
303                                                     <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
304                                                 </execute>
305                                             </block>
306                                         </outcome>
307                                         <outcome value='true'>
308                                             <block atomic='true'>
309                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
310                                                     <parameter name="source" value="`$prop.restapi.addnSSAIEntry.ToNearRTRIC.ransim-mounted`"/>
311                                                     <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
312                                                     <parameter name="target" value="{idNearRTRIC}"/>
313                                                     <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
314                                                 </execute>
315                                                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
316                                                     <parameter name="source" value="`$tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
317                                                     <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
318                                                     <parameter name="target" value="{mountName}"/>
319                                                     <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
320                                                 </execute>
321                                             </block>
322                                         </outcome>
323                                     </switch>
324                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
325                                         <parameter name="source" value="`$tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
326                                         <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
327                                         <parameter name="target" value="{mcc}"/>
328                                         <parameter name="replacement" value="`$tmp.mcc`"/>
329                                     </execute>
330                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
331                                         <parameter name="source" value="`$tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
332                                         <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
333                                         <parameter name="target" value="{mnc}"/>
334                                         <parameter name="replacement" value="`$tmp.mnc`"/>
335                                     </execute>
336                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
337                                         <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
338                                         <parameter name="level" value="info" />
339                                         <parameter name="field1" value="Closed loop API params"/>
340                                         <parameter name="field2" value="`$tmp.nearRTRICId`"/>
341                                         <parameter name="field3" value="`$tmp.mcc`"/>
342                                         <parameter name="field4" value="`$tmp.mnc`"/>
343                                         <parameter name="field5" value="`$tmp.payload.sNSSAI`"/>
344                                         <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
345                                         <parameter name="field7" value="`$tmp.dLThptPerSlice`"/>
346                                     </record>
347                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
348                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-closed-loop-nearRTRIC-config-patch.json'`" />
349                                         <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
350                                         <parameter name="restapiUser" value="`$prop.controller.user`" />
351                                         <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
352                                         <parameter name="httpMethod" value="PATCH"/>
353                                         <parameter name="responsePrefix" value="patch-nearRTRIC-config-response"/>
354                                         <parameter name='contentType' value='application/yang.patch+json' />
355                                         <parameter name='accept' value='application/yang.patch-status+json'/>
356                                         <parameter name='format' value='json' />
357                                         <outcome value='success'>
358                                             <block atomic='true'>
359                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
360                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
361                                                     <parameter name="level" value="info" />
362                                                     <parameter name="field1" value="Successfully patched NearRTRIC configuration"/>
363                                                 </record>
364                                             </block>
365                                         </outcome>
366                                         <outcome value='failure'>
367                                             <block>
368                                                 <block atomic='true'>
369                                                     <set>
370                                                         <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
371                                                         <parameter name="tmp.status" value="`$error-code`"/>
372                                                         <parameter name="tmp.reason" value="`$error-message`"/>
373                                                         <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
374                                                         <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
375                                                     </set>
376                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
377                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
378                                                         <parameter name="level" value="info" />
379                                                         <parameter name="field1" value="URL for SO Callback Response"/>
380                                                         <parameter name='field2' value="`$tmp.so.callbackURL`" />
381                                                         <parameter name='field3' value="`$tmp.status`" />
382                                                         <parameter name='field4' value="`$tmp.reason`" />
383                                                         <parameter name='field5' value="`$tmp.requestID`" />
384                                                         <parameter name='field6' value="`$tmp.action`" />
385                                                         <parameter name='field7' value="`$tmp.CUCPList`" />
386                                                         <parameter name='field8' value="`$tmp.CUUPList`" />
387                                                         <parameter name='field9' value="`$tmp.DUList`" />
388                                                     </record>
389                                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
390                                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
391                                                         <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
392                                                         <parameter name="httpMethod" value="POST"/>
393                                                         <parameter name="responsePrefix" value="so-callback-response"/>
394                                                         <parameter name='contentType' value='application/json' />
395                                                         <parameter name='format' value='json' />
396                                                         <parameter name='accept' value='application/json' />
397                                                         <outcome value='failure'>
398                                                             <block>
399                                                                 <return status='failure'>
400                                                                     <parameter name='ack-final' value='Y'/>
401                                                                     <parameter name="error-code" value="500" />
402                                                                     <parameter name="error-message" value="Error sending SO Response" />
403                                                                 </return>
404                                                             </block>
405                                                         </outcome>
406                                                         <outcome value='success'>
407                                                             <block>
408                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
409                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
410                                                                     <parameter name="level" value="info" />
411                                                                     <parameter name="field1" value="SO Response Sent "/>
412                                                                 </record>
413                                                             </block>
414                                                         </outcome>
415                                                     </execute>
416                                                 </block>
417                                                 <set>
418                                                     <parameter name='error-code' value='500'/>
419                                                     <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
420                                                 </set>
421                                                 <return status='failure'>
422                                                     <parameter name='ack-final' value='Y'/>
423                                                     <parameter name='error-code' value='500'/>
424                                                     <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
425                                                 </return>
426                                             </block>
427                                         </outcome>
428                                     </execute>
429                                 </block>
430                             </for>
431                         </block>
432                     </block>
433                 </outcome>
434                 <outcome value='false'>
435                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
436                         <parameter name='source' value='`$instantiate-r-a-n-slice-input.payload`' />
437                         <parameter name='target' value='maxNumberofConns' />
438                         <outcome value='true'>
439                             <block atomic="true">
440                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
441                                     <parameter name="file" value="/opt/opendaylight/current/data/log/intelligentSlicing.log" />
442                                     <parameter name="level" value="info" />
443                                     <parameter name="field1" value="PAYLOAD contains maxNumberofConns...Inntelligent Slicing "/>
444                                 </record>
445                                 <set>
446                                     <parameter name='tmp.payload.dataPoints' value='`$payloadJson.input.additionalproperties.resourceConfig.data_length`'/>
447                                     <parameter name="tmp.payload.sNSSAI" value="`$payloadJson.input.additionalproperties.resourceConfig.snssai`"/>
448                                     <parameter name="tmp.sliceProfileId" value="`$payloadJson.input.sliceProfile.sliceProfileId`"/>
449                                 </set>
450                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
451                                     <parameter name="file" value="/opt/opendaylight/current/data/log/intelligentSlicing.log" />
452                                     <parameter name="level" value="info" />
453                                     <parameter name="field1" value="Data length "/>
454                                     <parameter name="field2" value="`$tmp.payload.dataPoints`"/>
455                                 </record>
456                                 <block atomic="true">
457                                     <block atomic='true'>
458                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
459                                             <parameter name="source" value="`$prop.restapi.configdb.getplmn`"/>
460                                             <parameter name="outputPath" value="tmp.configdb.getPLMNId.url"/>
461                                             <parameter name="target" value="{sliceProfileId}"/>
462                                             <parameter name="replacement" value="`$tmp.sliceProfileId`"/>
463                                         </execute>
464                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
465                                             <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
466                                             <parameter name="level" value="info" />
467                                             <parameter name="field1" value="Get PLMN from SliceProfileId URL: "/>
468                                             <parameter name="field2" value="`$tmp.configdb.getPLMNId.url`"/>
469                                         </record>
470                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
471                                             <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getPLMNId.url`"/>
472                                             <parameter name="httpMethod" value="GET"/>
473                                             <parameter name="responsePrefix" value="getPLMN-CL-configdb-response"/>
474                                             <parameter name='contentType' value='application/json' />
475                                             <parameter name='format' value='json' />
476                                             <parameter name='accept' value='application/json' />
477                                             <parameter name="convertResponse" value="true"/>
478                                             <outcome value='success'>
479                                                 <block atomic='true'>
480                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
481                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
482                                                         <parameter name="level" value="info" />
483                                                         <parameter name="field1" value="Successfully Obtained PLMNId info from ConfigDB"/>
484                                                         <parameter name="field2" value="`$getPLMN-CL-configdb-response`"/>
485                                                     </record>
486                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
487                                                         <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' />
488                                                     </execute>
489                                                 </block>
490                                             </outcome>
491                                             <outcome value='failure'>
492                                                 <block atomic='true'>
493                                                     <set>
494                                                         <parameter name='error-code' value='500'/>
495                                                         <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
496                                                     </set>
497                                                     <return status='failure'>
498                                                         <parameter name='ack-final' value='Y'/>
499                                                         <parameter name='error-code' value='500'/>
500                                                         <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
501                                                     </return>
502                                                     <block atomic='true'>
503                                                         <set>
504                                                             <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
505                                                             <parameter name="tmp.status" value="`$error-code`"/>
506                                                             <parameter name="tmp.reason" value="`$error-message`"/>
507                                                             <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
508                                                             <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
509                                                         </set>
510                                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
511                                                             <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
512                                                             <parameter name="level" value="info" />
513                                                             <parameter name="field1" value="URL for SO Callback Response"/>
514                                                             <parameter name='field2' value="`$tmp.so.callbackURL`" />
515                                                             <parameter name='field3' value="`$tmp.status`" />
516                                                             <parameter name='field4' value="`$tmp.reason`" />
517                                                             <parameter name='field5' value="`$tmp.requestID`" />
518                                                             <parameter name='field6' value="`$tmp.action`" />
519                                                             <parameter name='field7' value="`$tmp.CUCPList`" />
520                                                             <parameter name='field8' value="`$tmp.CUUPList`" />
521                                                             <parameter name='field9' value="`$tmp.DUList`" />
522                                                         </record>
523                                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
524                                                             <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
525                                                             <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
526                                                             <parameter name="httpMethod" value="POST"/>
527                                                             <parameter name="responsePrefix" value="so-callback-response"/>
528                                                             <parameter name='contentType' value='application/json' />
529                                                             <parameter name='format' value='json' />
530                                                             <parameter name='accept' value='application/json' />
531                                                             <outcome value='failure'>
532                                                                 <block>
533                                                                     <return status='failure'>
534                                                                         <parameter name='ack-final' value='Y'/>
535                                                                         <parameter name="error-code" value="500" />
536                                                                         <parameter name="error-message" value="Error sending SO Response" />
537                                                                     </return>
538                                                                 </block>
539                                                             </outcome>
540                                                             <outcome value='success'>
541                                                                 <block>
542                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
543                                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
544                                                                         <parameter name="level" value="info" />
545                                                                         <parameter name="field1" value="SO Response Sent "/>
546                                                                     </record>
547                                                                 </block>
548                                                             </outcome>
549                                                         </execute>
550                                                     </block>
551                                                 </block>
552                                             </outcome>
553                                         </execute>
554                                         <set>
555                                             <parameter name='tmp.pLMNId' value='`$getPLMN-CL-configdb-response.plmnId`'/>
556                                         </set>
557                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
558                                             <parameter name="string" value="`$tmp.pLMNId`" />
559                                             <parameter name="result" value="tmp.mcc"/>
560                                             <parameter name="begin-index" value="0" />
561                                             <parameter name="end-index" value="3" />
562                                         </execute>
563                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
564                                             <parameter name="string" value="`$tmp.pLMNId`" />
565                                             <parameter name="result" value="tmp.mnc"/>
566                                             <parameter name="begin-index" value="4" />
567                                         </execute>
568                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
569                                             <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
570                                             <parameter name="level" value="info" />
571                                             <parameter name="field1" value="`$tmp.pLMNId`"/>
572                                             <parameter name="field2" value="`$tmp.mcc`"/>
573                                             <parameter name="field3" value="`$tmp.mnc`"/>
574                                         </record>
575                                     </block>
576                                     <for index='id-is' start='0' end="`$tmp.payload.dataPoints`" >
577                                         <block atomic="true">
578                                             <set>
579                                                 <parameter name="tmp.nearRTRICId" value="`$payloadJson.input.additionalproperties.resourceConfig.data[$id-is].nearRTRICId`"/>
580                                             </set>
581                                             <switch test='`$prop.ransim-mounted`'>
582                                                 <outcome value='false'>
583                                                     <block atomic='true'>
584                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
585                                                             <parameter name="source" value="`$prop.restapi.addnSSAIEntry.ToNearRTRIC`"/>
586                                                             <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
587                                                             <parameter name="target" value="{idNearRTRIC}"/>
588                                                             <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
589                                                         </execute>
590                                                     </block>
591                                                 </outcome>
592                                                 <outcome value='true'>
593                                                     <block atomic='true'>
594                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
595                                                             <parameter name="source" value="`$prop.restapi.addnSSAIEntry.ToNearRTRIC.ransim-mounted`"/>
596                                                             <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
597                                                             <parameter name="target" value="{idNearRTRIC}"/>
598                                                             <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
599                                                         </execute>
600                                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
601                                                             <parameter name="source" value="`$tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
602                                                             <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
603                                                             <parameter name="target" value="{mountName}"/>
604                                                             <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
605                                                         </execute>
606                                                     </block>
607                                                 </outcome>
608                                             </switch>
609                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
610                                                 <parameter name="source" value="`$tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
611                                                 <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
612                                                 <parameter name="target" value="{mcc}"/>
613                                                 <parameter name="replacement" value="`$tmp.mcc`"/>
614                                             </execute>
615                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
616                                                 <parameter name="source" value="`$tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
617                                                 <parameter name="outputPath" value="tmp.restapi.addnSSAIEntry.ToNearRTRIC.url"/>
618                                                 <parameter name="target" value="{mnc}"/>
619                                                 <parameter name="replacement" value="`$tmp.mnc`"/>
620                                             </execute>
621                                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
622                                                 <parameter name='outputPath' value='tmp.CUCellListEntries' />
623                                                 <parameter name='source' value="`'payloadJson.input.additionalproperties.resourceConfig.data['+$id-is+'].cellCUList_length'`" />
624                                             </execute>
625                                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
626                                                 <parameter name="file" value="/opt/opendaylight/current/data/log/intelligentSlicing.log" />
627                                                 <parameter name="level" value="info" />
628                                                 <parameter name="field1" value="CUCEll List length "/>
629                                                 <parameter name="field2" value="`$tmp.CUCellListEntries`"/>
630                                             </record>
631                                             <for index='id2' start='0' end="`$tmp.CUCellListEntries`" >
632                                                 <block atomic="true">
633                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
634                                                         <parameter name='outputPath' value='tmp.cellLocalId' />
635                                                         <parameter name='source' value="`'payloadJson.input.additionalproperties.resourceConfig.data['+$id-is+'].cellCUList['+$id2+'].cellLocalId'`" />
636                                                     </execute>
637                                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
638                                                         <parameter name='outputPath' value='tmp.predictedMaxNumberofConns' />
639                                                         <parameter name='source' value="`'payloadJson.input.additionalproperties.resourceConfig.data['+$id-is+'].cellCUList['+$id2+'].configData.predictedMaxNumberofConns'`" />
640                                                     </execute>
641                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
642                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/intelligentSlicing.log" />
643                                                         <parameter name="level" value="info" />
644                                                         <parameter name="field1" value="cellLocalId"/>
645                                                         <parameter name="field2" value="`$tmp.cellLocalId`"/>
646                                                     </record>
647                                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
648                                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-closed-loop-nearRTRIC-config-patch.json'`" />
649                                                         <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.restapi.addnSSAIEntry.ToNearRTRIC.url`"/>
650                                                         <parameter name="restapiUser" value="`$prop.controller.user`" />
651                                                         <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
652                                                         <parameter name="httpMethod" value="PATCH"/>
653                                                         <parameter name="responsePrefix" value="patch-nearRTRIC-config-response"/>
654                                                         <parameter name='contentType' value='application/yang.patch+json' />
655                                                         <parameter name='accept' value='application/yang.patch-status+json'/>
656                                                         <parameter name='format' value='json' />
657                                                         <outcome value='success'>
658                                                             <block atomic='true'>
659                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
660                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/closedLoop.log" />
661                                                                     <parameter name="level" value="info" />
662                                                                     <parameter name="field1" value="Successfully patched NearRTRIC configuration"/>
663                                                                 </record>
664                                                             </block>
665                                                         </outcome>
666                                                         <outcome value='failure'>
667                                                             <block>
668                                                                 <block atomic='true'>
669                                                                     <set>
670                                                                         <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
671                                                                         <parameter name="tmp.status" value="`$error-code`"/>
672                                                                         <parameter name="tmp.reason" value="`$error-message`"/>
673                                                                         <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
674                                                                         <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
675                                                                     </set>
676                                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
677                                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
678                                                                         <parameter name="level" value="info" />
679                                                                         <parameter name="field1" value="URL for SO Callback Response"/>
680                                                                         <parameter name='field2' value="`$tmp.so.callbackURL`" />
681                                                                         <parameter name='field3' value="`$tmp.status`" />
682                                                                         <parameter name='field4' value="`$tmp.reason`" />
683                                                                         <parameter name='field5' value="`$tmp.requestID`" />
684                                                                         <parameter name='field6' value="`$tmp.action`" />
685                                                                         <parameter name='field7' value="`$tmp.CUCPList`" />
686                                                                         <parameter name='field8' value="`$tmp.CUUPList`" />
687                                                                         <parameter name='field9' value="`$tmp.DUList`" />
688                                                                     </record>
689                                                                     <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
690                                                                         <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
691                                                                         <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
692                                                                         <parameter name="httpMethod" value="POST"/>
693                                                                         <parameter name="responsePrefix" value="so-callback-response"/>
694                                                                         <parameter name='contentType' value='application/json' />
695                                                                         <parameter name='format' value='json' />
696                                                                         <parameter name='accept' value='application/json' />
697                                                                         <outcome value='failure'>
698                                                                             <block>
699                                                                                 <return status='failure'>
700                                                                                     <parameter name='ack-final' value='Y'/>
701                                                                                     <parameter name="error-code" value="500" />
702                                                                                     <parameter name="error-message" value="Error sending SO Response" />
703                                                                                 </return>
704                                                                             </block>
705                                                                         </outcome>
706                                                                         <outcome value='success'>
707                                                                             <block>
708                                                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
709                                                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
710                                                                                     <parameter name="level" value="info" />
711                                                                                     <parameter name="field1" value="SO Response Sent "/>
712                                                                                 </record>
713                                                                             </block>
714                                                                         </outcome>
715                                                                     </execute>
716                                                                 </block>
717                                                                 <set>
718                                                                     <parameter name='error-code' value='500'/>
719                                                                     <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
720                                                                 </set>
721                                                                 <return status='failure'>
722                                                                     <parameter name='ack-final' value='Y'/>
723                                                                     <parameter name='error-code' value='500'/>
724                                                                     <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
725                                                                 </return>
726                                                             </block>
727                                                         </outcome>
728                                                     </execute>
729                                                 </block>
730                                             </for>
731                                         </block>
732                                     </for>
733                                 </block>
734                             </block>
735                         </outcome>
736                     </execute>
737                 </outcome>
738             </execute>
739             <block atomic='true'>
740                 <set>
741                     <parameter name="tmp.status" value="`$error-code`"/>
742                     <parameter name="tmp.reason" value="`$error-message`"/>
743                     <parameter name="tmp.requestID" value="`$instantiate-r-a-n-slice-input.common-header.request-id `"/>
744                     <parameter name="tmp.action" value="`$instantiate-r-a-n-slice-input.action`"/>
745                 </set>
746                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
747                     <parameter name="source" value="`$prop.restapi.so.callbackURL`"/>
748                     <parameter name="outputPath" value="tmp.so.callbackURL"/>
749                     <parameter name="target" value="{requestId}"/>
750                     <parameter name="replacement" value="`$tmp.requestID`"/>
751                 </execute>
752                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
753                     <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
754                     <parameter name="level" value="info" />
755                     <parameter name="field1" value="URL for SO Callback Response"/>
756                     <parameter name='field2' value="`$payloadJson.input.callbackURL`" />
757                     <parameter name='field3' value="`$tmp.status`" />
758                     <parameter name='field4' value="`$tmp.reason`" />
759                     <parameter name='field5' value="`$tmp.requestID`" />
760                     <parameter name='field6' value="`$tmp.action`" />
761                     <parameter name='field7' value="`$tmp.CUCPList`" />
762                     <parameter name='field8' value="`$tmp.CUUPList`" />
763                     <parameter name='field9' value="`$tmp.DUList`" />
764                 </record>
765                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
766                     <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
767                     <parameter name="restapiUrl" value="`$payloadJson.input.callbackURL`"/>
768                     <parameter name="httpMethod" value="POST"/>
769                     <parameter name="responsePrefix" value="so-callback-response"/>
770                     <parameter name='contentType' value='application/json' />
771                     <parameter name='format' value='json' />
772                     <parameter name='accept' value='application/json' />
773                     <parameter name="restapiUser" value="`$prop.restapi.so.user`" />
774                     <parameter name="restapiPassword" value="`$prop.restapi.so.password`"/>
775                     <outcome value='failure'>
776                         <block>
777                             <set>
778                                 <parameter name='error-code' value='500'/>
779                                 <parameter name='error-message' value='Error sending SO response. Aborting RPC executiopn'/>
780                             </set>
781                             <return status='failure'>
782                                 <parameter name='ack-final' value='Y'/>
783                                 <parameter name="error-code" value="500" />
784                                 <parameter name="error-message" value="Error sending SO Response" />
785                             </return>
786                         </block>
787                     </outcome>
788                     <outcome value='success'>
789                         <block>
790                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
791                                 <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
792                                 <parameter name="level" value="info" />
793                                 <parameter name="field1" value="SO Response Sent "/>
794                             </record>
795                         </block>
796                     </outcome>
797                 </execute>
798             </block>
799             <return status='success'>
800                 <parameter name="ack-final" value="N" />
801                 <parameter name="error-code" value="200" />
802                 <parameter name="error-message" value="SUCCESSFUL Execution" />
803             </return>
804         </block>
805     </method>
806 </service-logic>