Status | ||||||
---|---|---|---|---|---|---|
|
This page documents the existing Yang Parser (s) used in ONAP and /or OpenDayLight and will investigate if they can be used for the C&PS.(Work in progress)
Resources
- https://docs.opendaylight.org/en/stable-nitrogenlatest/developer-guide/yang-tools.html#yang-parserhtml
- https://git.opendaylight.org/gerrit/admin/repos/yangtools
- https://gerrit.onap.org/r/admin/repos/ccsdk/sli/plugins
Overview
The Yang parser used in ONAP (CCSDK / SDNC) was developed (and still is) a OpenDayLight Library.
There are 2 different usage patterns within CCSDK, though.
Most of CCSDK/SDNC is using Yang primarily to define their northbound interfaces. In that context, there’s a maven plugin (org.opendaylight.yangtools:yang-maven-plugin) that is used to generate source code from the Yang model. Our application code in that case doesn’t really do anything directly with the Yang, since all of the that is handled for us by the generated code.
In ccsdk/sli/plugins, there is a plugin called restconf-client which was contributed by Huawei. That code uses the yangtool parser more directly so that it can interpret the results being returned when it calls a restconf interface.
Mini-PoC
To help this evaluation I will create a small sample project with the goal to pare a yang file using the ODL Yang Tools. I will report my finds here
Maven dependency
The documentation mentioned above lists many modules but the code examples do not clarify which exactly are need to parse a Yang file in java code.