fix odl patches
[ccsdk/distribution.git] / platform-logic / oofpcipoc-api / src / main / xml / oofpcipoc-api_generic-neighbor-configuration.xml
index f972476..b4b0b8b 100644 (file)
                 <parameter name="prop.oofpcipoc-dmaap-config-resp.requestID" value="`$generic-neighbor-configuration-input.requestID`"/>
                 <parameter name="prop.oofpcipoc-dmaap-config-resp.subrequestID" value="`$generic-neighbor-configuration-input.subRequestID`"/>
             </set>
+            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                <parameter name="level" value="info" />
+                <parameter name="field1" value="DMAAP Message Header stored in properties file "/>
+                <parameter name="field2" value="`$prop.oofpcipoc-dmaap-config-resp.timestamp`"/>
+                <parameter name="field3" value="`$prop.oofpcipoc-dmaap-config-resp.requestID`"/>
+                <parameter name="field4" value="`$prop.oofpcipoc-dmaap-config-resp.subrequestID`"/>
+            </record>
+            <set>
+                <parameter name="tmp.idGNBCUCP" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[0].pnf-name`"/>
+            </set>
+            <set>
+                <parameter name='tmp.getAnchors.URL' value="`$prop.restapi.cps.anchors.endpoint`"/>
+            </set>
+            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                <parameter name="level" value="info" />
+                <parameter name="field1" value="URL to fetch the anchors"/>
+                <parameter name="field2" value="`$tmp.getAnchors.URL`"/>
+            </record>
+            <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                <parameter name="restapiUrl" value="`$tmp.getAnchors.URL`"/>
+                <parameter name="httpMethod" value="GET"/>
+                <parameter name="restapiUser" value="cpsuser" />
+                <parameter name="restapiPassword" value="cpsr0cks!"/>
+                <parameter name="responsePrefix" value="get-anchors-cps-response"/>
+                <parameter name='contentType' value='application/json' />
+                <parameter name='format' value='json' />
+                <parameter name='accept' value='application/json' />
+                <parameter name="convertResponse" value="true"/>
+                <outcome value='failure'>
+                    <block>
+                        <set>
+                            <parameter name='error-code' value='500'/>
+                            <parameter name='error-message' value='Error Getting Info from CPS. Aborting RPC executiopn'/>
+                        </set>
+                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                            <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                            <parameter name="level" value="info" />
+                            <parameter name="field1" value="Failed to fetch anchors from CPS"/>
+                        </record>
+                    </block>
+                </outcome>
+                <outcome value='success'>
+                    <block atomic='true'>
+                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                            <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                            <parameter name="level" value="info" />
+                            <parameter name="field1" value="Successfully Obtained anchors from CPS"/>
+                            <parameter name="field2" value="`$get-anchors-cps-response._length`"/>
+                        </record>
+                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
+                            <parameter name='filename' value='/opt/opendaylight/current/data/log/generic-neighbor-config-context.log' />
+                        </execute>
+                    </block>
+                </outcome>
+            </execute>
+            <set>
+                <parameter name='tmp.anchors.length' value="`$get-anchors-cps-response._length`"/>
+            </set>
+            <set>
+                <parameter name='tmp.RIC.length' value="0"/>
+            </set>
+            <for index='anc' start='0' end='`$tmp.anchors.length`'>
+                <block atomic='true'>
+                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                        <parameter name='outputPath' value='tmp.schemaset.name' />
+                        <parameter name='source' value="`'get-anchors-cps-response.['+$anc+'].schemaSetName'`" />
+                    </execute>
+                    <switch test='`$tmp.schemaset.name`'>
+                        <outcome value='ran-network'>
+                            <block atomic='true'>
+                                <set>
+                                    <parameter name='tmp.RIC.length' value="`$tmp.RIC.length+1`"/>
+                                </set>
+                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                    <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                                    <parameter name="level" value="info" />
+                                    <parameter name="field1" value="Applicable RIC length"/>
+                                    <parameter name="field2" value="`$tmp.RIC.length`"/>
+                                </record>
+                            </block>
+                        </outcome>
+                    </switch>
+                </block>
+            </for>
+            <for index='anc' start='0' end='`$tmp.anchors.length`'>
+                <block atomic='true'>
+                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                        <parameter name='outputPath' value='tmp.schemaset.name' />
+                        <parameter name='source' value="`'get-anchors-cps-response.['+$anc+'].schemaSetName'`" />
+                    </execute>
+                    <switch test='`$tmp.schemaset.name`'>
+                        <outcome value='ran-network'>
+                            <block atomic='true'>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.anchor.name' />
+                                    <parameter name='source' value="`'get-anchors-cps-response.['+$anc+'].name'`" />
+                                </execute>
+                                <block atomic='true'>
+                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                        <parameter name="source" value="`$prop.restapi.cps.tbdmt.execute.endpoint`"/>
+                                        <parameter name="outputPath" value="tmp.cps.getNearRTRICByidGNBCUCPFunction.url"/>
+                                        <parameter name="target" value="{schemaSet}"/>
+                                        <parameter name="replacement" value="`$tmp.anchor.name`"/>
+                                    </execute>
+                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                        <parameter name="source" value="`$tmp.cps.getNearRTRICByidGNBCUCPFunction.url`"/>
+                                        <parameter name="outputPath" value="tmp.cps.getNearRTRICByidGNBCUCPFunction.url"/>
+                                        <parameter name="target" value="{templateId}"/>
+                                        <parameter name="replacement" value="`$prop.tbdmt.template.get-nearrtric-by-idgnbcucpfunction`"/>
+                                    </execute>
+                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                        <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                                        <parameter name="level" value="info" />
+                                        <parameter name="field1" value="URL for CPS TDBMT to Get NearRTRIC for idGNBCUCPFunction"/>
+                                        <parameter name='field2' value="`$tmp.cps.getNearRTRICByidGNBCUCPFunction.url`" />
+                                    </record>
+                                    <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                        <parameter name="restapiUrl" value="`$tmp.cps.getNearRTRICByidGNBCUCPFunction.url`"/>
+                                        <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/cps-templates/cps-get-nearrtric-by-idgnbcucpfunction.json'`" />
+                                        <parameter name="httpMethod" value="POST"/>
+                                        <parameter name="responsePrefix" value="getNFNSSIRIC-cps-response"/>
+                                        <parameter name='contentType' value='application/json' />
+                                        <parameter name='format' value='json' />
+                                        <parameter name='accept' value='application/json' />
+                                        <parameter name="convertResponse" value="true"/>
+                                        <outcome value='failure'>
+                                            <block>
+                                                <set>
+                                                    <parameter name='error-code' value='500'/>
+                                                    <parameter name='error-message' value='Error Getting Info from CPS. Aborting RPC executiopn'/>
+                                                </set>
+                                            </block>
+                                        </outcome>
+                                        <outcome value='success'>
+                                            <block atomic='true'>
+                                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                                    <parameter name='outputPath' value='tmp.nearRTRICId' />
+                                                    <parameter name='source' value="`'getNFNSSIRIC-cps-response.[0]'`" />
+                                                </execute>
+                                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                    <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                                                    <parameter name="level" value="info" />
+                                                    <parameter name="field1" value="Successfully Obtained NearRTRIC ID info from CPS"/>
+                                                    <parameter name="field2" value="`$tmp.nearRTRICId`"/>
+                                                </record>
+                                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
+                                                    <parameter name='filename' value='/opt/opendaylight/current/data/log/generic-neighbor-config-context.log' />
+                                                </execute>
+                                            </block>
+                                        </outcome>
+                                    </execute>
+                                </block>
+                            </block>
+                        </outcome>
+                    </switch>
+                </block>
+            </for>
             <switch test='`$prop.ransim-mounted`'>
                 <outcome value='false'>
                     <for index='idx' start='0' end="`$generic-neighbor-configuration-input.lte-cell-number-of-entries`" >
                                 <parameter name="tmp.pnf-name" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].pnf-name`"/>
                                 <parameter name="tmp.blacklisted" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].blacklisted`"/>
                             </set>
+                            <switch test='`$tmp.blacklisted`'>
+                                <outcome value='true'>
+                                    <block atomic='true'>
+                                        <set>
+                                            <parameter name='tmp.isHOAllowed' value='false' />
+                                        </set>
+                                    </block>
+                                </outcome>
+                                <outcome value='false'>
+                                    <block atomic='true'>
+                                        <set>
+                                            <parameter name='tmp.isHOAllowed' value='true' />
+                                        </set>
+                                    </block>
+                                </outcome>
+                            </switch>
+                            <set>
+                                <parameter name="tmp.idNRCellCU" value="`$generic-neighbor-configuration-input.alias`"/>
+                                <parameter name="tmp.idNRCellRelation" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].cid`"/>
+                                <parameter name="tmp.idGNBCUCPFunction" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].pnf-name`"/>
+                            </set>
                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                                 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
                                 <parameter name="level" value="info" />
-                                <parameter name="field1" value="Temporary varaibles set. Neighbor #:  "/>
-                                <parameter name="field2" value="`$idx`"/>
-                                <parameter name="field3" value="`$tmp.plmnid`"/>
-                                <parameter name="field4" value="`$tmp.cid`"/>
-                                <parameter name="field5" value="`$tmp.phy-cell-id`"/>
-                                <parameter name="field6" value="`$tmp.pnf-name`"/>
-                                <parameter name="field7" value="`$tmp.blacklisted`"/>
+                                <parameter name="field1" value="idGNBCUCPFunction"/>
+                                <parameter name="field2" value="`$tmp.idGNBCUCPFunction`"/>
+                                <parameter name="field3" value="idNRCellCU"/>
+                                <parameter name="field4" value="`$tmp.idNRCellCU`"/>
+                                <parameter name="field5" value="idNRCellRelation"/>
+                                <parameter name="field6" value="`$tmp.idNRCellRelation`"/>
+                                <parameter name="field7" value="isHOAllowed"/>
+                                <parameter name="field8" value="`$tmp.isHOAllowed`"/>
                             </record>
                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
-                                <parameter name="source" value="`$prop.restapi.lte-ran-neighbor-in-use`"/>
+                                <parameter name="source" value="`$prop.restapi.patchNRCellRelation`"/>
                                 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
-                                <parameter name="target" value="{alias}"/>
-                                <parameter name="replacement" value="`$tmp.alias`"/>
+                                <parameter name="target" value="{idNearRTRIC}"/>
+                                <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
                             </execute>
-                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
-                                <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
-                                <parameter name="level" value="info" />
-                                <parameter name="field1" value="Config Neighbor List URL"/>
-                                <parameter name="field2" value="`$tmp.config-neighbor-service-url`"/>
-                            </record>
                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
                                 <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
                                 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
-                                <parameter name="target" value="{plmnid}"/>
-                                <parameter name="replacement" value="`$tmp.plmnid`"/>
+                                <parameter name="target" value="{idGNBCUCPFunction}"/>
+                                <parameter name="replacement" value="`$tmp.idGNBCUCPFunction`"/>
+                            </execute>
+                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
+                                <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
+                                <parameter name="target" value="{idNRCellCU}"/>
+                                <parameter name="replacement" value="`$tmp.idNRCellCU`"/>
+                            </execute>
+                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
+                                <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
+                                <parameter name="target" value="{idNRCellRelation}"/>
+                                <parameter name="replacement" value="`$tmp.idNRCellRelation`"/>
                             </execute>
                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                                 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
                                 <parameter name="field1" value="Config Neighbor List URL"/>
                                 <parameter name="field2" value="`$tmp.config-neighbor-service-url`"/>
                             </record>
-                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
-                                <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
-                                <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
-                                <parameter name="target" value="{cid}"/>
-                                <parameter name="replacement" value="`$tmp.cid`"/>
-                            </execute>
                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
                                 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.config-neighbor-service-url`"/>
                                 <parameter name="restapiUser" value="`$prop.controller.user`" />
                                     </return>
                                 </outcome>
                                 <outcome value='success'>
-                                    <block>
+                                    <block atomic='true'>
+                                        <set>
+                                            <parameter name="tmp.nRTCI" value="`$oofpci-neighbor-response.attributes.nRTCI`"/>
+                                        </set>
                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                                             <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
                                             <parameter name="level" value="info" />
                                             <parameter name="field1" value="Details about Neighbor Pre-configuration"/>
-                                            <parameter name="field2" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].plmnid`"/>
-                                            <parameter name="field3" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].cid`"/>
-                                            <parameter name="field4" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].phy-cell-id`"/>
-                                            <parameter name="field5" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].pnf-name`"/>
-                                            <parameter name="field6" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].blacklisted`"/>
+                                            <parameter name="field2" value="`$oofpci-neighbor-response.attributes.nRTCI`"/>
+                                            <parameter name="field3" value="`$oofpci-neighbor-response.attributes.isHOAllowed`"/>
                                         </record>
                                     </block>
                                 </outcome>
                                             <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
                                             <parameter name="level" value="info" />
                                             <parameter name="field1" value="Details about Neighbor Post-configuration"/>
-                                            <parameter name="field2" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].plmnid`"/>
-                                            <parameter name="field3" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].cid`"/>
-                                            <parameter name="field4" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].phy-cell-id`"/>
-                                            <parameter name="field5" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].pnf-name`"/>
-                                            <parameter name="field6" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].blacklisted`"/>
+                                            <parameter name="field2" value="`$oofpci-neighbor-response.attributes.nRTCI`"/>
+                                            <parameter name="field3" value="`$oofpci-neighbor-response.attributes.isHOAllowed`"/>
                                         </record>
                                     </block>
                                 </outcome>
                             </execute>
                             <switch test='`$prop.configdb-deployed`'>
                                 <outcome value='false'>
-                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
-                                        <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
-                                        <parameter name="level" value="info" />
-                                        <parameter name="field1" value="ConfigDB Update Skipped"/>
-                                    </record>
+                                    <block atomic='true'>
+                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                            <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                                            <parameter name="level" value="info" />
+                                            <parameter name="field1" value="CPS is Deployed, ConfigDB Skipped"/>
+                                        </record>
+                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                            <parameter name="source" value="`$prop.restapi.cps.tbdmt.execute.endpoint`"/>
+                                            <parameter name="outputPath" value="tmp.cps.putho.nrcellrelation.url"/>
+                                            <parameter name="target" value="{schemaSet}"/>
+                                            <parameter name="replacement" value="`$tmp.schemaset.name`"/>
+                                        </execute>
+                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                            <parameter name="source" value="`$tmp.cps.putho.nrcellrelation.url`"/>
+                                            <parameter name="outputPath" value="tmp.cps.putho.nrcellrelation.url"/>
+                                            <parameter name="target" value="{templateId}"/>
+                                            <parameter name="replacement" value="`$prop.tbdmt.template.put-ho-nrcellrelation`"/>
+                                        </execute>
+                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                            <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                                            <parameter name="level" value="info" />
+                                            <parameter name="field1" value="URL for CPS TDBMT to put ho NRCellRelation"/>
+                                            <parameter name='field2' value="`$tmp.cps.putho.nrcellrelation.url`" />
+                                        </record>
+                                        <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                            <parameter name="restapiUrl" value="`$tmp.cps.putho.nrcellrelation.url`"/>
+                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/cps-templates/cps-put-ho.json'`" />
+                                            <parameter name="httpMethod" value="POST"/>
+                                            <parameter name="responsePrefix" value="cps-put-ho-nrcellrelation-response"/>
+                                            <parameter name='contentType' value='application/json' />
+                                            <parameter name='format' value='json' />
+                                            <parameter name='accept' value='application/json' />
+                                            <parameter name="convertResponse" value="true"/>
+                                            <outcome value='failure'>
+                                                <block atomic='true'>
+                                                    <set>
+                                                        <parameter name='error-code' value='500'/>
+                                                        <parameter name='error-message' value='Error updating nearRTRIC info in CPS. Aborting RPC executiopn'/>
+                                                    </set>
+                                                    <return status='failure'>
+                                                        <parameter name='ack-final' value='Y'/>
+                                                        <parameter name='error-code' value='500'/>
+                                                        <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/>
+                                                    </return>
+                                                </block>
+                                            </outcome>
+                                            <outcome value='success'>
+                                                <block atomic='true'>
+                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                                                        <parameter name="level" value="info" />
+                                                        <parameter name="field1" value="Successfully Updated NRCellRelation info in cps"/>
+                                                    </record>
+                                                </block>
+                                            </outcome>
+                                        </execute>
+                                    </block>
                                 </outcome>
                                 <outcome value='true'>
                                     <block atomic='true'>
                                 <parameter name="tmp.pnf-name" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].pnf-name`"/>
                                 <parameter name="tmp.blacklisted" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].blacklisted`"/>
                             </set>
+                            <switch test='`$tmp.blacklisted`'>
+                                <outcome value='true'>
+                                    <block atomic='true'>
+                                        <set>
+                                            <parameter name='tmp.isHOAllowed' value='false' />
+                                        </set>
+                                    </block>
+                                </outcome>
+                                <outcome value='false'>
+                                    <block atomic='true'>
+                                        <set>
+                                            <parameter name='tmp.isHOAllowed' value='true' />
+                                        </set>
+                                    </block>
+                                </outcome>
+                            </switch>
+                            <set>
+                                <parameter name="tmp.idNRCellCU" value="`$generic-neighbor-configuration-input.alias`"/>
+                                <parameter name="tmp.idNRCellRelation" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].cid`"/>
+                                <parameter name="tmp.idGNBCUCPFunction" value="`$generic-neighbor-configuration-input.neighbor-list-in-use[$idx].pnf-name`"/>
+                            </set>
                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                                 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
                                 <parameter name="level" value="info" />
-                                <parameter name="field1" value="Temporary varaibles set. Neighbor #:  "/>
-                                <parameter name="field2" value="`$idx`"/>
-                                <parameter name="field3" value="`$tmp.plmnid`"/>
-                                <parameter name="field4" value="`$tmp.cid`"/>
-                                <parameter name="field5" value="`$tmp.phy-cell-id`"/>
-                                <parameter name="field6" value="`$tmp.pnf-name`"/>
-                                <parameter name="field7" value="`$tmp.blacklisted`"/>
+                                <parameter name="field1" value="idGNBCUCPFunction"/>
+                                <parameter name="field2" value="`$tmp.idGNBCUCPFunction`"/>
+                                <parameter name="field3" value="idNRCellCU"/>
+                                <parameter name="field4" value="`$tmp.idNRCellCU`"/>
+                                <parameter name="field5" value="idNRCellRelation"/>
+                                <parameter name="field6" value="`$tmp.idNRCellRelation`"/>
+                                <parameter name="field7" value="isHOAllowed"/>
+                                <parameter name="field8" value="`$tmp.isHOAllowed`"/>
                             </record>
                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
-                                <parameter name="source" value="`$prop.restapi.lte-ran-neighbor-in-use.ransim-mounted`"/>
+                                <parameter name="source" value="`$prop.restapi.patchNRCellRelation.ransim-mounted`"/>
                                 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
-                                <parameter name="target" value="{alias}"/>
-                                <parameter name="replacement" value="`$tmp.alias`"/>
+                                <parameter name="target" value="{idNearRTRIC}"/>
+                                <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
                             </execute>
-                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
-                                <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
-                                <parameter name="level" value="info" />
-                                <parameter name="field1" value="Config Neighbor List URL"/>
-                                <parameter name="field2" value="`$tmp.config-neighbor-service-url`"/>
-                            </record>
                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
                                 <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
                                 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
-                                <parameter name="target" value="{pnf-name}"/>
-                                <parameter name="replacement" value="`$tmp.pnf-name`"/>
+                                <parameter name="target" value="{mountName}"/>
+                                <parameter name="replacement" value="`$tmp.idGNBCUCPFunction`"/>
                             </execute>
                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
                                 <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
                                 <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
-                                <parameter name="target" value="{plmnid}"/>
-                                <parameter name="replacement" value="`$tmp.plmnid`"/>
+                                <parameter name="target" value="{idGNBCUCPFunction}"/>
+                                <parameter name="replacement" value="`$tmp.idGNBCUCPFunction`"/>
+                            </execute>
+                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
+                                <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
+                                <parameter name="target" value="{idNRCellCU}"/>
+                                <parameter name="replacement" value="`$tmp.idNRCellCU`"/>
+                            </execute>
+                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
+                                <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
+                                <parameter name="target" value="{idNRCellRelation}"/>
+                                <parameter name="replacement" value="`$tmp.idNRCellRelation`"/>
                             </execute>
                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                                 <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
                                 <parameter name="field1" value="Config Neighbor List URL"/>
                                 <parameter name="field2" value="`$tmp.config-neighbor-service-url`"/>
                             </record>
-                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
-                                <parameter name="source" value="`$tmp.config-neighbor-service-url`"/>
-                                <parameter name="outputPath" value="tmp.config-neighbor-service-url"/>
-                                <parameter name="target" value="{cid}"/>
-                                <parameter name="replacement" value="`$tmp.cid`"/>
-                            </execute>
                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
                                 <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.config-neighbor-service-url`"/>
                                 <parameter name="restapiUser" value="`$prop.controller.user`" />
                                     </return>
                                 </outcome>
                                 <outcome value='success'>
-                                    <block>
+                                    <block atomic='true'>
+                                        <set>
+                                            <parameter name="tmp.nRTCI" value="`$oofpci-neighbor-response.attributes.nRTCI`"/>
+                                        </set>
                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                                             <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
                                             <parameter name="level" value="info" />
                                             <parameter name="field1" value="Details about Neighbor Pre-configuration"/>
-                                            <parameter name="field2" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].plmnid`"/>
-                                            <parameter name="field3" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].cid`"/>
-                                            <parameter name="field4" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].phy-cell-id`"/>
-                                            <parameter name="field5" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].pnf-name`"/>
-                                            <parameter name="field6" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].blacklisted`"/>
+                                            <parameter name="field2" value="`$oofpci-neighbor-response.attributes.nRTCI`"/>
+                                            <parameter name="field3" value="`$oofpci-neighbor-response.attributes.isHOAllowed`"/>
                                         </record>
                                     </block>
                                 </outcome>
                                             <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
                                             <parameter name="level" value="info" />
                                             <parameter name="field1" value="Details about Neighbor Post-configuration"/>
-                                            <parameter name="field2" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].plmnid`"/>
-                                            <parameter name="field3" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].cid`"/>
-                                            <parameter name="field4" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].phy-cell-id`"/>
-                                            <parameter name="field5" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].pnf-name`"/>
-                                            <parameter name="field6" value="`$oofpci-neighbor-response.lte-ran-neighbor-list-in-use-lte-cell[0].blacklisted`"/>
+                                            <parameter name="field2" value="`$oofpci-neighbor-response.attributes.nRTCI`"/>
+                                            <parameter name="field3" value="`$oofpci-neighbor-response.attributes.isHOAllowed`"/>
                                         </record>
                                     </block>
                                 </outcome>
                             </execute>
                             <switch test='`$prop.configdb-deployed`'>
                                 <outcome value='false'>
-                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
-                                        <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
-                                        <parameter name="level" value="info" />
-                                        <parameter name="field1" value="ConfigDB Update Skipped"/>
-                                    </record>
+                                    <block atomic='true'>
+                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                            <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                                            <parameter name="level" value="info" />
+                                            <parameter name="field1" value="CPS is Deployed, ConfigDB Skipped"/>
+                                        </record>
+                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                            <parameter name="source" value="`$prop.restapi.cps.tbdmt.execute.endpoint`"/>
+                                            <parameter name="outputPath" value="tmp.cps.putho.nrcellrelation.url"/>
+                                            <parameter name="target" value="{schemaSet}"/>
+                                            <parameter name="replacement" value="`$tmp.schemaset.name`"/>
+                                        </execute>
+                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                            <parameter name="source" value="`$tmp.cps.putho.nrcellrelation.url`"/>
+                                            <parameter name="outputPath" value="tmp.cps.putho.nrcellrelation.url"/>
+                                            <parameter name="target" value="{templateId}"/>
+                                            <parameter name="replacement" value="`$prop.tbdmt.template.put-ho-nrcellrelation`"/>
+                                        </execute>
+                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                            <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                                            <parameter name="level" value="info" />
+                                            <parameter name="field1" value="URL for CPS TDBMT to put ho NRCellRelation"/>
+                                            <parameter name='field2' value="`$tmp.cps.putho.nrcellrelation.url`" />
+                                        </record>
+                                        <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                            <parameter name="restapiUrl" value="`$tmp.cps.putho.nrcellrelation.url`"/>
+                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/cps-templates/cps-put-ho.json'`" />
+                                            <parameter name="httpMethod" value="POST"/>
+                                            <parameter name="responsePrefix" value="cps-put-ho-nrcellrelation-response"/>
+                                            <parameter name='contentType' value='application/json' />
+                                            <parameter name='format' value='json' />
+                                            <parameter name='accept' value='application/json' />
+                                            <parameter name="convertResponse" value="true"/>
+                                            <outcome value='failure'>
+                                                <block atomic='true'>
+                                                    <set>
+                                                        <parameter name='error-code' value='500'/>
+                                                        <parameter name='error-message' value='Error updating nearRTRIC info in CPS. Aborting RPC executiopn'/>
+                                                    </set>
+                                                    <return status='failure'>
+                                                        <parameter name='ack-final' value='Y'/>
+                                                        <parameter name='error-code' value='500'/>
+                                                        <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/>
+                                                    </return>
+                                                </block>
+                                            </outcome>
+                                            <outcome value='success'>
+                                                <block atomic='true'>
+                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                                                        <parameter name="level" value="info" />
+                                                        <parameter name="field1" value="Successfully Updated NRCellRelation info in cps"/>
+                                                    </record>
+                                                </block>
+                                            </outcome>
+                                        </execute>
+                                    </block>
                                 </outcome>
                                 <outcome value='true'>
                                     <block atomic='true'>
                             <return status='failure'>
                                 <parameter name='ack-final' value='Y'/>
                                 <parameter name="error-code" value="500" />
-                                <parameter name="error-message" value="Error creating SDNR response payload string. Aborting PCI configuration" />
+                                <parameter name="error-message" value="Error creating SDNR response payload string. Aborting Generic neighbor  configuration" />
                             </return>
                         </block>
                     </outcome>
                             <return status='failure'>
                                 <parameter name='ack-final' value='Y'/>
                                 <parameter name="error-code" value="500" />
-                                <parameter name="error-message" value="Error removing lines from SDNR response payload string. Aborting PCI configuration" />
+                                <parameter name="error-message" value="Error removing lines from SDNR response payload string. Aborting Generic neighbor  configuration" />
                             </return>
                         </block>
                     </outcome>
                             <return status='failure'>
                                 <parameter name='ack-final' value='Y'/>
                                 <parameter name="error-code" value="500" />
-                                <parameter name="error-message" value="Error removing tabs from SDNR response payload string. Aborting PCI configuration" />
+                                <parameter name="error-message" value="Error removing tabs from SDNR response payload string. Aborting Generic neighbor configuration" />
                             </return>
                         </block>
                     </outcome>
                 </execute>
             </block>
+            <return status='success'>
+                <parameter name="ack-final-indicator" value="Y" />
+                <parameter name="error-code" value="200" />
+                <parameter name="error-message" value="SUCCESSFUL Execution" />
+            </return>
             <block atomic='true'>
                 <set>
                     <parameter name='tmp.oofpcipoc-dmaap-config-resp.rpc-name' value='`$prop.oofpcipoc-dmaap-config-resp.rpc-name.modifyconfiganr`'/>
                 </set>
+                <block atomic='true'>
+                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replaceAll' >
+                        <parameter name="source" value="`$prop.oofpcipoc-dmaap-config-resp.timestamp`"/>
+                        <parameter name="outputPath" value="prop.oofpcipoc-dmaap-config-resp.timestamp"/>
+                        <parameter name="target" value='"'/>
+                        <parameter name="replacement" value=''/>
+                        <outcome value='success'>
+                            <block atomic='true'>
+                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                    <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                                    <parameter name="level" value="info" />
+                                    <parameter name="field1" value="Quotation removed from timestamp for DMAAP response header \r"/>
+                                    <parameter name="field2" value="`$prop.oofpcipoc-dmaap-config-resp.timestamp`"/>
+                                </record>
+                            </block>
+                        </outcome>
+                        <outcome value='failure'>
+                            <block>
+                                <return status='failure'>
+                                    <parameter name='ack-final' value='Y'/>
+                                    <parameter name="error-code" value="500" />
+                                    <parameter name="error-message" value="Error removing quotation from timestamp for DMAAP response header. Aborting Generic neighbor  configuration" />
+                                </return>
+                            </block>
+                        </outcome>
+                    </execute>
+                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replaceAll' >
+                        <parameter name="source" value="`$prop.oofpcipoc-dmaap-config-resp.requestID`"/>
+                        <parameter name="outputPath" value="prop.oofpcipoc-dmaap-config-resp.requestID"/>
+                        <parameter name="target" value='"'/>
+                        <parameter name="replacement" value=''/>
+                        <outcome value='success'>
+                            <block atomic='true'>
+                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                    <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                                    <parameter name="level" value="info" />
+                                    <parameter name="field1" value="Quotation removed from requestID for DMAAP response header \r"/>
+                                    <parameter name="field2" value="`$prop.oofpcipoc-dmaap-config-resp.requestID`"/>
+                                </record>
+                            </block>
+                        </outcome>
+                        <outcome value='failure'>
+                            <block>
+                                <return status='failure'>
+                                    <parameter name='ack-final' value='Y'/>
+                                    <parameter name="error-code" value="500" />
+                                    <parameter name="error-message" value="Error removing quotation from requestID for DMAAP response header. Aborting Generic neighbor  configuration" />
+                                </return>
+                            </block>
+                        </outcome>
+                    </execute>
+                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replaceAll' >
+                        <parameter name="source" value="`$prop.oofpcipoc-dmaap-config-resp.subrequestID`"/>
+                        <parameter name="outputPath" value="prop.oofpcipoc-dmaap-config-resp.subrequestID"/>
+                        <parameter name="target" value='"'/>
+                        <parameter name="replacement" value=''/>
+                        <outcome value='success'>
+                            <block atomic='true'>
+                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                    <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                                    <parameter name="level" value="info" />
+                                    <parameter name="field1" value="Quotation removed from subRequestID for DMAAP response header \r"/>
+                                    <parameter name="field2" value="`$prop.oofpcipoc-dmaap-config-resp.subrequestID`"/>
+                                </record>
+                            </block>
+                        </outcome>
+                        <outcome value='failure'>
+                            <block>
+                                <return status='failure'>
+                                    <parameter name='ack-final' value='Y'/>
+                                    <parameter name="error-code" value="500" />
+                                    <parameter name="error-message" value="Error removing quotation from timestamp for DMAAP response header. Aborting Generic neighbor  configuration" />
+                                </return>
+                            </block>
+                        </outcome>
+                    </execute>
+                </block>
+                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                    <parameter name="file" value="/opt/opendaylight/current/data/log/generic-neighbor-config.log" />
+                    <parameter name="level" value="info" />
+                    <parameter name="field1" value="__TIMESTAMP__"/>
+                    <parameter name="field2" value="Before DMAAP Event - template file name, restapiURL"/>
+                    <parameter name='field3' value="`$prop.restapi.templateDir + '/' + $prop.restapi.dmaap-publish-config-response.template`" />
+                    <parameter name='field4' value="`$prop.dmaap-message-router.url + '/' + $prop.oofpcipoc-dmaap-configuration-response.topic`" />
+                    <parameter name="field5" value="Before DMAAP Event - Timestamp, RequestID, subRequestID"/>
+                    <parameter name="field6" value="`$prop.oofpcipoc-dmaap-config-resp.timestamp`"/>
+                    <parameter name="field7" value="`$prop.oofpcipoc-dmaap-config-resp.requestID`"/>
+                    <parameter name="field8" value="`$prop.oofpcipoc-dmaap-config-resp.subrequestID`"/>
+                </record>
                 <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
                     <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.dmaap-publish-config-response.template`" />
                     <parameter name='restapiUrl' value="`$prop.dmaap-message-router.url + '/' + $prop.oofpcipoc-dmaap-configuration-response.topic`" />
                     </outcome>
                 </execute>
             </block>
-            <return status='success'>
-                <parameter name="ack-final-indicator" value="Y" />
-                <parameter name="error-code" value="200" />
-                <parameter name="error-message" value="SUCCESSFUL Execution" />
-            </return>
         </block>
     </method>
-</service-logic>
\ No newline at end of file
+</service-logic>