X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fnetconf%2Fnetconf-cli%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fnetconf%2Fcli%2Freader%2Fcustom%2FConfigReader.java;h=111a2420c5619a5b464c46b749d295d7a0b25bfb;hb=2d62916cb1f4b4045f4fc38fbd313f8339f9ac67;hp=95fc098c76b8c7ffa4696026704ec0ced02d59f4;hpb=cbe83ca3074fa0182d4f079f528bb710a997ced7;p=controller.git diff --git a/opendaylight/netconf/netconf-cli/src/main/java/org/opendaylight/controller/netconf/cli/reader/custom/ConfigReader.java b/opendaylight/netconf/netconf-cli/src/main/java/org/opendaylight/controller/netconf/cli/reader/custom/ConfigReader.java index 95fc098c76..111a2420c5 100644 --- a/opendaylight/netconf/netconf-cli/src/main/java/org/opendaylight/controller/netconf/cli/reader/custom/ConfigReader.java +++ b/opendaylight/netconf/netconf-cli/src/main/java/org/opendaylight/controller/netconf/cli/reader/custom/ConfigReader.java @@ -33,8 +33,10 @@ import org.opendaylight.controller.netconf.cli.io.IOUtil; import org.opendaylight.controller.netconf.cli.reader.AbstractReader; import org.opendaylight.controller.netconf.cli.reader.ReadingException; import org.opendaylight.yangtools.yang.common.QName; -import org.opendaylight.yangtools.yang.data.api.Node; -import org.opendaylight.yangtools.yang.data.impl.CompositeNodeTOImpl; +import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; +import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild; +import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder; import org.opendaylight.yangtools.yang.model.api.DataNodeContainer; import org.opendaylight.yangtools.yang.model.api.DataSchemaNode; import org.opendaylight.yangtools.yang.model.api.Module; @@ -69,7 +71,7 @@ public class ConfigReader extends AbstractReader { // FIXME refactor + unite common code with FilterReader @Override - protected List> readWithContext(final DataSchemaNode schemaNode) throws IOException, ReadingException { + protected List> readWithContext(final DataSchemaNode schemaNode) throws IOException, ReadingException { console.writeLn("Config " + schemaNode.getQName().getLocalName()); console.writeLn("Submit path of the data to edit. Use TAB for autocomplete"); @@ -87,20 +89,25 @@ public class ConfigReader extends AbstractReader { filterPartsQNames.add(qName); } - List> previous = readInnerNode(rawValue); + List> previous = readInnerNode(rawValue); for (final QName qName : Lists.reverse(filterPartsQNames).subList(1, filterPartsQNames.size())) { - previous = Collections.> singletonList(new CompositeNodeTOImpl(qName, null, - previous == null ? Collections.> emptyList() : previous)); + previous = Collections.>singletonList( + ImmutableContainerNodeBuilder.create() + .withNodeIdentifier(new NodeIdentifier(qName)) + .withValue(previous == null ? Collections.>emptyList() : (Collection) previous).build() + ); } - final Node newNode = previous == null ? null - : new CompositeNodeTOImpl(schemaNode.getQName(), null, previous); + final DataContainerChild newNode = previous == null ? null + : ImmutableContainerNodeBuilder.create() + .withNodeIdentifier(new NodeIdentifier(schemaNode.getQName())) + .withValue((Collection) previous).build(); - return Collections.> singletonList(newNode); + return Collections.> singletonList(newNode); } - private List> readInnerNode(final String pathString) throws ReadingException { + private List> readInnerNode(final String pathString) throws ReadingException { final Optional schema = getCurrentNode(getSchemaContext(), pathString); Preconditions.checkState(schema.isPresent(), "Unable to find schema for %s", pathString); return commandArgHandlerRegistry.getGenericReader(getSchemaContext(), true).read(schema.get());