From d754f49feab71a748bc2392a465177e5c5ed987d Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Fri, 8 Jan 2021 23:11:07 +0000 Subject: Add some comments. --- config-lib/src/main/java/com/yahoo/config/InnerNode.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'config-lib/src') diff --git a/config-lib/src/main/java/com/yahoo/config/InnerNode.java b/config-lib/src/main/java/com/yahoo/config/InnerNode.java index 94afe64b667..45f61fee315 100644 --- a/config-lib/src/main/java/com/yahoo/config/InnerNode.java +++ b/config-lib/src/main/java/com/yahoo/config/InnerNode.java @@ -64,6 +64,8 @@ public abstract class InnerNode extends Node { if ( !(other instanceof InnerNode) || (other.getClass() != this.getClass())) return false; + /* This implementation requires getChildren() to return elements in order. + Hence we should make it final. Or make equals independent of order. */ Collection children = getChildren().values(); Collection otherChildren = ((InnerNode)other).getChildren().values(); @@ -86,8 +88,9 @@ public abstract class InnerNode extends Node { return res; } + // TODO Make final before Vespa 8 as correct order is required protected Map getChildren() { - HashMap ret = new LinkedHashMap(); + HashMap ret = new LinkedHashMap<>(); Field fields[] = getClass().getDeclaredFields(); for (Field field : fields) { field.setAccessible(true); @@ -108,10 +111,11 @@ public abstract class InnerNode extends Node { /** * Returns a flat map of this node's direct children, including all NodeVectors' elements. * Keys are the node name, including index for vector elements, e.g. 'arr[0]'. + * TODO Make final before Vespa 8 as correct order is required */ @SuppressWarnings("unchecked") protected Map getChildrenWithVectorsFlattened() { - HashMap ret = new LinkedHashMap(); + HashMap ret = new LinkedHashMap<>(); Map children = getChildren(); for (Map.Entry childEntry : children.entrySet()) { @@ -151,7 +155,7 @@ public abstract class InnerNode extends Node { * @return map of leaf nodes */ private static Map> getAllDescendantLeafNodes(String parentName, InnerNode node) { - Map> ret = new LinkedHashMap>(); + Map> ret = new LinkedHashMap<>(); String prefix = parentName.isEmpty() ? "" : parentName + "."; Map children = node.getChildrenWithVectorsFlattened(); for (Map.Entry childEntry : children.entrySet()) { -- cgit v1.2.3