DG Implementation - RAN Slice RPCS
[ccsdk/distribution.git] / platform-logic / ran-slice-api / src / main / xml / ran-slice-api_instantiateRANSlice.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='instantiateRANSlice' 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="RPC to handle instantiateRANSlice.: "/>
10                 <parameter name="field2" value="`$instantiate-r-a-n-slice-input.action`"/>
11                 <parameter name="field3" value="`$instantiate-r-a-n-slice-input.common-header.timestamp`"/>
12                 <parameter name="field4" value="`$instantiate-r-a-n-slice-input.common-header.request-id`"/>
13                 <parameter name="field5" value="`$instantiate-r-a-n-slice-input.common-header.originator-id`"/>
14                 <parameter name="field6" value="RPC Payload String "/>
15                 <parameter name="field7" value="`$instantiate-r-a-n-slice-input.payload`"/>
16             </record>
17             <set>
18                 <parameter name='error-code' value='200' />
19                 <parameter name='error-message' value='Successful execution of instantiateRANSice RPC' />
20             </set>
21             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='jsonStringToCtx'>
22                 <parameter name='source' value='instantiate-r-a-n-slice-input.payload' />
23                 <parameter name='outputPath' value='payloadJson' />
24                 <parameter name='isEscaped' value='false' />
25                 <outcome value='success'>
26                     <block atomic='true'>
27                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
28                             <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-context.log' />
29                         </execute>
30                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
31                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
32                             <parameter name="level" value="info" />
33                             <parameter name="field1" value="Payload for instantiateRANSlice.: "/>
34                             <parameter name="field2" value="`$payloadJson.input.sliceProfile.sliceProfileId`"/>
35                             <parameter name="field3" value="`$payloadJson.input.sliceProfile.NSSAI`"/>
36                             <parameter name="field4" value="`$payloadJson.input.sliceProfile.maxNumberofUEs`"/>
37                             <parameter name="field5" value="`$payloadJson.input.sliceProfile.latency`"/>
38                             <parameter name="field6" value="`$payloadJson.input.sliceProfile.uLThptPerSlice`"/>
39                             <parameter name="field7" value="`$payloadJson.input.sliceProfile.dLThptPerSlice`"/>
40                             <parameter name="field8" value="`$payloadJson.input.sliceProfile.maxNumberofConns`"/>
41                             <parameter name="field9" value="`$payloadJson.input.sliceProfile.coverageAreaList[0]`"/>
42                             <parameter name="field10" value="`$payloadJson.input.sliceProfile.uEMobilityLevel`"/>
43                             <parameter name="field11" value="`$payloadJson.input.sliceProfile.resourceSharingLevel`"/>
44                             <parameter name="field12" value="`$payloadJson.input.RANNSSIId`"/>
45                             <parameter name="field13" value="`$payloadJson.input.RANNFNSSIId`"/>
46                             <parameter name="field14" value="`$payloadJson.input.callbackURL`"/>
47                         </record>
48                     </block>
49                 </outcome>
50             </execute>
51             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
52                 <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-context.log' />
53             </execute>
54             <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
55                 <parameter name='fileName' value='/opt/onap/ccsdk/data/properties/ran-slice-api-dg.properties' />
56                 <parameter name='contextPrefix' value='prop' />
57             </execute>
58             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
59                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
60                 <parameter name="level" value="info" />
61                 <parameter name="field1" value="Properties read .. controller details "/>
62                 <parameter name="field2" value="`$prop.controller.user`"/>
63                 <parameter name="field3" value="`$prop.controller.pwd`"/>
64                 <parameter name="field4" value="`$prop.controller.url`"/>
65                 <parameter name="field5" value="ransim-mounted (true/false): "/>
66                 <parameter name="field6" value="`$prop.ransim-mounted`"/>
67                 <parameter name="field7" value="config DB deployed (true/false): "/>
68                 <parameter name="field8" value="`$prop.configdb-deployed`"/>
69             </record>
70             <block atomic='true'>
71                 <switch test='`$instantiate-r-a-n-slice-input.action`'>
72                     <outcome value='reconfigure'>
73                         <block atomic="true">
74                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
75                                 <parameter name='source' value='`$instantiate-r-a-n-slice-input.payload`' />
76                                 <parameter name='target' value='dLThptPerSlice' />
77                                 <outcome value='true'>
78                                     <block atomic="true">
79                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
80                                             <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
81                                             <parameter name="level" value="info" />
82                                             <parameter name="field1" value="PAYLOAD contains dLThptPerSlice...Closed loop "/>
83                                             <parameter name="field2" value="Creating temporary variables ONLy for relevant payload fields "/>
84                                         </record>
85                                         <set>
86                                             <parameter name='tmp.payload.callbackURL' value='`$payloadJson.input.callbackURL`'/>
87                                             <parameter name='tmp.payload.RANNFNSSIId' value='`$payloadJson.input.RANNFNSSIId`'/>
88                                             <parameter name='tmp.payload.RANNSSIId' value='`$payloadJson.input.RANNSSIId`'/>
89                                         </set>
90                                     </block>
91                                 </outcome>
92                                 <outcome value='false'>
93                                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='contains' emitsOutcome='true' >
94                                         <parameter name='source' value='`$instantiate-r-a-n-slice-input.payload`' />
95                                         <parameter name='target' value='maxNumberofConns' />
96                                         <outcome value='true'>
97                                             <block atomic="true">
98                                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
99                                                     <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
100                                                     <parameter name="level" value="info" />
101                                                     <parameter name="field1" value="PAYLOAD contains maxNumberofConns...Inntelligent Slicing "/>
102                                                     <parameter name="field2" value="Creating temporary variables ONLy for relevant payload fields "/>
103                                                 </record>
104                                                 <set>
105                                                     <parameter name='tmp.payload.callbackURL' value='`$payloadJson.input.callbackURL`'/>
106                                                     <parameter name='tmp.payload.RANNFNSSIId' value='`$payloadJson.input.RANNFNSSIId`'/>
107                                                     <parameter name='tmp.payload.RANNSSIId' value='`$payloadJson.input.RANNSSIId`'/>
108                                                 </set>
109                                             </block>
110                                         </outcome>
111                                     </execute>
112                                 </outcome>
113                             </execute>
114                         </block>
115                     </outcome>
116                     <outcome value='allocate'>
117                         <block atomic="true">
118                             <set>
119                                 <parameter name='tmp.payload.trackingArea' value='`$payloadJson.input.sliceProfile.coverageAreaList[0]`'/>
120                                 <parameter name='tmp.payload.callbackURL' value='`$payloadJson.input.callbackURL`'/>
121                                 <parameter name='tmp.payload.RANNFNSSIId' value='`$payloadJson.input.RANNFNSSIId`'/>
122                                 <parameter name='tmp.payload.RANNSSIId' value='`$payloadJson.input.RANNSSIId`'/>
123                                 <parameter name='tmp.payload.coverageAreaList_length' value='`$payloadJson.input.sliceProfile.coverageAreaList_length`'/>
124                                 <parameter name='tmp.payload.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`'/>
125                                 <parameter name='tmp.payload.latency' value='`$payloadJson.input.sliceProfile.latency`'/>
126                                 <parameter name='tmp.payload.maxNumberofConns' value='`$payloadJson.input.sliceProfile.maxNumberofConns`'/>
127                                 <parameter name='tmp.payload.maxNumberofUEs' value='`$payloadJson.input.sliceProfile.maxNumberofUEs`'/>
128                                 <parameter name='tmp.payload.resourceSharingLevel' value='`$payloadJson.input.sliceProfile.resourceSharingLevel`'/>
129                                 <parameter name='tmp.payload.sliceProfileId' value='`$payloadJson.input.sliceProfile.sliceProfileId`'/>
130                                 <parameter name='tmp.payload.sNSSAI' value='`$payloadJson.input.sliceProfile.sNSSAI`'/>
131                                 <parameter name='tmp.payload.uEMobilityLevel' value='`$payloadJson.input.sliceProfile.uEMobilityLevel`'/>
132                                 <parameter name='tmp.payload.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`'/>
133                                 <parameter name='tmp.payload.pLMNId' value='`$payloadJson.input.sliceProfile.pLMNIdList[0]`'/>
134                             </set>
135                             <set>
136                                 <parameter name='tmp.RRMPolicyRatioID.NearRTRIC' value="`'NearRTRIC-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
137                                 <parameter name='tmp.RRMPolicyRatioID.GNBDUFunction' value="`'GNBDUFunction-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
138                                 <parameter name='tmp.RRMPolicyRatioID.NRCellDU' value="`'NRCellDU-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
139                                 <parameter name='tmp.RRMPolicyRatioID.GNBCUUPFunction' value="`'GNBCUUPFunction-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
140                                 <parameter name='tmp.RRMPolicyRatioID.GNBCUCPFunction' value="`'GNBCUCPFunction-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
141                                 <parameter name='tmp.RRMPolicyRatioID.NRCellCU' value="`'NRCellCU-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
142                                 <parameter name='prop.ranNetwork.RRMPolicyRatioMemberID' value='`$prop.ranNetwork.RRMPolicyRatioMemberID + 1`' />
143                             </set>
144                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
145                                 <parameter name="string" value="`$tmp.payload.pLMNId`" />
146                                 <parameter name="result" value="tmp.mcc"/>
147                                 <parameter name="begin-index" value="0" />
148                                 <parameter name="end-index" value="3" />
149                             </execute>
150                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
151                                 <parameter name="string" value="`$tmp.payload.pLMNId`" />
152                                 <parameter name="result" value="tmp.mnc"/>
153                                 <parameter name="begin-index" value="4" />
154                             </execute>
155                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
156                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
157                                 <parameter name="level" value="info" />
158                                 <parameter name="field1" value="PLMNID from Payload: MCC-MNC "/>
159                                 <parameter name="field2" value="`$tmp.mcc`"/>
160                                 <parameter name="field3" value="`$tmp.mnc`"/>
161                             </record>
162                         </block>
163                     </outcome>
164                     <outcome value='modify-allocate'>
165                         <block atomic="true">
166                             <set>
167                                 <parameter name='tmp.payload.trackingArea' value='`$payloadJson.input.sliceProfile.coverageAreaList[0]`'/>
168                                 <parameter name='tmp.payload.callbackURL' value='`$payloadJson.input.callbackURL`'/>
169                                 <parameter name='tmp.payload.RANNFNSSIId' value='`$payloadJson.input.RANNFNSSIId`'/>
170                                 <parameter name='tmp.payload.RANNSSIId' value='`$payloadJson.input.RANNSSIId`'/>
171                                 <parameter name='tmp.payload.coverageAreaList_length' value='`$payloadJson.input.sliceProfile.coverageAreaList_length`'/>
172                                 <parameter name='tmp.payload.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`'/>
173                                 <parameter name='tmp.payload.latency' value='`$payloadJson.input.sliceProfile.latency`'/>
174                                 <parameter name='tmp.payload.maxNumberofConns' value='`$payloadJson.input.sliceProfile.maxNumberofConns`'/>
175                                 <parameter name='tmp.payload.maxNumberofUEs' value='`$payloadJson.input.sliceProfile.maxNumberofUEs`'/>
176                                 <parameter name='tmp.payload.resourceSharingLevel' value='`$payloadJson.input.sliceProfile.resourceSharingLevel`'/>
177                                 <parameter name='tmp.payload.sliceProfileId' value='`$payloadJson.input.sliceProfile.sliceProfileId`'/>
178                                 <parameter name='tmp.payload.sNSSAI' value='`$payloadJson.input.sliceProfile.sNSSAI`'/>
179                                 <parameter name='tmp.payload.uEMobilityLevel' value='`$payloadJson.input.sliceProfile.uEMobilityLevel`'/>
180                                 <parameter name='tmp.payload.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`'/>
181                                 <parameter name='tmp.payload.pLMNId' value='`$payloadJson.input.sliceProfile.pLMNIdList[0]`'/>
182                             </set>
183                             <set>
184                                 <parameter name='tmp.RRMPolicyRatioID.NearRTRIC' value="`'NearRTRIC-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
185                                 <parameter name='tmp.RRMPolicyRatioID.GNBDUFunction' value="`'GNBDUFunction-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
186                                 <parameter name='tmp.RRMPolicyRatioID.NRCellDU' value="`'NRCellDU-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
187                                 <parameter name='tmp.RRMPolicyRatioID.GNBCUUPFunction' value="`'GNBCUUPFunction-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
188                                 <parameter name='tmp.RRMPolicyRatioID.GNBCUCPFunction' value="`'GNBCUCPFunction-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
189                                 <parameter name='tmp.RRMPolicyRatioID.NRCellCU' value="`'NRCellCU-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
190                                 <parameter name='prop.ranNetwork.RRMPolicyRatioMemberID' value='`$prop.ranNetwork.RRMPolicyRatioMemberID + 1`' />
191                             </set>
192                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
193                                 <parameter name="string" value="`$tmp.payload.pLMNId`" />
194                                 <parameter name="result" value="tmp.mcc"/>
195                                 <parameter name="begin-index" value="0" />
196                                 <parameter name="end-index" value="3" />
197                             </execute>
198                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
199                                 <parameter name="string" value="`$tmp.payload.pLMNId`" />
200                                 <parameter name="result" value="tmp.mnc"/>
201                                 <parameter name="begin-index" value="4" />
202                             </execute>
203                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
204                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
205                                 <parameter name="level" value="info" />
206                                 <parameter name="field1" value="PLMNID from Payload: MCC-MNC "/>
207                                 <parameter name="field2" value="`$tmp.mcc`"/>
208                                 <parameter name="field3" value="`$tmp.mnc`"/>
209                             </record>
210                         </block>
211                     </outcome>
212                     <outcome value='modify-deallocate'>
213                         <block atomic="true">
214                             <set>
215                                 <parameter name='tmp.payload.trackingArea' value='`$payloadJson.input.sliceProfile.coverageAreaList[0]`'/>
216                                 <parameter name='tmp.payload.callbackURL' value='`$payloadJson.input.callbackURL`'/>
217                                 <parameter name='tmp.payload.RANNFNSSIId' value='`$payloadJson.input.RANNFNSSIId`'/>
218                                 <parameter name='tmp.payload.RANNSSIId' value='`$payloadJson.input.RANNSSIId`'/>
219                                 <parameter name='tmp.payload.coverageAreaList_length' value='`$payloadJson.input.sliceProfile.coverageAreaList_length`'/>
220                                 <parameter name='tmp.payload.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`'/>
221                                 <parameter name='tmp.payload.latency' value='`$payloadJson.input.sliceProfile.latency`'/>
222                                 <parameter name='tmp.payload.maxNumberofConns' value='`$payloadJson.input.sliceProfile.maxNumberofConns`'/>
223                                 <parameter name='tmp.payload.maxNumberofUEs' value='`$payloadJson.input.sliceProfile.maxNumberofUEs`'/>
224                                 <parameter name='tmp.payload.resourceSharingLevel' value='`$payloadJson.input.sliceProfile.resourceSharingLevel`'/>
225                                 <parameter name='tmp.payload.sliceProfileId' value='`$payloadJson.input.sliceProfile.sliceProfileId`'/>
226                                 <parameter name='tmp.payload.sNSSAI' value='`$payloadJson.input.sliceProfile.sNSSAI`'/>
227                                 <parameter name='tmp.payload.uEMobilityLevel' value='`$payloadJson.input.sliceProfile.uEMobilityLevel`'/>
228                                 <parameter name='tmp.payload.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`'/>
229                                 <parameter name='tmp.payload.pLMNId' value='`$payloadJson.input.sliceProfile.pLMNIdList[0]`'/>
230                             </set>
231                             <set>
232                                 <parameter name='tmp.RRMPolicyRatioID.NearRTRIC' value="`'NearRTRIC-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
233                                 <parameter name='tmp.RRMPolicyRatioID.GNBDUFunction' value="`'GNBDUFunction-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
234                                 <parameter name='tmp.RRMPolicyRatioID.NRCellDU' value="`'NRCellDU-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
235                                 <parameter name='tmp.RRMPolicyRatioID.GNBCUUPFunction' value="`'GNBCUUPFunction-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
236                                 <parameter name='tmp.RRMPolicyRatioID.GNBCUCPFunction' value="`'GNBCUCPFunction-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
237                                 <parameter name='tmp.RRMPolicyRatioID.NRCellCU' value="`'NRCellCU-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
238                                 <parameter name='prop.ranNetwork.RRMPolicyRatioMemberID' value='`$prop.ranNetwork.RRMPolicyRatioMemberID + 1`' />
239                             </set>
240                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
241                                 <parameter name="string" value="`$tmp.payload.pLMNId`" />
242                                 <parameter name="result" value="tmp.mcc"/>
243                                 <parameter name="begin-index" value="0" />
244                                 <parameter name="end-index" value="3" />
245                             </execute>
246                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
247                                 <parameter name="string" value="`$tmp.payload.pLMNId`" />
248                                 <parameter name="result" value="tmp.mnc"/>
249                                 <parameter name="begin-index" value="4" />
250                             </execute>
251                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
252                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
253                                 <parameter name="level" value="info" />
254                                 <parameter name="field1" value="PLMNID from Payload: MCC-MNC "/>
255                                 <parameter name="field2" value="`$tmp.mcc`"/>
256                                 <parameter name="field3" value="`$tmp.mnc`"/>
257                             </record>
258                         </block>
259                     </outcome>
260                 </switch>
261             </block>
262             <switch test='`$prop.configdb-deployed`'>
263                 <outcome value='true'>
264                     <block atomic='true'>
265                         <switch test='`$instantiate-r-a-n-slice-input.action`'>
266                             <outcome value='allocate'>
267                                 <block atomic="true">
268                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
269                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
270                                         <parameter name="level" value="info" />
271                                         <parameter name="field1" value="Calling instantiateRANSliceAllocate "/>
272                                     </record>
273                                     <call module='ran-slice-api' rpc='instantiateRANSliceAllocate' mode='sync' >
274                                         <outcome value='failure'>
275                                             <return status='failure'>
276                                                 <parameter name='ack-final' value='Y' />
277                                             </return>
278                                         </outcome>
279                                     </call>
280                                 </block>
281                             </outcome>
282                             <outcome value='modify-allocate'>
283                                 <block atomic="true">
284                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
285                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
286                                         <parameter name="level" value="info" />
287                                         <parameter name="field1" value="Calling instantiateRANSliceModifyAllocate "/>
288                                     </record>
289                                     <call module='ran-slice-api' rpc='instantiateRANSliceModifyAllocate' mode='sync' >
290                                         <outcome value='failure'>
291                                             <return status='failure'>
292                                                 <parameter name='ack-final' value='Y' />
293                                             </return>
294                                         </outcome>
295                                     </call>
296                                 </block>
297                             </outcome>
298                             <outcome value='modify-deallocate'>
299                                 <block atomic="true">
300                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
301                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
302                                         <parameter name="level" value="info" />
303                                         <parameter name="field1" value="Calling instantiateRANSliceModifyDeallocate "/>
304                                     </record>
305                                     <call module='ran-slice-api' rpc='terminateRANSliceInstance' mode='sync' >
306                                         <outcome value='failure'>
307                                             <return status='failure'>
308                                                 <parameter name='ack-final' value='Y' />
309                                             </return>
310                                         </outcome>
311                                     </call>
312                                 </block>
313                             </outcome>
314                             <outcome value='reconfigure'>
315                                 <block atomic="true">
316                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
317                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
318                                         <parameter name="level" value="info" />
319                                         <parameter name="field1" value="Calling instantiateRANSliceReconfigure "/>
320                                     </record>
321                                     <call module='ran-slice-api' rpc='instantiateRANSliceReconfigure' mode='sync' >
322                                         <outcome value='failure'>
323                                             <return status='failure'>
324                                                 <parameter name='ack-final' value='Y' />
325                                             </return>
326                                         </outcome>
327                                     </call>
328                                 </block>
329                             </outcome>
330                         </switch>
331                     </block>
332                 </outcome>
333             </switch>
334             <return status='success'>
335                 <parameter name="ack-final" value="Y" />
336                 <parameter name="error-code" value="200" />
337                 <parameter name="error-message" value="SUCCESSFUL Execution" />
338             </return>
339         </block>
340     </method>
341 </service-logic>