Add NormalizedNodeContainer.size()
[yangtools.git] / yang / yang-data-api / src / main / java / org / opendaylight / yangtools / yang / data / api / schema / tree / spi / AbstractMutableContainerNode.java
index 453c510363ec0c298416cda542910f1e7271d2d5..22b2488c9f14ab840fdcab99ae2491ddb213fb22 100644 (file)
@@ -59,7 +59,7 @@ abstract class AbstractMutableContainerNode implements MutableTreeNode {
 
     @Override
     public final void removeChild(final PathArgument id) {
-        children.remove(id);
+        children.remove(requireNonNull(id));
     }
 
     @Override
@@ -81,10 +81,11 @@ abstract class AbstractMutableContainerNode implements MutableTreeNode {
          */
         if (!version.equals(subtreeVersion)) {
             final Map<PathArgument, TreeNode> newChildren = MapAdaptor.getDefaultInstance().optimize(children);
-            final int dataSize = getData().getValue().size();
-            if (dataSize != newChildren.size()) {
-                verify(dataSize > newChildren.size(), "Detected %s modified children, data has only %s",
-                    newChildren.size(), dataSize);
+            final int dataSize = getData().size();
+            final int childrenSize = newChildren.size();
+            if (dataSize != childrenSize) {
+                verify(dataSize > childrenSize, "Detected %s modified children, data has only %s",
+                    childrenSize, dataSize);
                 ret = new LazyContainerNode(data, version, newChildren, subtreeVersion);
             } else {
                 ret = new MaterializedContainerNode(data, version, newChildren, subtreeVersion);