Make NodeModification return a Collection 98/14398/1
authorRobert Varga <rovarga@cisco.com>
Thu, 22 Jan 2015 19:00:33 +0000 (20:00 +0100)
committerRobert Varga <rovarga@cisco.com>
Thu, 22 Jan 2015 19:00:33 +0000 (20:00 +0100)
Knowing the number of nodes is often useful. Our internal implementation
uses a Map, so we can freely promote this to a Collection.

Change-Id: Ieaa6a9ffa32c84d8484a2ed84f027ff205c4e738
Signed-off-by: Robert Varga <rovarga@cisco.com>
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModifiedNode.java
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/NodeModification.java

index 540eb9a632d57b47913c86d63cd5c43d435a681c..448828bd9a0544b7f4e9d152d1f22c6e32aa5087 100644 (file)
@@ -10,6 +10,7 @@ package org.opendaylight.yangtools.yang.data.impl.schema.tree;
 import com.google.common.base.Optional;
 import com.google.common.base.Preconditions;
 import com.google.common.base.Predicate;
+import java.util.Collection;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.LinkedHashMap;
@@ -157,7 +158,7 @@ final class ModifiedNode extends NodeModification implements StoreTreeNode<Modif
      * @return all recorded direct child modifications
      */
     @Override
-    Iterable<ModifiedNode> getChildren() {
+    Collection<ModifiedNode> getChildren() {
         return children.values();
     }
 
index 8e92ff1f22af9a54444033d8af1a18f4f04cdfe6..f3282faa7bd7e20985a0c711e69be709e5dee6f2 100644 (file)
@@ -9,6 +9,7 @@ package org.opendaylight.yangtools.yang.data.impl.schema.tree;
 
 
 import com.google.common.base.Optional;
+import java.util.Collection;
 import org.opendaylight.yangtools.concepts.Identifiable;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType;
@@ -38,7 +39,7 @@ abstract class NodeModification implements Identifiable<PathArgument> {
     /**
      * Get a read-only view of children nodes.
      *
-     * @return Iterable of all children nodes.
+     * @return Collection of all children nodes.
      */
-    abstract Iterable<? extends NodeModification> getChildren();
+    abstract Collection<? extends NodeModification> getChildren();
 }