Current layout of source code within netconf.git leaves a lot to be desired. We specifically want to separate concerts into:
/transport /protocol /plugins /apps
The idea being that:
- netconf-{api,impl,client} as well as restconf-api lives in /protocol – e.g. both RESTCONF and NETCONF protocol-layer stuff lives here
- sal-rest-docgen and RESTCONF northbound application lives in /apps – these are end-to-end integrations
- sal-netconf-connector et al. live in /plugins, e.g. they provide MDSAL/protocol integration
- the "secure transport" bits of RFC6241 live in /transport, dealing with how the session is established
This has further implications – netconf-impl contains the core protocol, but also the netconf server, whereas netconf-client deals with client bits. This means the server bits need to live in netconf-server. There may well be other implications which are in scope.