Modify SDN-R to use new yang model in netconf session with RAN-Sim
[ccsdk/distribution.git] / platform-logic / oofpcipoc-api / src / main / xml / oofpcipoc-api_generic-neighbor-configuration.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='oofpcipoc-api' version='${project.version}'>
4     <method rpc='generic-neighbor-configuration' 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/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`"/>
11             </record>
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`"/>
23                 </record>
24             </for>
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' />
28             </execute>
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`"/>
37             </record>
38             <set>
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`"/>
42             </set>
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`"/>
50             </record>
51             <set>
52                 <parameter name="tmp.idGNBCUCP" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[0].pnf-name`"/>
53             </set>
54             <set>
55                 <parameter name='tmp.getAnchors.URL' value="`$prop.restapi.cps.anchors.endpoint`"/>
56             </set>
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`"/>
62             </record>
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'>
74                     <block>
75                         <set>
76                             <parameter name='error-code' value='500'/>
77                             <parameter name='error-message' value='Error Getting Info from CPS. Aborting RPC executiopn'/>
78                         </set>
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"/>
83                         </record>
84                     </block>
85                 </outcome>
86                 <outcome value='success'>
87                     <block atomic='true'>
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`"/>
93                         </record>
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' />
96                         </execute>
97                     </block>
98                 </outcome>
99             </execute>
100             <set>
101                 <parameter name='tmp.anchors.length' value="`$get-anchors-cps-response._length`"/>
102             </set>
103             <set>
104                 <parameter name='tmp.RIC.length' value="0"/>
105             </set>
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'`" />
111                     </execute>
112                     <switch test='`$tmp.schemaset.name`'>
113                         <outcome value='ran-network'>
114                             <block atomic='true'>
115                                 <set>
116                                     <parameter name='tmp.RIC.length' value="`$tmp.RIC.length+1`"/>
117                                 </set>
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`"/>
123                                 </record>
124                             </block>
125                         </outcome>
126                     </switch>
127                 </block>
128             </for>
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'`" />
134                     </execute>
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'`" />
141                                 </execute>
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`"/>
148                                     </execute>
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`"/>
154                                     </execute>
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`" />
160                                     </record>
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'>
171                                             <block>
172                                                 <set>
173                                                     <parameter name='error-code' value='500'/>
174                                                     <parameter name='error-message' value='Error Getting Info from CPS. Aborting RPC executiopn'/>
175                                                 </set>
176                                             </block>
177                                         </outcome>
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]'`" />
183                                                 </execute>
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`"/>
189                                                 </record>
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' />
192                                                 </execute>
193                                             </block>
194                                         </outcome>
195                                     </execute>
196                                 </block>
197                             </block>
198                         </outcome>
199                     </switch>
200                 </block>
201             </for>
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'>
206                             <set>
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`"/>
213                             </set>
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`"/>
224                             </record>
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`"/>
230                             </execute>
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`"/>
236                             </record>
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`"/>
242                             </execute>
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`"/>
248                             </record>
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`"/>
254                             </execute>
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 " />
268                                     </return>
269                                 </outcome>
270                                 <outcome value='success'>
271                                     <block>
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`"/>
281                                         </record>
282                                     </block>
283                                 </outcome>
284                             </execute>
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'>
296                                     <block>
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" />
301                                         </return>
302                                     </block>
303                                 </outcome>
304                                 <outcome value='success'>
305                                     <block>
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 "/>
310                                         </record>
311                                     </block>
312                                 </outcome>
313                             </execute>
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 " />
327                                     </return>
328                                 </outcome>
329                                 <outcome value='success'>
330                                     <block>
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`"/>
340                                         </record>
341                                     </block>
342                                 </outcome>
343                             </execute>
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"/>
350                                     </record>
351                                 </outcome>
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`"/>
359                                         </execute>
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`"/>
365                                         </execute>
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`" />
373                                         </record>
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'>
383                                                 <block>
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" />
388                                                     </return>
389                                                 </block>
390                                             </outcome>
391                                             <outcome value='success'>
392                                                 <block>
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"/>
397                                                     </record>
398                                                 </block>
399                                             </outcome>
400                                         </execute>
401                                     </block>
402                                 </outcome>
403                             </switch>
404                         </block>
405                     </for>
406                 </outcome>
407                 <outcome value='true'>
408                     <for index='idx' start='0' end="`$generic-neighbor-configuration-input.lte-cell-number-of-entries`" >
409                         <block atomic='true'>
410                             <set>
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`"/>
417                             </set>
418                             <switch test='`$tmp.blacklisted`'>
419                                 <outcome value='true'>
420                                     <block atomic='true'>
421                                         <set>
422                                             <parameter name='tmp.isHOAllowed' value='false' />
423                                         </set>
424                                     </block>
425                                 </outcome>
426                                 <outcome value='false'>
427                                     <block atomic='true'>
428                                         <set>
429                                             <parameter name='tmp.isHOAllowed' value='true' />
430                                         </set>
431                                     </block>
432                                 </outcome>
433                             </switch>
434                             <set>
435                                 <parameter name="tmp.idNRCellCU" value="`$generic-neighbor-configuration-input.alias`"/>
436                                 <parameter name="tmp.idNRCellRelation" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].cid`"/>
437                                 <parameter name="tmp.idGNBCUCPFunction" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].pnf-name`"/>
438                             </set>
439                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
440                                 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
441                                 <parameter name="level" value="info" />
442                                 <parameter name="field1" value="Temporary varaibles set. Neighbor #:  "/>
443                                 <parameter name="field2" value="`$idx`"/>
444                                 <parameter name="field3" value="`$tmp.plmnid`"/>
445                                 <parameter name="field4" value="`$tmp.cid`"/>
446                                 <parameter name="field5" value="`$tmp.phy-cell-id`"/>
447                                 <parameter name="field6" value="`$tmp.pnf-name`"/>
448                                 <parameter name="field7" value="`$tmp.blacklisted`"/>
449                                 <parameter name="field8" value="`tmp.idGNBCUCPFunction`"/>
450                                 <parameter name="field9" value="`tmp.idNRCellCU`"/>
451                                 <parameter name="field10" value="`tmp.idNRCellRelation`"/>
452                                 <parameter name="field11" value="`$tmp.isHOAllowed`"/>
453                             </record>
454                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
455                                 <parameter name="source" value="`$prop.restapi.lte-ran-neighbor-in-use.ransim-mounted`"/>
456                                 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
457                                 <parameter name="target" value="{idNearRTRIC}"/>
458                                 <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
459                             </execute>
460                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
461                                 <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
462                                 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
463                                 <parameter name="target" value="{mountName}"/>
464                                 <parameter name="replacement" value="`$tmp.idGNBCUCPFunction`"/>
465                             </execute>
466                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
467                                 <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
468                                 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
469                                 <parameter name="target" value="{idGNBCUCPFunction}"/>
470                                 <parameter name="replacement" value="`$tmp.idGNBCUCPFunction`"/>
471                             </execute>
472                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
473                                 <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
474                                 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
475                                 <parameter name="target" value="{idNRCellCU}"/>
476                                 <parameter name="replacement" value="`$tmp.idNRCellCU`"/>
477                             </execute>
478                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
479                                 <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
480                                 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
481                                 <parameter name="target" value="{idNRCellRelation}"/>
482                                 <parameter name="replacement" value="`$tmp.idNRCellRelation`"/>
483                             </execute>
484                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
485                                 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
486                                 <parameter name="level" value="info" />
487                                 <parameter name="field1" value="Config Neighbor List URL"/>
488                                 <parameter name="field2" value="`$tmp.config-neighbor-service-url`"/>
489                             </record>
490                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
491                                 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.config-neighbor-service-url`"/>
492                                 <parameter name="restapiUser" value="`$prop.controller.user`" />
493                                 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
494                                 <parameter name="httpMethod" value="GET"/>
495                                 <parameter name="responsePrefix" value="oofpci-neighbor-response"/>
496                                 <parameter name='contentType' value='application/json' />
497                                 <parameter name='format' value='json' />
498                                 <outcome value='failure'>
499                                     <return status='failure'>
500                                         <parameter name='ack-final' value='Y'/>
501                                         <parameter name="error-code" value="500" />
502                                         <parameter name="error-message" value="Error getting details about new neighbor " />
503                                     </return>
504                                 </outcome>
505                                 <outcome value='success'>
506                                     <block>
507                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
508                                             <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
509                                             <parameter name="level" value="info" />
510                                             <parameter name="field1" value="Details about Neighbor Pre-configuration"/>
511                                             <parameter name="field2" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].plmnid`"/>
512                                             <parameter name="field3" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].cid`"/>
513                                             <parameter name="field4" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].phy-cell-id`"/>
514                                             <parameter name="field5" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].pnf-name`"/>
515                                             <parameter name="field6" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].blacklisted`"/>
516                                         </record>
517                                     </block>
518                                 </outcome>
519                             </execute>
520                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
521                                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/oofpcipoc-generic-neighbor-patch.json'`" />
522                                 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.config-neighbor-service-url`"/>
523                                 <parameter name="restapiUser" value="`$prop.controller.user`" />
524                                 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
525                                 <parameter name="httpMethod" value="PATCH"/>
526                                 <parameter name="responsePrefix" value="oofpci-neighbor-patch-response"/>
527                                 <parameter name='contentType' value='application/yang.patch+json' />
528                                 <parameter name='format' value='json' />
529                                 <parameter name='accept' value='application/yang.patch-status+json' />
530                                 <outcome value='failure'>
531                                     <block>
532                                         <return status='failure'>
533                                             <parameter name='ack-final' value='Y'/>
534                                             <parameter name="error-code" value="500" />
535                                             <parameter name="error-message" value="Error adding a new neighbor" />
536                                         </return>
537                                     </block>
538                                 </outcome>
539                                 <outcome value='success'>
540                                     <block>
541                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
542                                             <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
543                                             <parameter name="level" value="info" />
544                                             <parameter name="field1" value="PATCH Neighbor Executed Successfully "/>
545                                         </record>
546                                     </block>
547                                 </outcome>
548                             </execute>
549                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
550                                 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.config-neighbor-service-url`"/>
551                                 <parameter name="restapiUser" value="`$prop.controller.user`" />
552                                 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
553                                 <parameter name="httpMethod" value="GET"/>
554                                 <parameter name="responsePrefix" value="oofpci-neighbor-response"/>
555                                 <parameter name='contentType' value='application/json' />
556                                 <parameter name='format' value='json' />
557                                 <outcome value='failure'>
558                                     <return status='failure'>
559                                         <parameter name='ack-final' value='Y'/>
560                                         <parameter name="error-code" value="500" />
561                                         <parameter name="error-message" value="Error getting details about new neighbor " />
562                                     </return>
563                                 </outcome>
564                                 <outcome value='success'>
565                                     <block>
566                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
567                                             <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
568                                             <parameter name="level" value="info" />
569                                             <parameter name="field1" value="Details about Neighbor Post-configuration"/>
570                                             <parameter name="field2" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].plmnid`"/>
571                                             <parameter name="field3" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].cid`"/>
572                                             <parameter name="field4" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].phy-cell-id`"/>
573                                             <parameter name="field5" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].pnf-name`"/>
574                                             <parameter name="field6" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].blacklisted`"/>
575                                         </record>
576                                     </block>
577                                 </outcome>
578                             </execute>
579                             <switch test='`$prop.configdb-deployed`'>
580                                 <outcome value='false'>
581                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
582                                         <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
583                                         <parameter name="level" value="info" />
584                                         <parameter name="field1" value="ConfigDB Update Skipped"/>
585                                     </record>
586                                 </outcome>
587                                 <outcome value='true'>
588                                     <block atomic='true'>
589                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
590                                             <parameter name="source" value="`$prop.restapi.configdb.patch-ho-for-nbr`"/>
591                                             <parameter name="outputPath" value="tmp.configdb.patch-ho-for-nbr.url"/>
592                                             <parameter name="target" value="{cellId}"/>
593                                             <parameter name="replacement" value="`$tmp.alias`"/>
594                                         </execute>
595                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
596                                             <parameter name="source" value="`$tmp.configdb.patch-ho-for-nbr.url`"/>
597                                             <parameter name="outputPath" value="tmp.configdb.patch-ho-for-nbr.url"/>
598                                             <parameter name="target" value="{targetCellId}"/>
599                                             <parameter name="replacement" value="`$tmp.cid`"/>
600                                         </execute>
601                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
602                                             <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
603                                             <parameter name="level" value="info" />
604                                             <parameter name="field1" value="URL for configDB PCI Update"/>
605                                             <parameter name='field2' value="`$prop.configdb.url + $tmp.configdb.patch-ho-for-nbr.url`" />
606                                             <parameter name='field3' value="`$tmp.alias`" />
607                                             <parameter name='field4' value="`$tmp.cid`" />
608                                         </record>
609                                         <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
610                                             <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/oofpcipoc-patch-configdb-ho-for-nbr.json'`" />
611                                             <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.patch-ho-for-nbr.url`"/>
612                                             <parameter name="httpMethod" value="PATCH"/>
613                                             <parameter name="responsePrefix" value="oofpci-configdb-response"/>
614                                             <parameter name='contentType' value='application/json' />
615                                             <parameter name='format' value='json' />
616                                             <parameter name='accept' value='application/json' />
617                                             <outcome value='failure'>
618                                                 <block>
619                                                     <return status='failure'>
620                                                         <parameter name='ack-final' value='Y'/>
621                                                         <parameter name="error-code" value="500" />
622                                                         <parameter name="error-message" value="Error updating configDB. Aborting Nbr HO configuration" />
623                                                     </return>
624                                                 </block>
625                                             </outcome>
626                                             <outcome value='success'>
627                                                 <block>
628                                                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
629                                                         <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
630                                                         <parameter name="level" value="info" />
631                                                         <parameter name="field1" value="HO Value for nbr updated in ConfigDB"/>
632                                                     </record>
633                                                 </block>
634                                             </outcome>
635                                         </execute>
636                                     </block>
637                                 </outcome>
638                             </switch>
639                         </block>
640                     </for>
641                 </outcome>
642             </switch>
643             <block atomic='true'>
644                 <execute plugin="org.onap.ccsdk.sli.plugins.template.TemplateNode" method="evaluateTemplate" >
645                     <parameter name='templatePath' value='oofpcipoc-dmaap-publish-modifyconfiganr-resp-payload-template.vtl' />
646                     <parameter name='output' value='resp-payload' />
647                     <parameter name='prefix' value='sdnr' />
648                     <outcome value='success'>
649                         <block atomic='true'>
650                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
651                                 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
652                                 <parameter name="level" value="info" />
653                                 <parameter name="field1" value="__TIMESTAMP__"/>
654                                 <parameter name="field2" value="Redndred sdnr payload template as a string"/>
655                                 <parameter name='field3' value='`$sdnr.resp-payload`' />
656                             </record>
657                         </block>
658                     </outcome>
659                     <outcome value='failure'>
660                         <block>
661                             <return status='failure'>
662                                 <parameter name='ack-final' value='Y'/>
663                                 <parameter name="error-code" value="500" />
664                                 <parameter name="error-message" value="Error creating SDNR response payload string. Aborting Generic neighbor  configuration" />
665                             </return>
666                         </block>
667                     </outcome>
668                 </execute>
669                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replaceAll' >
670                     <parameter name="source" value="`$sdnr.resp-payload`"/>
671                     <parameter name="outputPath" value="tmp.oofpcipoc-dmaap-config-resp.payload"/>
672                     <parameter name="target" value="\n"/>
673                     <parameter name="replacement" value=""/>
674                     <outcome value='success'>
675                         <block atomic='true'>
676                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
677                                 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
678                                 <parameter name="level" value="info" />
679                                 <parameter name="field1" value="__TIMESTAMP__"/>
680                                 <parameter name="field2" value="Redndred template with lines removed \r"/>
681                                 <parameter name='field3' value='`$tmp.oofpcipoc-dmaap-config-resp.payload`' />
682                             </record>
683                         </block>
684                     </outcome>
685                     <outcome value='failure'>
686                         <block>
687                             <return status='failure'>
688                                 <parameter name='ack-final' value='Y'/>
689                                 <parameter name="error-code" value="500" />
690                                 <parameter name="error-message" value="Error removing lines from SDNR response payload string. Aborting Generic neighbor  configuration" />
691                             </return>
692                         </block>
693                     </outcome>
694                 </execute>
695                 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replaceAll' >
696                     <parameter name="source" value="`$tmp.oofpcipoc-dmaap-config-resp.payload`"/>
697                     <parameter name="outputPath" value="tmp.oofpcipoc-dmaap-config-resp.payload"/>
698                     <parameter name="target" value="\t"/>
699                     <parameter name="replacement" value=""/>
700                     <outcome value='success'>
701                         <block atomic='true'>
702                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
703                                 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
704                                 <parameter name="level" value="info" />
705                                 <parameter name="field1" value="__TIMESTAMP__"/>
706                                 <parameter name="field2" value="Redndred template with tabs removed \r"/>
707                                 <parameter name='field3' value='`$tmp.oofpcipoc-dmaap-config-resp.payload`' />
708                             </record>
709                         </block>
710                     </outcome>
711                     <outcome value='failure'>
712                         <block>
713                             <return status='failure'>
714                                 <parameter name='ack-final' value='Y'/>
715                                 <parameter name="error-code" value="500" />
716                                 <parameter name="error-message" value="Error removing tabs from SDNR response payload string. Aborting Generic neighbor configuration" />
717                             </return>
718                         </block>
719                     </outcome>
720                 </execute>
721             </block>
722             <block atomic='true'>
723                 <set>
724                     <parameter name='tmp.oofpcipoc-dmaap-config-resp.rpc-name' value='`$prop.oofpcipoc-dmaap-config-resp.rpc-name.modifyconfiganr`'/>
725                 </set>
726                 <block atomic='true'>
727                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replaceAll' >
728                         <parameter name="source" value="`$prop.oofpcipoc-dmaap-config-resp.timestamp`"/>
729                         <parameter name="outputPath" value="prop.oofpcipoc-dmaap-config-resp.timestamp"/>
730                         <parameter name="target" value='"'/>
731                         <parameter name="replacement" value=''/>
732                         <outcome value='success'>
733                             <block atomic='true'>
734                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
735                                     <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
736                                     <parameter name="level" value="info" />
737                                     <parameter name="field1" value="Quotation removed from timestamp for DMAAP response header \r"/>
738                                     <parameter name="field2" value="`$prop.oofpcipoc-dmaap-config-resp.timestamp`"/>
739                                 </record>
740                             </block>
741                         </outcome>
742                         <outcome value='failure'>
743                             <block>
744                                 <return status='failure'>
745                                     <parameter name='ack-final' value='Y'/>
746                                     <parameter name="error-code" value="500" />
747                                     <parameter name="error-message" value="Error removing quotation from timestamp for DMAAP response header. Aborting Generic neighbor  configuration" />
748                                 </return>
749                             </block>
750                         </outcome>
751                     </execute>
752                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replaceAll' >
753                         <parameter name="source" value="`$prop.oofpcipoc-dmaap-config-resp.requestID`"/>
754                         <parameter name="outputPath" value="prop.oofpcipoc-dmaap-config-resp.requestID"/>
755                         <parameter name="target" value='"'/>
756                         <parameter name="replacement" value=''/>
757                         <outcome value='success'>
758                             <block atomic='true'>
759                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
760                                     <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
761                                     <parameter name="level" value="info" />
762                                     <parameter name="field1" value="Quotation removed from requestID for DMAAP response header \r"/>
763                                     <parameter name="field2" value="`$prop.oofpcipoc-dmaap-config-resp.requestID`"/>
764                                 </record>
765                             </block>
766                         </outcome>
767                         <outcome value='failure'>
768                             <block>
769                                 <return status='failure'>
770                                     <parameter name='ack-final' value='Y'/>
771                                     <parameter name="error-code" value="500" />
772                                     <parameter name="error-message" value="Error removing quotation from requestID for DMAAP response header. Aborting Generic neighbor  configuration" />
773                                 </return>
774                             </block>
775                         </outcome>
776                     </execute>
777                     <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replaceAll' >
778                         <parameter name="source" value="`$prop.oofpcipoc-dmaap-config-resp.subrequestID`"/>
779                         <parameter name="outputPath" value="prop.oofpcipoc-dmaap-config-resp.subrequestID"/>
780                         <parameter name="target" value='"'/>
781                         <parameter name="replacement" value=''/>
782                         <outcome value='success'>
783                             <block atomic='true'>
784                                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
785                                     <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
786                                     <parameter name="level" value="info" />
787                                     <parameter name="field1" value="Quotation removed from subRequestID for DMAAP response header \r"/>
788                                     <parameter name="field2" value="`$prop.oofpcipoc-dmaap-config-resp.subrequestID`"/>
789                                 </record>
790                             </block>
791                         </outcome>
792                         <outcome value='failure'>
793                             <block>
794                                 <return status='failure'>
795                                     <parameter name='ack-final' value='Y'/>
796                                     <parameter name="error-code" value="500" />
797                                     <parameter name="error-message" value="Error removing quotation from timestamp for DMAAP response header. Aborting Generic neighbor  configuration" />
798                                 </return>
799                             </block>
800                         </outcome>
801                     </execute>
802                 </block>
803                 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
804                     <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
805                     <parameter name="level" value="info" />
806                     <parameter name="field1" value="__TIMESTAMP__"/>
807                     <parameter name="field2" value="Before DMAAP Event - template file name, restapiURL"/>
808                     <parameter name='field3' value="`$prop.restapi.templateDir + '/' + $prop.restapi.dmaap-publish-config-response.template`" />
809                     <parameter name='field4' value="`$prop.dmaap-message-router.url + '/' + $prop.oofpcipoc-dmaap-configuration-response.topic`" />
810                     <parameter name="field5" value="Before DMAAP Event - Timestamp, RequestID, subRequestID"/>
811                     <parameter name="field6" value="`$prop.oofpcipoc-dmaap-config-resp.timestamp`"/>
812                     <parameter name="field7" value="`$prop.oofpcipoc-dmaap-config-resp.requestID`"/>
813                     <parameter name="field8" value="`$prop.oofpcipoc-dmaap-config-resp.subrequestID`"/>
814                 </record>
815                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
816                     <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.dmaap-publish-config-response.template`" />
817                     <parameter name='restapiUrl' value="`$prop.dmaap-message-router.url + '/' + $prop.oofpcipoc-dmaap-configuration-response.topic`" />
818                     <parameter name='format' value='json' />
819                     <parameter name='httpMethod' value='POST' />
820                     <parameter name='contentType' value='application/json' />
821                     <parameter name='responsePrefix' value='dmaap' />
822                     <outcome value='failure'>
823                         <block>
824                             <return status='failure'>
825                                 <parameter name='ack-final' value='Y'/>
826                                 <parameter name="error-code" value="500" />
827                                 <parameter name="error-message" value="Error publishing DMAAP Config Response message. ConfigDB Updated; TO be rolled back...will handle next release" />
828                             </return>
829                         </block>
830                     </outcome>
831                     <outcome value='success'>
832                         <block>
833                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
834                                 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
835                                 <parameter name="level" value="info" />
836                                 <parameter name="field1" value="DMAAP Config Response Message Successfully Published "/>
837                             </record>
838                         </block>
839                     </outcome>
840                 </execute>
841             </block>
842             <return status='success'>
843                 <parameter name="ack-final-indicator" value="Y" />
844                 <parameter name="error-code" value="200" />
845                 <parameter name="error-message" value="SUCCESSFUL Execution" />
846             </return>
847         </block>
848     </method>
849 </service-logic>