ReadData and ReadDataReply protobuff messages
[controller.git] / opendaylight / md-sal / sal-protocolbuffer-encoding / src / main / java / org / opendaylight / controller / cluster / datastore / node / NodeToNormalizedNodeBuilder.java
index 95b6f4fb5c263322d34783fef7605fdbaa42b904..b0ba487177b7d1004b08d5645661c8d76ac55614 100644 (file)
@@ -4,8 +4,8 @@ import com.google.common.base.Preconditions;
 import com.google.common.collect.FluentIterable;
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.ImmutableSet;
-import org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node;
 import org.opendaylight.controller.cluster.datastore.node.utils.NodeIdentifierFactory;
+import org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node;
 import org.opendaylight.yangtools.concepts.Identifiable;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier.AugmentationIdentifier;
@@ -14,6 +14,7 @@ import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier.NodeIdentifie
 import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier.NodeWithValue;
 import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier.PathArgument;
 import org.opendaylight.yangtools.yang.data.api.schema.AugmentationNode;
+import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
 import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodeContainer;
@@ -192,7 +193,8 @@ public abstract class NodeToNormalizedNodeBuilder<T extends PathArgument>
     public final NormalizedNodeContainer<?, ?, ?> normalize(
         final QName nodeType, final Node node) {
       checkArgument(node != null);
-      if (!node.getType().equals(AugmentationNode.class.getSimpleName())) {
+
+      if (!node.getType().equals(AugmentationNode.class.getSimpleName())&& !node.getType().equals(ContainerNode.class.getSimpleName())) {
         checkArgument(nodeType != null);
       }
 
@@ -202,7 +204,7 @@ public abstract class NodeToNormalizedNodeBuilder<T extends PathArgument>
 
       logNode(node);
 
-      if (node.getChildCount() == 0) {
+      if (node.getChildCount() == 0 && !node.getType().equals(ContainerNode.class.getSimpleName())) {
         PathArgument childPathArgument =
             NodeIdentifierFactory.getArgument(node.getPath());
         NormalizedNode child = null;