fix odl patches
[ccsdk/distribution.git] / platform-logic / oofpcipoc-api / src / main / xml / oofpcipoc-api_configuration-phy-cell-id.xml
index ef4737e..f8b78a7 100644 (file)
                 <parameter name="field6" value="ransim-mounted (true/false): "/>
                 <parameter name="field7" value="`$prop.ransim-mounted`"/>
             </record>
+            <set>
+                <parameter name="prop.oofpcipoc-dmaap-config-resp.timestamp" value="`$configuration-phy-cell-id-input.timeStamp`"/>
+                <parameter name="prop.oofpcipoc-dmaap-config-resp.requestID" value="`$configuration-phy-cell-id-input.requestID`"/>
+                <parameter name="prop.oofpcipoc-dmaap-config-resp.subrequestID" value="`$configuration-phy-cell-id-input.subRequestID`"/>
+            </set>
+            <set>
+                <parameter name="tmp.idGNBDU" value="`$configuration-phy-cell-id-input.fap-service[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/configuration-phy-cell-id.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/configuration-phy-cell-id.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/configuration-phy-cell-id.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/configuration-phy-cell-id-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/configuration-phy-cell-id.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.getNearRTRICByidGNBDUFunction.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.getNearRTRICByidGNBDUFunction.url`"/>
+                                        <parameter name="outputPath" value="tmp.cps.getNearRTRICByidGNBDUFunction.url"/>
+                                        <parameter name="target" value="{templateId}"/>
+                                        <parameter name="replacement" value="`$prop.tbdmt.template.get-nearrtric-by-idgnbdufunction`"/>
+                                    </execute>
+                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                        <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.log" />
+                                        <parameter name="level" value="info" />
+                                        <parameter name="field1" value="URL for CPS TDBMT to Get NearRTRIC for idGNBDUFunction"/>
+                                        <parameter name='field2' value="`$tmp.cps.getNearRTRICByidGNBDUFunction.url`" />
+                                    </record>
+                                    <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                        <parameter name="restapiUrl" value="`$tmp.cps.getNearRTRICByidGNBDUFunction.url`"/>
+                                        <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/cps-templates/cps-get-nearrtric-by-idgnbdufunction.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/configuration-phy-cell-id.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/configuration-phy-cell-id-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="`$configuration-phy-cell-id-input.fap-service-number-of-entries`" >
                                 <parameter name="tmp.phy-cell-id-in-use" value="`$configuration-phy-cell-id-input.fap-service[$idx].phy-cell-id-in-use`"/>
                                 <parameter name="tmp.pnf-name" value="`$configuration-phy-cell-id-input.fap-service[$idx].pnf-name`"/>
                             </set>
+                            <set>
+                                <parameter name="tmp.idNRCellDU" value="`$configuration-phy-cell-id-input.fap-service[$idx].alias`"/>
+                                <parameter name="tmp.idGNBDUFunction" value="`$configuration-phy-cell-id-input.fap-service[$idx].pnf-name`"/>
+                                <parameter name="tmp.nRPCI" value="`$configuration-phy-cell-id-input.fap-service[$idx].phy-cell-id-in-use`"/>
+                            </set>
                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
-                                <parameter name="source" value="`$prop.restapi.fap-service`"/>
-                                <parameter name="outputPath" value="tmp.fap-service-url"/>
-                                <parameter name="target" value="{alias}"/>
-                                <parameter name="replacement" value="`$tmp.alias`"/>
+                                <parameter name="source" value="`$prop.restapi.getGNBDUFunction`"/>
+                                <parameter name="outputPath" value="tmp.getGNBDUFunction-url"/>
+                                <parameter name="target" value="{idNearRTRIC}"/>
+                                <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                            </execute>
+                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                <parameter name="source" value="`$tmp.getGNBDUFunction-url`"/>
+                                <parameter name="outputPath" value="tmp.getGNBDUFunction-url"/>
+                                <parameter name="target" value="{mountName}"/>
+                                <parameter name="replacement" value="`$tmp.idGNBDUFunction`"/>
+                            </execute>
+                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                <parameter name="source" value="`$tmp.getGNBDUFunction-url`"/>
+                                <parameter name="outputPath" value="tmp.getGNBDUFunction-url"/>
+                                <parameter name="target" value="{idGNBDUFunction}"/>
+                                <parameter name="replacement" value="`$tmp.idGNBDUFunction`"/>
                             </execute>
                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                                 <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.log" />
                                 <parameter name="level" value="info" />
                                 <parameter name="field1" value="Setting variables for GET operation"/>
-                                <parameter name="field2" value="`$tmp.fap-service-url`"/>
-                                <parameter name="field3" value="`$tmp.alias`"/>
-                                <parameter name="field4" value="`$tmp.cid`"/>
-                                <parameter name="field5" value="`$tmp.phy-cell-id-in-use`"/>
-                                <parameter name="field6" value="`$tmp.pnf-name`"/>
+                                <parameter name="field2" value="`$tmp.getGNBDUFunction-url`"/>
+                                <parameter name="field3" value="`$tmp.idNRCellDU`"/>
+                                <parameter name="field4" value="`$tmp.idGNBDUFunction`"/>
+                                <parameter name="field5" value="`$tmp.nRPCI`"/>
                             </record>
                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
-                                <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.fap-service-url`"/>
+                                <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.getGNBDUFunction-url`"/>
                                 <parameter name="restapiUser" value="`$prop.controller.user`" />
                                 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
                                 <parameter name="format" value="json"/>
                                 <parameter name="httpMethod" value="GET"/>
-                                <parameter name="responsePrefix" value="oofpcigetfapservice"/>
+                                <parameter name="responsePrefix" value="getgnbdufunction"/>
                                 <parameter name='contentType' value='application/json' />
                                 <outcome value='failure'>
                                     <return status='failure'>
                                     </return>
                                 </outcome>
                                 <outcome value='success'>
-                                    <block>
-                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
-                                            <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.log" />
-                                            <parameter name="level" value="info" />
-                                            <parameter name="field1" value="Initial FAP Service PCI PARMS"/>
-                                            <parameter name="field2" value="`$oofpcigetfapservice.fap-service[0].alias`"/>
-                                            <parameter name="field3" value="`$oofpcigetfapservice.fap-service[0].x-0005b9-lte.phy-cell-id-in-use`"/>
-                                            <parameter name="field4" value="`$oofpcigetfapservice.fap-service[0].x-0005b9-lte.pnf-name`"/>
-                                        </record>
+                                    <block atomic='true'>
+                                        <for index='idq' start='0' end="`$getgnbdufunction.GNBDUFunction[0].NRCellDU_length`" >
+                                            <block atomic='true'>
+                                                <switch test='`$getgnbdufunction.GNBDUFunction[0].NRCellDU[$idq].idNRCellDU == $tmp.idNRCellDU`'>
+                                                    <outcome value='true'>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="Initial NRCELLDU PCI PARMS"/>
+                                                            <parameter name="field2" value="`$getgnbdufunction.GNBDUFunction[0].idGNBDUFunction`"/>
+                                                            <parameter name="field3" value="`$getgnbdufunction.GNBDUFunction[0].NRCellDU[$idq].idNRCellDU`"/>
+                                                            <parameter name="field4" value="`$getgnbdufunction.GNBDUFunction[0].NRCellDU[$idq].attributes.nRPCI`"/>
+                                                        </record>
+                                                    </outcome>
+                                                </switch>
+                                            </block>
+                                        </for>
                                     </block>
                                 </outcome>
                             </execute>
                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
-                                <parameter name="source" value="`$prop.restapi.x-005b9-lte`"/>
-                                <parameter name="outputPath" value="tmp.oofpcipoc.patch.pci.url"/>
-                                <parameter name="target" value="{alias}"/>
-                                <parameter name="replacement" value="`$tmp.alias`"/>
+                                <parameter name="source" value="`$prop.restapi.patchNRCellDU`"/>
+                                <parameter name="outputPath" value="tmp.nrcelldu.patch.pci.url"/>
+                                <parameter name="target" value="{idNearRTRIC}"/>
+                                <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                            </execute>
+                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                <parameter name="source" value="`$tmp.nrcelldu.patch.pci.url`"/>
+                                <parameter name="outputPath" value="tmp.nrcelldu.patch.pci.url"/>
+                                <parameter name="target" value="{idGNBDUFunction}"/>
+                                <parameter name="replacement" value="`$tmp.idGNBDUFunction`"/>
+                            </execute>
+                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                <parameter name="source" value="`$tmp.nrcelldu.patch.pci.url`"/>
+                                <parameter name="outputPath" value="tmp.nrcelldu.patch.pci.url"/>
+                                <parameter name="target" value="{idNRCellDU}"/>
+                                <parameter name="replacement" value="`$tmp.idNRCellDU`"/>
                             </execute>
                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                                 <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.log" />
                                 <parameter name="level" value="info" />
-                                <parameter name="field1" value="URL and Target for PCI patch URL"/>
+                                <parameter name="field1" value="URL for PCI patch URL"/>
                                 <parameter name='field2' value="`$prop.controller.url + $tmp.oofpcipoc.patch.pci.url`" />
-                                <parameter name='field3' value="`$prop.oofpcipoc.patch.pci.target`" />
                             </record>
                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
                                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/oofpcipoc-pci-patch.json'`" />
                                 </outcome>
                             </execute>
                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
-                                <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.fap-service-url`"/>
+                                <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.getGNBDUFunction-url`"/>
                                 <parameter name="restapiUser" value="`$prop.controller.user`" />
                                 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
                                 <parameter name="format" value="json"/>
                                 <parameter name="httpMethod" value="GET"/>
-                                <parameter name="responsePrefix" value="oofpcigetfapservice"/>
+                                <parameter name="responsePrefix" value="getgnbdufunction"/>
                                 <parameter name='contentType' value='application/json' />
                                 <outcome value='failure'>
                                     <return status='failure'>
                                     </return>
                                 </outcome>
                                 <outcome value='success'>
-                                    <block>
-                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
-                                            <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.log" />
-                                            <parameter name="level" value="info" />
-                                            <parameter name="field1" value="Post Reconfig FAP Service PCI PARMS"/>
-                                            <parameter name="field2" value="`$oofpcigetfapservice.fap-service[0].alias`"/>
-                                            <parameter name="field3" value="`$oofpcigetfapservice.fap-service[0].x-0005b9-lte.phy-cell-id-in-use`"/>
-                                            <parameter name="field4" value="`$oofpcigetfapservice.fap-service[0].x-0005b9-lte.pnf-name`"/>
-                                        </record>
+                                    <block atomic='true'>
+                                        <for index='idq' start='0' end="`$getgnbdufunction.GNBDUFunction[0].NRCellDU_length`" >
+                                            <block atomic='true'>
+                                                <switch test='`$getgnbdufunction.GNBDUFunction[0].NRCellDU[$idq].idNRCellDU == $tmp.idNRCellDU`'>
+                                                    <outcome value='true'>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="Post Reconfig FAP Service PCI PARMS"/>
+                                                            <parameter name="field2" value="`$getgnbdufunction.GNBDUFunction[0].idGNBDUFunction`"/>
+                                                            <parameter name="field3" value="`$getgnbdufunction.GNBDUFunction[0].NRCellDU[$idq].idNRCellDU`"/>
+                                                            <parameter name="field4" value="`$getgnbdufunction.GNBDUFunction[0].NRCellDU[$idq].attributes.nRPCI`"/>
+                                                        </record>
+                                                    </outcome>
+                                                </switch>
+                                            </block>
+                                        </for>
                                     </block>
                                 </outcome>
                             </execute>
                                         </execute>
                                     </block>
                                 </outcome>
+                                <outcome value='false'>
+                                    <block atomic='true'>
+                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                            <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.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.putnrpci.nrcelldu.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.putnrpci.nrcelldu.url`"/>
+                                            <parameter name="outputPath" value="tmp.cps.putnrpci.nrcelldu.url"/>
+                                            <parameter name="target" value="{templateId}"/>
+                                            <parameter name="replacement" value="`$prop.tbdmt.template.put-nrpci-nrcelldu`"/>
+                                        </execute>
+                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                            <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.log" />
+                                            <parameter name="level" value="info" />
+                                            <parameter name="field1" value="URL for CPS TDBMT to put nRPCI NRCellDU"/>
+                                            <parameter name='field2' value="`$tmp.cps.putnrpci.nrcelldu.url`" />
+                                        </record>
+                                        <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                            <parameter name="restapiUrl" value="`$tmp.cps.putnrpci.nrcelldu.url`"/>
+                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/cps-templates/cps-put-nrpci.json'`" />
+                                            <parameter name="httpMethod" value="POST"/>
+                                            <parameter name="responsePrefix" value="cps-put-nrpci-nrcelldu-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/configuration-phy-cell-id.log" />
+                                                        <parameter name="level" value="info" />
+                                                        <parameter name="field1" value="Successfully Updated NRCellDU info in cps"/>
+                                                    </record>
+                                                </block>
+                                            </outcome>
+                                        </execute>
+                                    </block>
+                                </outcome>
                             </switch>
                         </block>
                     </for>
                                 <parameter name="tmp.phy-cell-id-in-use" value="`$configuration-phy-cell-id-input.fap-service[$idx].phy-cell-id-in-use`"/>
                                 <parameter name="tmp.pnf-name" value="`$configuration-phy-cell-id-input.fap-service[$idx].pnf-name`"/>
                             </set>
+                            <set>
+                                <parameter name="tmp.idNRCellDU" value="`$configuration-phy-cell-id-input.fap-service[$idx].alias`"/>
+                                <parameter name="tmp.idGNBDUFunction" value="`$configuration-phy-cell-id-input.fap-service[$idx].pnf-name`"/>
+                                <parameter name="tmp.nRPCI" value="`$configuration-phy-cell-id-input.fap-service[$idx].phy-cell-id-in-use`"/>
+                            </set>
+                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.log" />
+                                <parameter name="level" value="info" />
+                                <parameter name="field1" value="idNRCellDU"/>
+                                <parameter name="field2" value="`$tmp.idNRCellDU`"/>
+                                <parameter name="field3" value="idGNBDUFunction"/>
+                                <parameter name="field4" value="`$tmp.idGNBDUFunction`"/>
+                                <parameter name="field5" value="nRPCI"/>
+                                <parameter name="field6" value="`$tmp.nRPCI`"/>
+                            </record>
+                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                <parameter name="source" value="`$prop.restapi.getGNBDUFunction.ransim-mounted`"/>
+                                <parameter name="outputPath" value="tmp.getGNBDUFunction-url"/>
+                                <parameter name="target" value="{idNearRTRIC}"/>
+                                <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                            </execute>
                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
-                                <parameter name="source" value="`$prop.restapi.fap-service.ransim-mounted`"/>
-                                <parameter name="outputPath" value="tmp.fap-service-url"/>
-                                <parameter name="target" value="{alias}"/>
-                                <parameter name="replacement" value="`$tmp.alias`"/>
+                                <parameter name="source" value="`$tmp.getGNBDUFunction-url`"/>
+                                <parameter name="outputPath" value="tmp.getGNBDUFunction-url"/>
+                                <parameter name="target" value="{mountName}"/>
+                                <parameter name="replacement" value="`$tmp.idGNBDUFunction`"/>
                             </execute>
                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
-                                <parameter name="source" value="`$tmp.fap-service-url`"/>
-                                <parameter name="outputPath" value="tmp.fap-service-url"/>
-                                <parameter name="target" value="{pnf-name}"/>
-                                <parameter name="replacement" value="`$tmp.pnf-name`"/>
+                                <parameter name="source" value="`$tmp.getGNBDUFunction-url`"/>
+                                <parameter name="outputPath" value="tmp.getGNBDUFunction-url"/>
+                                <parameter name="target" value="{idGNBDUFunction}"/>
+                                <parameter name="replacement" value="`$tmp.idGNBDUFunction`"/>
                             </execute>
                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                                 <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.log" />
                                 <parameter name="level" value="info" />
                                 <parameter name="field1" value="Setting variables for GET operation"/>
-                                <parameter name="field2" value="`$tmp.fap-service-url`"/>
-                                <parameter name="field3" value="`$tmp.alias`"/>
-                                <parameter name="field4" value="`$tmp.cid`"/>
-                                <parameter name="field5" value="`$tmp.phy-cell-id-in-use`"/>
-                                <parameter name="field6" value="`$tmp.pnf-name`"/>
+                                <parameter name="field2" value="`$tmp.getGNBDUFunction-url`"/>
+                                <parameter name="field3" value="`$tmp.idNRCellDU`"/>
+                                <parameter name="field4" value="`$tmp.idGNBDUFunction`"/>
+                                <parameter name="field5" value="`$tmp.nRPCI`"/>
                             </record>
                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
-                                <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.fap-service-url`"/>
+                                <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.getGNBDUFunction-url`"/>
                                 <parameter name="restapiUser" value="`$prop.controller.user`" />
                                 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
                                 <parameter name="format" value="json"/>
                                 <parameter name="httpMethod" value="GET"/>
-                                <parameter name="responsePrefix" value="oofpcigetfapservice"/>
+                                <parameter name="responsePrefix" value="getgnbdufunction"/>
                                 <parameter name='contentType' value='application/json' />
                                 <outcome value='failure'>
                                     <return status='failure'>
                                     </return>
                                 </outcome>
                                 <outcome value='success'>
-                                    <block>
-                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
-                                            <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.log" />
-                                            <parameter name="level" value="info" />
-                                            <parameter name="field1" value="Initial FAP Service PCI PARMS"/>
-                                            <parameter name="field2" value="`$oofpcigetfapservice.fap-service[0].alias`"/>
-                                            <parameter name="field3" value="`$oofpcigetfapservice.fap-service[0].x-0005b9-lte.phy-cell-id-in-use`"/>
-                                            <parameter name="field4" value="`$oofpcigetfapservice.fap-service[0].x-0005b9-lte.pnf-name`"/>
-                                        </record>
+                                    <block atomic='true'>
+                                        <for index='idq' start='0' end="`$getgnbdufunction.GNBDUFunction[0].NRCellDU_length`" >
+                                            <block atomic='true'>
+                                                <switch test='`$getgnbdufunction.GNBDUFunction[0].NRCellDU[$idq].idNRCellDU == $tmp.idNRCellDU`'>
+                                                    <outcome value='true'>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="Initial NRCellDU PCI PARMS"/>
+                                                            <parameter name="field2" value="`$getgnbdufunction.GNBDUFunction[0].idGNBDUFunction`"/>
+                                                            <parameter name="field3" value="`$getgnbdufunction.GNBDUFunction[0].NRCellDU[$idq].idNRCellDU`"/>
+                                                            <parameter name="field4" value="`$getgnbdufunction.GNBDUFunction[0].NRCellDU[$idq].attributes.nRPCI`"/>
+                                                        </record>
+                                                    </outcome>
+                                                </switch>
+                                            </block>
+                                        </for>
                                     </block>
                                 </outcome>
                             </execute>
                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
-                                <parameter name="source" value="`$prop.restapi.x-005b9-lte.ransim-mounted`"/>
-                                <parameter name="outputPath" value="tmp.oofpcipoc.patch.pci.url"/>
-                                <parameter name="target" value="{alias}"/>
-                                <parameter name="replacement" value="`$tmp.alias`"/>
+                                <parameter name="source" value="`$prop.restapi.patchNRCellDU.ransim-mounted`"/>
+                                <parameter name="outputPath" value="tmp.nrcelldu.patch.pci.url"/>
+                                <parameter name="target" value="{idNearRTRIC}"/>
+                                <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                            </execute>
+                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                <parameter name="source" value="`$tmp.nrcelldu.patch.pci.url`"/>
+                                <parameter name="outputPath" value="tmp.nrcelldu.patch.pci.url"/>
+                                <parameter name="target" value="{mountName}"/>
+                                <parameter name="replacement" value="`$tmp.idGNBDUFunction`"/>
+                            </execute>
+                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                <parameter name="source" value="`$tmp.nrcelldu.patch.pci.url`"/>
+                                <parameter name="outputPath" value="tmp.nrcelldu.patch.pci.url"/>
+                                <parameter name="target" value="{idGNBDUFunction}"/>
+                                <parameter name="replacement" value="`$tmp.idGNBDUFunction`"/>
                             </execute>
                             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
-                                <parameter name="source" value="`$tmp.oofpcipoc.patch.pci.url`"/>
-                                <parameter name="outputPath" value="tmp.oofpcipoc.patch.pci.url"/>
-                                <parameter name="target" value="{pnf-name}"/>
-                                <parameter name="replacement" value="`$tmp.pnf-name`"/>
+                                <parameter name="source" value="`$tmp.nrcelldu.patch.pci.url`"/>
+                                <parameter name="outputPath" value="tmp.nrcelldu.patch.pci.url"/>
+                                <parameter name="target" value="{idNRCellDU}"/>
+                                <parameter name="replacement" value="`$tmp.idNRCellDU`"/>
                             </execute>
                             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                                 <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.log" />
                                 <parameter name="level" value="info" />
-                                <parameter name="field1" value="URL and Target for PCI patch URL"/>
-                                <parameter name='field2' value="`$prop.controller.url + $tmp.oofpcipoc.patch.pci.url`" />
-                                <parameter name='field3' value="`$prop.oofpcipoc.patch.pci.target`" />
+                                <parameter name="field1" value="URL for PCI patch URL"/>
+                                <parameter name='field2' value="`$prop.controller.url + $tmp.nrcelldu.patch.pci.url`" />
                             </record>
                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
                                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/oofpcipoc-pci-patch.json'`" />
-                                <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.oofpcipoc.patch.pci.url`"/>
+                                <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.nrcelldu.patch.pci.url`"/>
                                 <parameter name="restapiUser" value="`$prop.controller.user`" />
                                 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
                                 <parameter name="httpMethod" value="PATCH"/>
-                                <parameter name="responsePrefix" value="oofpci-patch-response"/>
+                                <parameter name="responsePrefix" value="nrcelldu-patch-response"/>
                                 <parameter name='contentType' value='application/yang.patch+json' />
                                 <parameter name='format' value='json' />
                                 <parameter name='accept' value='application/yang.patch-status+json' />
                                 </outcome>
                             </execute>
                             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
-                                <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.fap-service-url`"/>
+                                <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.getGNBDUFunction-url`"/>
                                 <parameter name="restapiUser" value="`$prop.controller.user`" />
                                 <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
                                 <parameter name="format" value="json"/>
                                 <parameter name="httpMethod" value="GET"/>
-                                <parameter name="responsePrefix" value="oofpcigetfapservice"/>
+                                <parameter name="responsePrefix" value="getgnbdufunction"/>
                                 <parameter name='contentType' value='application/json' />
                                 <outcome value='failure'>
                                     <return status='failure'>
                                     </return>
                                 </outcome>
                                 <outcome value='success'>
-                                    <block>
+                                    <block atomic='true'>
+                                        <for index='idq' start='0' end="`$getgnbdufunction.GNBDUFunction[0].NRCellDU_length`" >
+                                            <block atomic='true'>
+                                                <switch test='`$getgnbdufunction.GNBDUFunction[0].NRCellDU[$idq].idNRCellDU == $tmp.idNRCellDU`'>
+                                                    <outcome value='true'>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="Post Reconfig NRCELLDU PCI PARMS"/>
+                                                            <parameter name="field2" value="`$getgnbdufunction.GNBDUFunction[0].idGNBDUFunction`"/>
+                                                            <parameter name="field3" value="`$getgnbdufunction.GNBDUFunction[0].NRCellDU[$idq].idNRCellDU`"/>
+                                                            <parameter name="field4" value="`$getgnbdufunction.GNBDUFunction[0].NRCellDU[$idq].attributes.nRPCI`"/>
+                                                        </record>
+                                                    </outcome>
+                                                </switch>
+                                            </block>
+                                        </for>
+                                    </block>
+                                </outcome>
+                            </execute>
+                            <switch test='`$prop.configdb-deployed`'>
+                                <outcome value='false'>
+                                    <block atomic='true'>
+                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                            <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.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.putnrpci.nrcelldu.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.putnrpci.nrcelldu.url`"/>
+                                            <parameter name="outputPath" value="tmp.cps.putnrpci.nrcelldu.url"/>
+                                            <parameter name="target" value="{templateId}"/>
+                                            <parameter name="replacement" value="`$prop.tbdmt.template.put-nrpci-nrcelldu`"/>
+                                        </execute>
                                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
                                             <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.log" />
                                             <parameter name="level" value="info" />
-                                            <parameter name="field1" value="Post Reconfig FAP Service PCI PARMS"/>
-                                            <parameter name="field2" value="`$oofpcigetfapservice.fap-service[0].alias`"/>
-                                            <parameter name="field3" value="`$oofpcigetfapservice.fap-service[0].x-0005b9-lte.phy-cell-id-in-use`"/>
-                                            <parameter name="field4" value="`$oofpcigetfapservice.fap-service[0].x-0005b9-lte.pnf-name`"/>
+                                            <parameter name="field1" value="URL for CPS TDBMT to put nRPCI NRCellDU"/>
+                                            <parameter name='field2' value="`$tmp.cps.putnrpci.nrcelldu.url`" />
                                         </record>
+                                        <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                            <parameter name="restapiUrl" value="`$tmp.cps.putnrpci.nrcelldu.url`"/>
+                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/cps-templates/cps-put-nrpci.json'`" />
+                                            <parameter name="httpMethod" value="POST"/>
+                                            <parameter name="responsePrefix" value="cps-put-nrpci-nrcelldu-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/configuration-phy-cell-id.log" />
+                                                        <parameter name="level" value="info" />
+                                                        <parameter name="field1" value="Successfully Updated NRCellDU info in cps"/>
+                                                    </record>
+                                                </block>
+                                            </outcome>
+                                        </execute>
                                     </block>
                                 </outcome>
-                            </execute>
-                            <switch test='`$prop.configdb-deployed`'>
                                 <outcome value='true'>
                                     <block atomic='true'>
                                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
                         </block>
                     </outcome>
                 </execute>
-                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='escapeJsonString' >
-                    <parameter name="source" value='`$tmp.oofpcipoc-dmaap-config-resp.payload`'/>
-                    <parameter name="target" value='tmp.oofpcipoc-dmaap-config-resp.payload'/>
-                    <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/configuration-phy-cell-id.log" />
-                                <parameter name="level" value="info" />
-                                <parameter name="field1" value="__TIMESTAMP__"/>
-                                <parameter name="field2" value="Redndred template as an Escaped string"/>
-                                <parameter name='field3' value='`$tmp.oofpcipoc-dmaap-config-resp.payload`' />
-                            </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 inserting escape chars in SDNR response payload string. Aborting PCI configuration" />
-                            </return>
-                        </block>
-                    </outcome>
-                </execute>
             </block>
             <block atomic='true'>
                 <set>
                     <parameter name='tmp.oofpcipoc-dmaap-config-resp.rpc-name' value='`$prop.oofpcipoc-dmaap-config-resp.rpc-name.modifyconfig`'/>
                 </set>
+                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                    <parameter name="file" value="/opt/opendaylight/current/data/log/configuration-phy-cell-id.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`" />
+                </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`" />