X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-rest-connector%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Frest%2Fimpl%2FJsonNormalizedNodeBodyReader.java;h=3be247a3bbdc71a911570d431dc679c86e1222d4;hp=10399ffeffa85a20b7bb0c3c8de77aff069a86ac;hb=2890d49fb524bf060f7e95c83bc025df0b6980ed;hpb=107324809285bfbb9890cba38ffa18390f8de4bd diff --git a/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/rest/impl/JsonNormalizedNodeBodyReader.java b/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/rest/impl/JsonNormalizedNodeBodyReader.java index 10399ffeff..3be247a3bb 100644 --- a/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/rest/impl/JsonNormalizedNodeBodyReader.java +++ b/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/rest/impl/JsonNormalizedNodeBodyReader.java @@ -90,7 +90,7 @@ public class JsonNormalizedNodeBodyReader extends AbstractIdentifierAwareJaxRsPr NormalizedNode partialResult = resultHolder.getResult(); final NormalizedNode result; - // unwrap result from augmentation and choice nodes on PUT + // FIXME: Also II should be updated unwrap result from augmentation and choice nodes on PUT if (!isPost()) { while (partialResult instanceof AugmentationNode || partialResult instanceof ChoiceNode) { final Object childNode = ((DataContainerNode) partialResult).getValue().iterator().next(); @@ -98,12 +98,14 @@ public class JsonNormalizedNodeBodyReader extends AbstractIdentifierAwareJaxRsPr } } - if (partialResult instanceof MapNode) { + if (partialResult instanceof MapNode && !isPost()) { result = Iterables.getOnlyElement(((MapNode) partialResult).getValue()); } else { result = partialResult; } return new NormalizedNodeContext(path,result); + } catch (final RestconfDocumentedException e) { + throw e; } catch (final Exception e) { LOG.debug("Error parsing json input", e);