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='oofpcipoc-api' version='${project.version}'>
4 <method rpc='generic-neighbor-configuration' mode='sync'>
6 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
7 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
8 <parameter name="level" value="info" />
9 <parameter name="field1" value="RPC to Configure Neighbors INVOKED. Number of Neighbors to configure: "/>
10 <parameter name="field2" value="`$generic-neighbor-configuration-input.lte-cell-number-of-entries`"/>
12 <for index='idx' start='0' end="`$generic-neighbor-configuration-input.lte-cell-number-of-entries`" >
13 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
14 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
15 <parameter name="level" value="info" />
16 <parameter name="field1" value="Input RPC Payload request. Neighbor #: "/>
17 <parameter name="field2" value="`$idx`"/>
18 <parameter name="field3" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].plmnid`"/>
19 <parameter name="field4" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].cid`"/>
20 <parameter name="field5" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].phy-cell-id`"/>
21 <parameter name="field6" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].pnf-name`"/>
22 <parameter name="field7" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].blacklisted`"/>
25 <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
26 <parameter name='fileName' value='/opt/onap/ccsdk/data/properties/sdnr-oofpcipoc-api-dg.properties' />
27 <parameter name='contextPrefix' value='prop' />
29 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
30 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
31 <parameter name="level" value="info" />
32 <parameter name="field1" value="Properties read .. generic neighbor config template"/>
33 <parameter name="field2" value="`$prop.restapi.generic-neighbor-patch.template`"/>
34 <parameter name="field3" value="`$prop.controller.user`"/>
35 <parameter name="field4" value="`$prop.controller.pwd`"/>
36 <parameter name="field5" value="`$prop.controller.url`"/>
39 <parameter name="prop.oofpcipoc-dmaap-config-resp.timestamp" value="`$generic-neighbor-configuration-input.timeStamp`"/>
40 <parameter name="prop.oofpcipoc-dmaap-config-resp.requestID" value="`$generic-neighbor-configuration-input.requestID`"/>
41 <parameter name="prop.oofpcipoc-dmaap-config-resp.subrequestID" value="`$generic-neighbor-configuration-input.subRequestID`"/>
43 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
44 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
45 <parameter name="level" value="info" />
46 <parameter name="field1" value="DMAAP Message Header stored in properties file "/>
47 <parameter name="field2" value="`$prop.oofpcipoc-dmaap-config-resp.timestamp`"/>
48 <parameter name="field3" value="`$prop.oofpcipoc-dmaap-config-resp.requestID`"/>
49 <parameter name="field4" value="`$prop.oofpcipoc-dmaap-config-resp.subrequestID`"/>
52 <parameter name="tmp.idGNBCUCP" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[0].pnf-name`"/>
55 <parameter name='tmp.getAnchors.URL' value="`$prop.restapi.cps.anchors.endpoint`"/>
57 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
58 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
59 <parameter name="level" value="info" />
60 <parameter name="field1" value="URL to fetch the anchors"/>
61 <parameter name="field2" value="`$tmp.getAnchors.URL`"/>
63 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
64 <parameter name="restapiUrl" value="`$tmp.getAnchors.URL`"/>
65 <parameter name="httpMethod" value="GET"/>
66 <parameter name="restapiUser" value="cpsuser" />
67 <parameter name="restapiPassword" value="cpsr0cks!"/>
68 <parameter name="responsePrefix" value="get-anchors-cps-response"/>
69 <parameter name='contentType' value='application/json' />
70 <parameter name='format' value='json' />
71 <parameter name='accept' value='application/json' />
72 <parameter name="convertResponse" value="true"/>
73 <outcome value='failure'>
76 <parameter name='error-code' value='500'/>
77 <parameter name='error-message' value='Error Getting Info from CPS. Aborting RPC executiopn'/>
79 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
80 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
81 <parameter name="level" value="info" />
82 <parameter name="field1" value="Failed to fetch anchors from CPS"/>
86 <outcome value='success'>
88 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
89 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
90 <parameter name="level" value="info" />
91 <parameter name="field1" value="Successfully Obtained anchors from CPS"/>
92 <parameter name="field2" value="`$get-anchors-cps-response._length`"/>
94 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
95 <parameter name='filename' value='/opt/opendaylight/current/data/log/generic-neighbor-config-context.log' />
101 <parameter name='tmp.anchors.length' value="`$get-anchors-cps-response._length`"/>
104 <parameter name='tmp.RIC.length' value="0"/>
106 <for index='anc' start='0' end='`$tmp.anchors.length`'>
107 <block atomic='true'>
108 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
109 <parameter name='outputPath' value='tmp.schemaset.name' />
110 <parameter name='source' value="`'get-anchors-cps-response.['+$anc+'].schemaSetName'`" />
112 <switch test='`$tmp.schemaset.name`'>
113 <outcome value='ran-network'>
114 <block atomic='true'>
116 <parameter name='tmp.RIC.length' value="`$tmp.RIC.length+1`"/>
118 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
119 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
120 <parameter name="level" value="info" />
121 <parameter name="field1" value="Applicable RIC length"/>
122 <parameter name="field2" value="`$tmp.RIC.length`"/>
129 <for index='anc' start='0' end='`$tmp.anchors.length`'>
130 <block atomic='true'>
131 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
132 <parameter name='outputPath' value='tmp.schemaset.name' />
133 <parameter name='source' value="`'get-anchors-cps-response.['+$anc+'].schemaSetName'`" />
135 <switch test='`$tmp.schemaset.name`'>
136 <outcome value='ran-network'>
137 <block atomic='true'>
138 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
139 <parameter name='outputPath' value='tmp.anchor.name' />
140 <parameter name='source' value="`'get-anchors-cps-response.['+$anc+'].name'`" />
142 <block atomic='true'>
143 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
144 <parameter name="source" value="`$prop.restapi.cps.tbdmt.execute.endpoint`"/>
145 <parameter name="outputPath" value="tmp.cps.getNearRTRICByidGNBCUCPFunction.url"/>
146 <parameter name="target" value="{schemaSet}"/>
147 <parameter name="replacement" value="`$tmp.anchor.name`"/>
149 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
150 <parameter name="source" value="`$tmp.cps.getNearRTRICByidGNBCUCPFunction.url`"/>
151 <parameter name="outputPath" value="tmp.cps.getNearRTRICByidGNBCUCPFunction.url"/>
152 <parameter name="target" value="{templateId}"/>
153 <parameter name="replacement" value="`$prop.tbdmt.template.get-nearrtric-by-idgnbcucpfunction`"/>
155 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
156 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
157 <parameter name="level" value="info" />
158 <parameter name="field1" value="URL for CPS TDBMT to Get NearRTRIC for idGNBCUCPFunction"/>
159 <parameter name='field2' value="`$tmp.cps.getNearRTRICByidGNBCUCPFunction.url`" />
161 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
162 <parameter name="restapiUrl" value="`$tmp.cps.getNearRTRICByidGNBCUCPFunction.url`"/>
163 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/cps-templates/cps-get-nearrtric-by-idgnbcucpfunction.json'`" />
164 <parameter name="httpMethod" value="POST"/>
165 <parameter name="responsePrefix" value="getNFNSSIRIC-cps-response"/>
166 <parameter name='contentType' value='application/json' />
167 <parameter name='format' value='json' />
168 <parameter name='accept' value='application/json' />
169 <parameter name="convertResponse" value="true"/>
170 <outcome value='failure'>
173 <parameter name='error-code' value='500'/>
174 <parameter name='error-message' value='Error Getting Info from CPS. Aborting RPC executiopn'/>
178 <outcome value='success'>
179 <block atomic='true'>
180 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
181 <parameter name='outputPath' value='tmp.nearRTRICId' />
182 <parameter name='source' value="`'getNFNSSIRIC-cps-response.[0]'`" />
184 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
185 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
186 <parameter name="level" value="info" />
187 <parameter name="field1" value="Successfully Obtained NearRTRIC ID info from CPS"/>
188 <parameter name="field2" value="`$tmp.nearRTRICId`"/>
190 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
191 <parameter name='filename' value='/opt/opendaylight/current/data/log/generic-neighbor-config-context.log' />
202 <switch test='`$prop.ransim-mounted`'>
203 <outcome value='false'>
204 <for index='idx' start='0' end="`$generic-neighbor-configuration-input.lte-cell-number-of-entries`" >
205 <block atomic='true'>
207 <parameter name="tmp.alias" value="`$generic-neighbor-configuration-input.alias`"/>
208 <parameter name="tmp.plmnid" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].plmnid`"/>
209 <parameter name="tmp.cid" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].cid`"/>
210 <parameter name="tmp.phy-cell-id" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].phy-cell-id`"/>
211 <parameter name="tmp.pnf-name" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].pnf-name`"/>
212 <parameter name="tmp.blacklisted" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].blacklisted`"/>
214 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
215 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
216 <parameter name="level" value="info" />
217 <parameter name="field1" value="Temporary varaibles set. Neighbor #: "/>
218 <parameter name="field2" value="`$idx`"/>
219 <parameter name="field3" value="`$tmp.plmnid`"/>
220 <parameter name="field4" value="`$tmp.cid`"/>
221 <parameter name="field5" value="`$tmp.phy-cell-id`"/>
222 <parameter name="field6" value="`$tmp.pnf-name`"/>
223 <parameter name="field7" value="`$tmp.blacklisted`"/>
225 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
226 <parameter name="source" value="`$prop.restapi.lte-ran-neighbor-in-use`"/>
227 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
228 <parameter name="target" value="{alias}"/>
229 <parameter name="replacement" value="`$tmp.alias`"/>
231 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
232 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
233 <parameter name="level" value="info" />
234 <parameter name="field1" value="Config Neighbor List URL"/>
235 <parameter name="field2" value="`$tmp.config-neighbor-service-url`"/>
237 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
238 <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
239 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
240 <parameter name="target" value="{plmnid}"/>
241 <parameter name="replacement" value="`$tmp.plmnid`"/>
243 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
244 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
245 <parameter name="level" value="info" />
246 <parameter name="field1" value="Config Neighbor List URL"/>
247 <parameter name="field2" value="`$tmp.config-neighbor-service-url`"/>
249 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
250 <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
251 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
252 <parameter name="target" value="{cid}"/>
253 <parameter name="replacement" value="`$tmp.cid`"/>
255 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
256 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.config-neighbor-service-url`"/>
257 <parameter name="restapiUser" value="`$prop.controller.user`" />
258 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
259 <parameter name="httpMethod" value="GET"/>
260 <parameter name="responsePrefix" value="oofpci-neighbor-response"/>
261 <parameter name='contentType' value='application/json' />
262 <parameter name='format' value='json' />
263 <outcome value='failure'>
264 <return status='failure'>
265 <parameter name='ack-final' value='Y'/>
266 <parameter name="error-code" value="500" />
267 <parameter name="error-message" value="Error getting details about new neighbor " />
270 <outcome value='success'>
272 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
273 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
274 <parameter name="level" value="info" />
275 <parameter name="field1" value="Details about Neighbor Pre-configuration"/>
276 <parameter name="field2" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].plmnid`"/>
277 <parameter name="field3" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].cid`"/>
278 <parameter name="field4" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].phy-cell-id`"/>
279 <parameter name="field5" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].pnf-name`"/>
280 <parameter name="field6" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].blacklisted`"/>
285 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
286 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/oofpcipoc-generic-neighbor-patch.json'`" />
287 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.config-neighbor-service-url`"/>
288 <parameter name="restapiUser" value="`$prop.controller.user`" />
289 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
290 <parameter name="httpMethod" value="PATCH"/>
291 <parameter name="responsePrefix" value="oofpci-neighbor-patch-response"/>
292 <parameter name='contentType' value='application/yang.patch+json' />
293 <parameter name='format' value='json' />
294 <parameter name='accept' value='application/yang.patch-status+json' />
295 <outcome value='failure'>
297 <return status='failure'>
298 <parameter name='ack-final' value='Y'/>
299 <parameter name="error-code" value="500" />
300 <parameter name="error-message" value="Error adding a new neighbor" />
304 <outcome value='success'>
306 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
307 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
308 <parameter name="level" value="info" />
309 <parameter name="field1" value="PATCH Neighbor Executed Successfully "/>
314 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
315 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.config-neighbor-service-url`"/>
316 <parameter name="restapiUser" value="`$prop.controller.user`" />
317 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
318 <parameter name="httpMethod" value="GET"/>
319 <parameter name="responsePrefix" value="oofpci-neighbor-response"/>
320 <parameter name='contentType' value='application/json' />
321 <parameter name='format' value='json' />
322 <outcome value='failure'>
323 <return status='failure'>
324 <parameter name='ack-final' value='Y'/>
325 <parameter name="error-code" value="500" />
326 <parameter name="error-message" value="Error getting details about new neighbor " />
329 <outcome value='success'>
331 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
332 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
333 <parameter name="level" value="info" />
334 <parameter name="field1" value="Details about Neighbor Post-configuration"/>
335 <parameter name="field2" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].plmnid`"/>
336 <parameter name="field3" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].cid`"/>
337 <parameter name="field4" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].phy-cell-id`"/>
338 <parameter name="field5" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].pnf-name`"/>
339 <parameter name="field6" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].blacklisted`"/>
344 <switch test='`$prop.configdb-deployed`'>
345 <outcome value='false'>
346 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
347 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
348 <parameter name="level" value="info" />
349 <parameter name="field1" value="ConfigDB Update Skipped"/>
352 <outcome value='true'>
353 <block atomic='true'>
354 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
355 <parameter name="source" value="`$prop.restapi.configdb.patch-ho-for-nbr`"/>
356 <parameter name="outputPath" value="tmp.configdb.patch-ho-for-nbr.url"/>
357 <parameter name="target" value="{cellId}"/>
358 <parameter name="replacement" value="`$tmp.alias`"/>
360 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
361 <parameter name="source" value="`$tmp.configdb.patch-ho-for-nbr.url`"/>
362 <parameter name="outputPath" value="tmp.configdb.patch-ho-for-nbr.url"/>
363 <parameter name="target" value="{targetCellId}"/>
364 <parameter name="replacement" value="`$tmp.cid`"/>
366 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
367 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
368 <parameter name="level" value="info" />
369 <parameter name="field1" value="URL for configDB PCI Update"/>
370 <parameter name='field2' value="`$prop.configdb.url + $tmp.configdb.patch-ho-for-nbr.url`" />
371 <parameter name='field3' value="`$tmp.alias`" />
372 <parameter name='field4' value="`$tmp.cid`" />
374 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
375 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/oofpcipoc-patch-configdb-ho-for-nbr.json'`" />
376 <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.patch-ho-for-nbr.url`"/>
377 <parameter name="httpMethod" value="PATCH"/>
378 <parameter name="responsePrefix" value="oofpci-configdb-response"/>
379 <parameter name='contentType' value='application/json' />
380 <parameter name='format' value='json' />
381 <parameter name='accept' value='application/json' />
382 <outcome value='failure'>
384 <return status='failure'>
385 <parameter name='ack-final' value='Y'/>
386 <parameter name="error-code" value="500" />
387 <parameter name="error-message" value="Error updating configDB. Aborting Nbr HO configuration" />
391 <outcome value='success'>
393 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
394 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
395 <parameter name="level" value="info" />
396 <parameter name="field1" value="HO Value for nbr updated in ConfigDB"/>
407 <outcome value='true'>
408 <for index='idx' start='0' end="`$generic-neighbor-configuration-input.lte-cell-number-of-entries`" >
409 <block atomic='true'>
411 <parameter name="tmp.alias" value="`$generic-neighbor-configuration-input.alias`"/>
412 <parameter name="tmp.plmnid" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].plmnid`"/>
413 <parameter name="tmp.cid" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].cid`"/>
414 <parameter name="tmp.phy-cell-id" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].phy-cell-id`"/>
415 <parameter name="tmp.pnf-name" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].pnf-name`"/>
416 <parameter name="tmp.blacklisted" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].blacklisted`"/>
418 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
419 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
420 <parameter name="level" value="info" />
421 <parameter name="field1" value="Temporary varaibles set. Neighbor #: "/>
422 <parameter name="field2" value="`$idx`"/>
423 <parameter name="field3" value="`$tmp.plmnid`"/>
424 <parameter name="field4" value="`$tmp.cid`"/>
425 <parameter name="field5" value="`$tmp.phy-cell-id`"/>
426 <parameter name="field6" value="`$tmp.pnf-name`"/>
427 <parameter name="field7" value="`$tmp.blacklisted`"/>
429 <switch test='`$tmp.blacklisted`'>
430 <outcome value='true'>
431 <block atomic='true'>
433 <parameter name='tmp.isHOAllowed' value='false' />
437 <outcome value='false'>
438 <block atomic='true'>
440 <parameter name='tmp.isHOAllowed' value='true' />
446 <parameter name="tmp.idNRCellCU" value="`$generic-neighbor-configuration-input.alias`"/>
447 <parameter name="tmp.idNRCellRelation" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].cid`"/>
448 <parameter name="tmp.idGNBCUCPFunction" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].pnf-name`"/>
450 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
451 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
452 <parameter name="level" value="info" />
453 <parameter name="field1" value="idGNBCUCPFunction"/>
454 <parameter name="field2" value="`$tmp.idGNBCUCPFunction`"/>
455 <parameter name="field3" value="idNRCellCU"/>
456 <parameter name="field4" value="`$tmp.idNRCellCU`"/>
457 <parameter name="field5" value="idNRCellRelation"/>
458 <parameter name="field6" value="`$tmp.idNRCellRelation`"/>
459 <parameter name="field7" value="isHOAllowed"/>
460 <parameter name="field8" value="`$tmp.isHOAllowed`"/>
462 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
463 <parameter name="source" value="`$prop.restapi.lte-ran-neighbor-in-use.ransim-mounted`"/>
464 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
465 <parameter name="target" value="{idNearRTRIC}"/>
466 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
468 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
469 <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
470 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
471 <parameter name="target" value="{mountName}"/>
472 <parameter name="replacement" value="`$tmp.idGNBCUCPFunction`"/>
474 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
475 <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
476 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
477 <parameter name="target" value="{idGNBCUCPFunction}"/>
478 <parameter name="replacement" value="`$tmp.idGNBCUCPFunction`"/>
480 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
481 <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
482 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
483 <parameter name="target" value="{idNRCellCU}"/>
484 <parameter name="replacement" value="`$tmp.idNRCellCU`"/>
486 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
487 <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
488 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
489 <parameter name="target" value="{idNRCellRelation}"/>
490 <parameter name="replacement" value="`$tmp.idNRCellRelation`"/>
492 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
493 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
494 <parameter name="level" value="info" />
495 <parameter name="field1" value="Config Neighbor List URL"/>
496 <parameter name="field2" value="`$tmp.config-neighbor-service-url`"/>
498 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
499 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.config-neighbor-service-url`"/>
500 <parameter name="restapiUser" value="`$prop.controller.user`" />
501 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
502 <parameter name="httpMethod" value="GET"/>
503 <parameter name="responsePrefix" value="oofpci-neighbor-response"/>
504 <parameter name='contentType' value='application/json' />
505 <parameter name='format' value='json' />
506 <outcome value='failure'>
507 <return status='failure'>
508 <parameter name='ack-final' value='Y'/>
509 <parameter name="error-code" value="500" />
510 <parameter name="error-message" value="Error getting details about new neighbor " />
513 <outcome value='success'>
515 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
516 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
517 <parameter name="level" value="info" />
518 <parameter name="field1" value="Details about Neighbor Pre-configuration"/>
519 <parameter name="field2" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].plmnid`"/>
520 <parameter name="field3" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].cid`"/>
521 <parameter name="field4" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].phy-cell-id`"/>
522 <parameter name="field5" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].pnf-name`"/>
523 <parameter name="field6" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].blacklisted`"/>
528 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
529 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/oofpcipoc-generic-neighbor-patch.json'`" />
530 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.config-neighbor-service-url`"/>
531 <parameter name="restapiUser" value="`$prop.controller.user`" />
532 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
533 <parameter name="httpMethod" value="PATCH"/>
534 <parameter name="responsePrefix" value="oofpci-neighbor-patch-response"/>
535 <parameter name='contentType' value='application/yang.patch+json' />
536 <parameter name='format' value='json' />
537 <parameter name='accept' value='application/yang.patch-status+json' />
538 <outcome value='failure'>
540 <return status='failure'>
541 <parameter name='ack-final' value='Y'/>
542 <parameter name="error-code" value="500" />
543 <parameter name="error-message" value="Error adding a new neighbor" />
547 <outcome value='success'>
549 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
550 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
551 <parameter name="level" value="info" />
552 <parameter name="field1" value="PATCH Neighbor Executed Successfully "/>
557 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
558 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.config-neighbor-service-url`"/>
559 <parameter name="restapiUser" value="`$prop.controller.user`" />
560 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
561 <parameter name="httpMethod" value="GET"/>
562 <parameter name="responsePrefix" value="oofpci-neighbor-response"/>
563 <parameter name='contentType' value='application/json' />
564 <parameter name='format' value='json' />
565 <outcome value='failure'>
566 <return status='failure'>
567 <parameter name='ack-final' value='Y'/>
568 <parameter name="error-code" value="500" />
569 <parameter name="error-message" value="Error getting details about new neighbor " />
572 <outcome value='success'>
574 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
575 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
576 <parameter name="level" value="info" />
577 <parameter name="field1" value="Details about Neighbor Post-configuration"/>
578 <parameter name="field2" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].plmnid`"/>
579 <parameter name="field3" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].cid`"/>
580 <parameter name="field4" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].phy-cell-id`"/>
581 <parameter name="field5" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].pnf-name`"/>
582 <parameter name="field6" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].blacklisted`"/>
587 <switch test='`$prop.configdb-deployed`'>
588 <outcome value='false'>
589 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
590 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
591 <parameter name="level" value="info" />
592 <parameter name="field1" value="ConfigDB Update Skipped"/>
595 <outcome value='true'>
596 <block atomic='true'>
597 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
598 <parameter name="source" value="`$prop.restapi.configdb.patch-ho-for-nbr`"/>
599 <parameter name="outputPath" value="tmp.configdb.patch-ho-for-nbr.url"/>
600 <parameter name="target" value="{cellId}"/>
601 <parameter name="replacement" value="`$tmp.alias`"/>
603 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
604 <parameter name="source" value="`$tmp.configdb.patch-ho-for-nbr.url`"/>
605 <parameter name="outputPath" value="tmp.configdb.patch-ho-for-nbr.url"/>
606 <parameter name="target" value="{targetCellId}"/>
607 <parameter name="replacement" value="`$tmp.cid`"/>
609 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
610 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
611 <parameter name="level" value="info" />
612 <parameter name="field1" value="URL for configDB PCI Update"/>
613 <parameter name='field2' value="`$prop.configdb.url + $tmp.configdb.patch-ho-for-nbr.url`" />
614 <parameter name='field3' value="`$tmp.alias`" />
615 <parameter name='field4' value="`$tmp.cid`" />
617 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
618 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/oofpcipoc-patch-configdb-ho-for-nbr.json'`" />
619 <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.patch-ho-for-nbr.url`"/>
620 <parameter name="httpMethod" value="PATCH"/>
621 <parameter name="responsePrefix" value="oofpci-configdb-response"/>
622 <parameter name='contentType' value='application/json' />
623 <parameter name='format' value='json' />
624 <parameter name='accept' value='application/json' />
625 <outcome value='failure'>
627 <return status='failure'>
628 <parameter name='ack-final' value='Y'/>
629 <parameter name="error-code" value="500" />
630 <parameter name="error-message" value="Error updating configDB. Aborting Nbr HO configuration" />
634 <outcome value='success'>
636 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
637 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
638 <parameter name="level" value="info" />
639 <parameter name="field1" value="HO Value for nbr updated in ConfigDB"/>
651 <block atomic='true'>
652 <execute plugin="org.onap.ccsdk.sli.plugins.template.TemplateNode" method="evaluateTemplate" >
653 <parameter name='templatePath' value='oofpcipoc-dmaap-publish-modifyconfiganr-resp-payload-template.vtl' />
654 <parameter name='output' value='resp-payload' />
655 <parameter name='prefix' value='sdnr' />
656 <outcome value='success'>
657 <block atomic='true'>
658 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
659 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
660 <parameter name="level" value="info" />
661 <parameter name="field1" value="__TIMESTAMP__"/>
662 <parameter name="field2" value="Redndred sdnr payload template as a string"/>
663 <parameter name='field3' value='`$sdnr.resp-payload`' />
667 <outcome value='failure'>
669 <return status='failure'>
670 <parameter name='ack-final' value='Y'/>
671 <parameter name="error-code" value="500" />
672 <parameter name="error-message" value="Error creating SDNR response payload string. Aborting Generic neighbor configuration" />
677 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replaceAll' >
678 <parameter name="source" value="`$sdnr.resp-payload`"/>
679 <parameter name="outputPath" value="tmp.oofpcipoc-dmaap-config-resp.payload"/>
680 <parameter name="target" value="\n"/>
681 <parameter name="replacement" value=""/>
682 <outcome value='success'>
683 <block atomic='true'>
684 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
685 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
686 <parameter name="level" value="info" />
687 <parameter name="field1" value="__TIMESTAMP__"/>
688 <parameter name="field2" value="Redndred template with lines removed \r"/>
689 <parameter name='field3' value='`$tmp.oofpcipoc-dmaap-config-resp.payload`' />
693 <outcome value='failure'>
695 <return status='failure'>
696 <parameter name='ack-final' value='Y'/>
697 <parameter name="error-code" value="500" />
698 <parameter name="error-message" value="Error removing lines from SDNR response payload string. Aborting Generic neighbor configuration" />
703 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replaceAll' >
704 <parameter name="source" value="`$tmp.oofpcipoc-dmaap-config-resp.payload`"/>
705 <parameter name="outputPath" value="tmp.oofpcipoc-dmaap-config-resp.payload"/>
706 <parameter name="target" value="\t"/>
707 <parameter name="replacement" value=""/>
708 <outcome value='success'>
709 <block atomic='true'>
710 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
711 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
712 <parameter name="level" value="info" />
713 <parameter name="field1" value="__TIMESTAMP__"/>
714 <parameter name="field2" value="Redndred template with tabs removed \r"/>
715 <parameter name='field3' value='`$tmp.oofpcipoc-dmaap-config-resp.payload`' />
719 <outcome value='failure'>
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 removing tabs from SDNR response payload string. Aborting Generic neighbor configuration" />
730 <block atomic='true'>
732 <parameter name='tmp.oofpcipoc-dmaap-config-resp.rpc-name' value='`$prop.oofpcipoc-dmaap-config-resp.rpc-name.modifyconfiganr`'/>
734 <block atomic='true'>
735 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replaceAll' >
736 <parameter name="source" value="`$prop.oofpcipoc-dmaap-config-resp.timestamp`"/>
737 <parameter name="outputPath" value="prop.oofpcipoc-dmaap-config-resp.timestamp"/>
738 <parameter name="target" value='"'/>
739 <parameter name="replacement" value=''/>
740 <outcome value='success'>
741 <block atomic='true'>
742 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
743 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
744 <parameter name="level" value="info" />
745 <parameter name="field1" value="Quotation removed from timestamp for DMAAP response header \r"/>
746 <parameter name="field2" value="`$prop.oofpcipoc-dmaap-config-resp.timestamp`"/>
750 <outcome value='failure'>
752 <return status='failure'>
753 <parameter name='ack-final' value='Y'/>
754 <parameter name="error-code" value="500" />
755 <parameter name="error-message" value="Error removing quotation from timestamp for DMAAP response header. Aborting Generic neighbor configuration" />
760 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replaceAll' >
761 <parameter name="source" value="`$prop.oofpcipoc-dmaap-config-resp.requestID`"/>
762 <parameter name="outputPath" value="prop.oofpcipoc-dmaap-config-resp.requestID"/>
763 <parameter name="target" value='"'/>
764 <parameter name="replacement" value=''/>
765 <outcome value='success'>
766 <block atomic='true'>
767 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
768 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
769 <parameter name="level" value="info" />
770 <parameter name="field1" value="Quotation removed from requestID for DMAAP response header \r"/>
771 <parameter name="field2" value="`$prop.oofpcipoc-dmaap-config-resp.requestID`"/>
775 <outcome value='failure'>
777 <return status='failure'>
778 <parameter name='ack-final' value='Y'/>
779 <parameter name="error-code" value="500" />
780 <parameter name="error-message" value="Error removing quotation from requestID for DMAAP response header. Aborting Generic neighbor configuration" />
785 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replaceAll' >
786 <parameter name="source" value="`$prop.oofpcipoc-dmaap-config-resp.subrequestID`"/>
787 <parameter name="outputPath" value="prop.oofpcipoc-dmaap-config-resp.subrequestID"/>
788 <parameter name="target" value='"'/>
789 <parameter name="replacement" value=''/>
790 <outcome value='success'>
791 <block atomic='true'>
792 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
793 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
794 <parameter name="level" value="info" />
795 <parameter name="field1" value="Quotation removed from subRequestID for DMAAP response header \r"/>
796 <parameter name="field2" value="`$prop.oofpcipoc-dmaap-config-resp.subrequestID`"/>
800 <outcome value='failure'>
802 <return status='failure'>
803 <parameter name='ack-final' value='Y'/>
804 <parameter name="error-code" value="500" />
805 <parameter name="error-message" value="Error removing quotation from timestamp for DMAAP response header. Aborting Generic neighbor configuration" />
811 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
812 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
813 <parameter name="level" value="info" />
814 <parameter name="field1" value="__TIMESTAMP__"/>
815 <parameter name="field2" value="Before DMAAP Event - template file name, restapiURL"/>
816 <parameter name='field3' value="`$prop.restapi.templateDir + '/' + $prop.restapi.dmaap-publish-config-response.template`" />
817 <parameter name='field4' value="`$prop.dmaap-message-router.url + '/' + $prop.oofpcipoc-dmaap-configuration-response.topic`" />
818 <parameter name="field5" value="Before DMAAP Event - Timestamp, RequestID, subRequestID"/>
819 <parameter name="field6" value="`$prop.oofpcipoc-dmaap-config-resp.timestamp`"/>
820 <parameter name="field7" value="`$prop.oofpcipoc-dmaap-config-resp.requestID`"/>
821 <parameter name="field8" value="`$prop.oofpcipoc-dmaap-config-resp.subrequestID`"/>
823 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
824 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.dmaap-publish-config-response.template`" />
825 <parameter name='restapiUrl' value="`$prop.dmaap-message-router.url + '/' + $prop.oofpcipoc-dmaap-configuration-response.topic`" />
826 <parameter name='format' value='json' />
827 <parameter name='httpMethod' value='POST' />
828 <parameter name='contentType' value='application/json' />
829 <parameter name='responsePrefix' value='dmaap' />
830 <outcome value='failure'>
832 <return status='failure'>
833 <parameter name='ack-final' value='Y'/>
834 <parameter name="error-code" value="500" />
835 <parameter name="error-message" value="Error publishing DMAAP Config Response message. ConfigDB Updated; TO be rolled back...will handle next release" />
839 <outcome value='success'>
841 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
842 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
843 <parameter name="level" value="info" />
844 <parameter name="field1" value="DMAAP Config Response Message Successfully Published "/>
850 <return status='success'>
851 <parameter name="ack-final-indicator" value="Y" />
852 <parameter name="error-code" value="200" />
853 <parameter name="error-message" value="SUCCESSFUL Execution" />