fix odl patches
[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                             <switch test='`$tmp.payload.pLMNId`'>
145                                 <outcome value=''>
146                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
147                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
148                                         <parameter name="level" value="info" />
149                                         <parameter name="field1" value="It is allocate-modify flow. PLMNId is null"/>
150                                     </record>
151                                 </outcome>
152                                 <outcome value='Other'>
153                                     <block atomic="true">
154                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
155                                             <parameter name="string" value="`$tmp.payload.pLMNId`" />
156                                             <parameter name="result" value="tmp.mcc"/>
157                                             <parameter name="begin-index" value="0" />
158                                             <parameter name="end-index" value="3" />
159                                         </execute>
160                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
161                                             <parameter name="string" value="`$tmp.payload.pLMNId`" />
162                                             <parameter name="result" value="tmp.mnc"/>
163                                             <parameter name="begin-index" value="4" />
164                                         </execute>
165                                     </block>
166                                 </outcome>
167                             </switch>
168                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
169                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
170                                 <parameter name="level" value="info" />
171                                 <parameter name="field1" value="PLMNID from Payload: MCC-MNC "/>
172                                 <parameter name="field2" value="`$tmp.mcc`"/>
173                                 <parameter name="field3" value="`$tmp.mnc`"/>
174                             </record>
175                         </block>
176                     </outcome>
177                     <outcome value='modify-allocate'>
178                         <block atomic="true">
179                             <set>
180                                 <parameter name='tmp.payload.trackingArea' value='`$payloadJson.input.sliceProfile.coverageAreaList[0]`'/>
181                                 <parameter name='tmp.payload.callbackURL' value='`$payloadJson.input.callbackURL`'/>
182                                 <parameter name='tmp.payload.RANNFNSSIId' value='`$payloadJson.input.RANNFNSSIId`'/>
183                                 <parameter name='tmp.payload.RANNSSIId' value='`$payloadJson.input.RANNSSIId`'/>
184                                 <parameter name='tmp.payload.coverageAreaList_length' value='`$payloadJson.input.sliceProfile.coverageAreaList_length`'/>
185                                 <parameter name='tmp.payload.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`'/>
186                                 <parameter name='tmp.payload.latency' value='`$payloadJson.input.sliceProfile.latency`'/>
187                                 <parameter name='tmp.payload.maxNumberofConns' value='`$payloadJson.input.sliceProfile.maxNumberofConns`'/>
188                                 <parameter name='tmp.payload.maxNumberofUEs' value='`$payloadJson.input.sliceProfile.maxNumberofUEs`'/>
189                                 <parameter name='tmp.payload.resourceSharingLevel' value='`$payloadJson.input.sliceProfile.resourceSharingLevel`'/>
190                                 <parameter name='tmp.payload.sliceProfileId' value='`$payloadJson.input.sliceProfile.sliceProfileId`'/>
191                                 <parameter name='tmp.payload.sNSSAI' value='`$payloadJson.input.sliceProfile.sNSSAI`'/>
192                                 <parameter name='tmp.payload.uEMobilityLevel' value='`$payloadJson.input.sliceProfile.uEMobilityLevel`'/>
193                                 <parameter name='tmp.payload.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`'/>
194                                 <parameter name='tmp.payload.pLMNId' value='`$payloadJson.input.sliceProfile.pLMNIdList[0]`'/>
195                             </set>
196                             <set>
197                                 <parameter name='tmp.RRMPolicyRatioID.NearRTRIC' value="`'NearRTRIC-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
198                                 <parameter name='tmp.RRMPolicyRatioID.GNBDUFunction' value="`'GNBDUFunction-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
199                                 <parameter name='tmp.RRMPolicyRatioID.NRCellDU' value="`'NRCellDU-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
200                                 <parameter name='tmp.RRMPolicyRatioID.GNBCUUPFunction' value="`'GNBCUUPFunction-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
201                                 <parameter name='tmp.RRMPolicyRatioID.GNBCUCPFunction' value="`'GNBCUCPFunction-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
202                                 <parameter name='tmp.RRMPolicyRatioID.NRCellCU' value="`'NRCellCU-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
203                                 <parameter name='prop.ranNetwork.RRMPolicyRatioMemberID' value='`$prop.ranNetwork.RRMPolicyRatioMemberID + 1`' />
204                             </set>
205                             <switch test='`$tmp.payload.pLMNId`'>
206                                 <outcome value=''>
207                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
208                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
209                                         <parameter name="level" value="info" />
210                                         <parameter name="field1" value="It is allocate-modify flow. PLMNId is null"/>
211                                     </record>
212                                 </outcome>
213                                 <outcome value='Other'>
214                                     <block atomic="true">
215                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
216                                             <parameter name="string" value="`$tmp.payload.pLMNId`" />
217                                             <parameter name="result" value="tmp.mcc"/>
218                                             <parameter name="begin-index" value="0" />
219                                             <parameter name="end-index" value="3" />
220                                         </execute>
221                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
222                                             <parameter name="string" value="`$tmp.payload.pLMNId`" />
223                                             <parameter name="result" value="tmp.mnc"/>
224                                             <parameter name="begin-index" value="4" />
225                                         </execute>
226                                     </block>
227                                 </outcome>
228                             </switch>
229                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
230                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
231                                 <parameter name="level" value="info" />
232                                 <parameter name="field1" value="PLMNID from Payload: MCC-MNC "/>
233                                 <parameter name="field2" value="`$tmp.mcc`"/>
234                                 <parameter name="field3" value="`$tmp.mnc`"/>
235                             </record>
236                         </block>
237                     </outcome>
238                     <outcome value='modify-deallocate'>
239                         <block atomic="true">
240                             <set>
241                                 <parameter name='tmp.payload.trackingArea' value='`$payloadJson.input.sliceProfile.coverageAreaList[0]`'/>
242                                 <parameter name='tmp.payload.callbackURL' value='`$payloadJson.input.callbackURL`'/>
243                                 <parameter name='tmp.payload.RANNFNSSIId' value='`$payloadJson.input.RANNFNSSIId`'/>
244                                 <parameter name='tmp.payload.RANNSSIId' value='`$payloadJson.input.RANNSSIId`'/>
245                                 <parameter name='tmp.payload.coverageAreaList_length' value='`$payloadJson.input.sliceProfile.coverageAreaList_length`'/>
246                                 <parameter name='tmp.payload.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice`'/>
247                                 <parameter name='tmp.payload.latency' value='`$payloadJson.input.sliceProfile.latency`'/>
248                                 <parameter name='tmp.payload.maxNumberofConns' value='`$payloadJson.input.sliceProfile.maxNumberofConns`'/>
249                                 <parameter name='tmp.payload.maxNumberofUEs' value='`$payloadJson.input.sliceProfile.maxNumberofUEs`'/>
250                                 <parameter name='tmp.payload.resourceSharingLevel' value='`$payloadJson.input.sliceProfile.resourceSharingLevel`'/>
251                                 <parameter name='tmp.payload.sliceProfileId' value='`$payloadJson.input.sliceProfile.sliceProfileId`'/>
252                                 <parameter name='tmp.payload.sNSSAI' value='`$payloadJson.input.sliceProfile.sNSSAI`'/>
253                                 <parameter name='tmp.payload.uEMobilityLevel' value='`$payloadJson.input.sliceProfile.uEMobilityLevel`'/>
254                                 <parameter name='tmp.payload.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice`'/>
255                                 <parameter name='tmp.payload.pLMNId' value='`$payloadJson.input.sliceProfile.pLMNIdList[0]`'/>
256                             </set>
257                             <set>
258                                 <parameter name='tmp.RRMPolicyRatioID.NearRTRIC' value="`'NearRTRIC-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
259                                 <parameter name='tmp.RRMPolicyRatioID.GNBDUFunction' value="`'GNBDUFunction-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
260                                 <parameter name='tmp.RRMPolicyRatioID.NRCellDU' value="`'NRCellDU-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
261                                 <parameter name='tmp.RRMPolicyRatioID.GNBCUUPFunction' value="`'GNBCUUPFunction-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
262                                 <parameter name='tmp.RRMPolicyRatioID.GNBCUCPFunction' value="`'GNBCUCPFunction-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
263                                 <parameter name='tmp.RRMPolicyRatioID.NRCellCU' value="`'NRCellCU-' + $payloadJson.input.sliceProfile.sliceProfileId  + '-' + $payloadJson.input.sliceProfile.coverageAreaList[0]`" />
264                                 <parameter name='prop.ranNetwork.RRMPolicyRatioMemberID' value='`$prop.ranNetwork.RRMPolicyRatioMemberID + 1`' />
265                             </set>
266                             <switch test='`$tmp.payload.pLMNId`'>
267                                 <outcome value=''>
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="It is allocate-modify flow. PLMNId is null"/>
272                                     </record>
273                                 </outcome>
274                                 <outcome value='Other'>
275                                     <block atomic="true">
276                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring'>
277                                             <parameter name="string" value="`$tmp.payload.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.payload.pLMNId`" />
284                                             <parameter name="result" value="tmp.mnc"/>
285                                             <parameter name="begin-index" value="4" />
286                                         </execute>
287                                     </block>
288                                 </outcome>
289                             </switch>
290                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
291                                 <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
292                                 <parameter name="level" value="info" />
293                                 <parameter name="field1" value="PLMNID from Payload: MCC-MNC "/>
294                                 <parameter name="field2" value="`$tmp.mcc`"/>
295                                 <parameter name="field3" value="`$tmp.mnc`"/>
296                             </record>
297                         </block>
298                     </outcome>
299                 </switch>
300             </block>
301             <switch test='`$prop.configdb-deployed`'>
302                 <outcome value='true'>
303                     <block atomic='true'>
304                         <switch test='`$instantiate-r-a-n-slice-input.action`'>
305                             <outcome value='allocate'>
306                                 <block atomic="true">
307                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
308                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
309                                         <parameter name="level" value="info" />
310                                         <parameter name="field1" value="Calling instantiateRANSliceAllocate "/>
311                                     </record>
312                                     <call module='ran-slice-api' rpc='instantiateRANSliceAllocate' mode='sync' >
313                                         <outcome value='failure'>
314                                             <return status='failure'>
315                                                 <parameter name='ack-final' value='Y' />
316                                             </return>
317                                         </outcome>
318                                     </call>
319                                 </block>
320                             </outcome>
321                             <outcome value='modify-allocate'>
322                                 <block atomic="true">
323                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
324                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
325                                         <parameter name="level" value="info" />
326                                         <parameter name="field1" value="Calling instantiateRANSliceModifyAllocate "/>
327                                     </record>
328                                     <call module='ran-slice-api' rpc='instantiateRANSliceModifyAllocate' mode='sync' >
329                                         <outcome value='failure'>
330                                             <return status='failure'>
331                                                 <parameter name='ack-final' value='Y' />
332                                             </return>
333                                         </outcome>
334                                     </call>
335                                 </block>
336                             </outcome>
337                             <outcome value='modify-deallocate'>
338                                 <block atomic="true">
339                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
340                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
341                                         <parameter name="level" value="info" />
342                                         <parameter name="field1" value="Calling instantiateRANSliceModifyDeallocate "/>
343                                     </record>
344                                     <call module='ran-slice-api' rpc='terminateRANSliceInstance' mode='sync' >
345                                         <outcome value='failure'>
346                                             <return status='failure'>
347                                                 <parameter name='ack-final' value='Y' />
348                                             </return>
349                                         </outcome>
350                                     </call>
351                                 </block>
352                             </outcome>
353                             <outcome value='reconfigure'>
354                                 <block atomic="true">
355                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
356                                         <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
357                                         <parameter name="level" value="info" />
358                                         <parameter name="field1" value="Calling instantiateRANSliceReconfigure "/>
359                                     </record>
360                                     <call module='ran-slice-api' rpc='instantiateRANSliceReconfigure' mode='sync' >
361                                         <outcome value='failure'>
362                                             <return status='failure'>
363                                                 <parameter name='ack-final' value='Y' />
364                                             </return>
365                                         </outcome>
366                                     </call>
367                                 </block>
368                             </outcome>
369                         </switch>
370                     </block>
371                 </outcome>
372             </switch>
373             <return status='success'>
374                 <parameter name="ack-final" value="Y" />
375                 <parameter name="error-code" value="200" />
376                 <parameter name="error-message" value="SUCCESSFUL Execution" />
377             </return>
378         </block>
379     </method>
380 </service-logic>