Bug 3874: Support of yang modeled AnyXML 50/29550/6
authorPeter Kajsa <pkajsa@cisco.com>
Wed, 11 Nov 2015 13:53:34 +0000 (14:53 +0100)
committerTony Tkacik <ttkacik@cisco.com>
Mon, 7 Dec 2015 12:34:22 +0000 (12:34 +0000)
Controller changes due to anyXml support in Yangtools.

Notice: Yangtools patch and Controller patch should be merged at once.

Change-Id: I4ff9ef4a0e03f6ad9b30c2a35b97b3a6fa1793d9
Signed-off-by: Peter Kajsa <pkajsa@cisco.com>
opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/NodeTypes.java
opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/NormalizedNodeOutputStreamWriter.java
opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/NormalizedNodePruner.java

index 83497e683224bac7aaaf7a3be3693abfab96f4e5..6b71fac48546252827581894afa070fe381489ba 100644 (file)
@@ -22,6 +22,7 @@ final class NodeTypes {
     public static final byte AUGMENTATION_NODE = 11;
     public static final byte ANY_XML_NODE = 12;
     public static final byte END_NODE = 13;
+    public static final byte YANG_MODELED_ANY_XML_NODE = 14;
 
     private NodeTypes() {
         throw new UnsupportedOperationException("utility class");
index 670d3e513e9373ca0baca79336bbd52a0eabf99e..9ff7457298ef3c43745d0b76ed21c6b19e1f3314 100644 (file)
@@ -127,6 +127,15 @@ public class NormalizedNodeOutputStreamWriter implements NormalizedNodeStreamWri
         startNode(name.getNodeType(), NodeTypes.CONTAINER_NODE);
     }
 
+    @Override
+    public void startYangModeledAnyXmlNode(YangInstanceIdentifier.NodeIdentifier name, int childSizeHint) throws IOException, IllegalArgumentException {
+        Preconditions.checkNotNull(name, "Node identifier should not be null");
+
+        LOG.debug("Starting a new yang modeled anyXml node");
+
+        startNode(name.getNodeType(), NodeTypes.YANG_MODELED_ANY_XML_NODE);
+    }
+
     @Override
     public void startUnkeyedList(YangInstanceIdentifier.NodeIdentifier name, int childSizeHint) throws IOException, IllegalArgumentException {
         Preconditions.checkNotNull(name, "Node identifier should not be null");
index 6877a54a8a83a0d47f4375f529f689a1dc954ed5..d6f09973f5e958ff9695525215ff33cbb8971ca2 100644 (file)
@@ -10,13 +10,16 @@ package org.opendaylight.controller.cluster.datastore.node.utils.transformer;
 
 import com.google.common.annotations.VisibleForTesting;
 import com.google.common.base.Preconditions;
+
 import java.io.IOException;
 import java.net.URI;
 import java.util.HashSet;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Set;
+
 import javax.xml.transform.dom.DOMSource;
+
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
@@ -97,6 +100,11 @@ public class NormalizedNodePruner implements NormalizedNodeStreamWriter {
         addBuilder(Builders.containerBuilder().withNodeIdentifier(nodeIdentifier), nodeIdentifier);
     }
 
+    @Override
+    public void startYangModeledAnyXmlNode(YangInstanceIdentifier.NodeIdentifier nodeIdentifier, int i) throws IOException, IllegalArgumentException {
+        throw new UnsupportedOperationException("Not implemented yet");
+    }
+
     @Override
     public void startUnkeyedList(YangInstanceIdentifier.NodeIdentifier nodeIdentifier, int i) throws IOException, IllegalArgumentException {