Draft at proposal where the DataNodeBuilder 'replaces' yang Utils to buidl a DataNode

Most complexity is related to immutable collections and the fact taht we are adding data while recursing
over the orignal data in an uncontrolled order.

I cleaned it up as best I could with no logic in DataNode.
Espcially the handling of LitLeaves requires some specialed handling. Thsi is just a draft solution for that
I still propose we get back to that in dedicated user stories for handling the various types of Yang elements

Hope this helps...

Issue-ID: CPS-137

Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
Change-Id: Iab7cfcff67412c01bcdab95e707e1350bf60fab1
7 files changed
tree: 9ac4eeb64c92bdf8b4de1773dcfd195158b30a6c
  1. checkstyle/
  2. cps-bom/
  3. cps-dependencies/
  4. cps-parent/
  5. cps-rest/
  6. cps-ri/
  7. cps-service/
  8. docker-compose/
  9. spotbugs/
  10. .gitignore
  11. .gitreview
  12. INFO.yaml
  13. LICENSE.txt
  14. pom.xml
  15. README.md
  16. version.properties
README.md

Configuration Persistence Service

This folder contains all files for Configuration Persistence Service.

The code here is related to CPS POC, then it must be kept self contained in this cps folder to prevent any impact on current ccsdk components and to be ready to be moved in its own repo once CPS becomes a standalone project.

Running Locally

  • Run a postgres container instance and create `cpsdb' database:
CREATE USER cps WITH PASSWORD 'cps';
CREATE DATABASE cpsdb OWNER cps;
  • Build (from cps root folder)
mvn clean package
  • Run (from cps root folder)
java -DDB_HOST=localhost -DDB_USERNAME=cps -DDB_PASSWORD=cps -jar cps-rest/target/cps-rest-0.0.1-SNAPSHOT.jar