Details
-
Story
-
Status: Closed
-
Medium
-
Resolution: Done
-
None
-
None
Description
SDN-C output for datanodes seems to include a 'prefix' for the top level (node) and possibly other nodes (when entering separate modules?)
The intention is dat client can easily switch between passthrough and non-passthrough queries without affect on the output format for Yang modelled nodes.
This user story is to propose a solution to ensure this alignment
As discussed on 27/04/2022:
The proposal is to add module name prefix to cps-core output because passthrough output cannot be modified.
Sample passthrough query:
curl -X 'GET' --user cpsuser:cpsr0cks! "http://localhost:8883/ncmp/v1/ch/22/data/ds/ncmp-datastore:passthrough-running?resourceIdentifier=ran-network:ran-network/NearRTRIC=22/GNBDUFunction =660/NRCellDU=15361/attributes" -H 'accept: application/json' -i 'ran-network' is prefixed in the output of above request { "ran-network:attributes":{ "sAP":[ { "host":"localhost", "port":8080 } ], "nRSectorCarrierRef":[ "OU=Sales" ], "cellLocalId":15361, "administrativeState":"UNLOCKED", "nRPCI":12, "nRTAC":310 } }
Implementation details
Get prefix from schemaset using schemaset cache (YangTextSchemaSourceSetCache)
Use of ODL to convert Yang to a java object, see also org.onap.cps.yang.YangTextSchemaSourceSetBuilder#generateSchemaContext
(possibly start caching these objects in a new cache too - using the same key)
Open Issues
- If the child is in a different module should it have a prefix
- If the output starts with non-root element should it have a prefix
- Discuss backward incompatibility with stakeholders
- WiPro (E2E Slicing)
- Ericsson
- Bell (Bruno has confirmed that they are not impacted ?)
A/C
- Demo the correct prefix is added just to the root element
- agree with stakeholders what to do with the backward incompatibility
Out-of-scope
1. Implementation for open issue #1 (handled in separate user story as E2E slining probably won't depend on this)
Attachments
Issue Links
1.
|
Review CPS-870: Align CPS-Core output with SDN-C output (add module name) |
|
Closed | Unassigned |