Create MdsalRestconfServer
The actual binding to MD-SAL services is independent of other
concerns, just as JAX-RS binding.
Introduce MdsalRestconfServer to act as an intermediary. This allows us
to centralize data binding operations and later act as the central
implementation dispatch.
This reduces the number of callers to
InstanceIdentifierParser.toInstanceIdentifier(), as we have a proper
indirection to bind either the root or a non-empty identifier and can
provide the first cut of differentiated binding.
In RestconfOperationsServiceImpl this has the nice effect of bringing
together the two distinct invocation paths, leading to
OperationsContent.bodyFor(EffectiveModelContext) being redundant.
In RestconfDataServiceImpl we lose getRestconfStrategy(), which is now
invoked on the server. We also clarify variable names, so they have a
semantic meaning.
RestconfInvokeOperationsServiceImpl integration sees RestconfStrategy
grow awareness of DOMRpcService, providing a clean invocation interface
centered around RestconfFuture<Optional<ContainerNode>>. That
co-location of concerns also allow us to perform only a single error
mapping, we any DOMRpcResult's errors into a
RestconfDocumentedException.
JIRA: NETCONF-1157
Change-Id: I9ecefb2e065b4ad6ed8e4226713da851a1050619
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
20 files changed: