Do not instantiate new maps in LeafRefContextBuilder 97/31997/2
authorRobert Varga <robert.varga@pantheon.sk>
Sat, 2 Jan 2016 12:05:45 +0000 (13:05 +0100)
committerGerrit Code Review <gerrit@opendaylight.org>
Mon, 4 Jan 2016 16:22:58 +0000 (16:22 +0000)
LeafRefContext already picks up a constant copy, there is no need to
instantiate new maps. Also adjust names to proper English.

Change-Id: I59c7e0c86bb5eb3580b3f7db8649fca69d7987fe
Signed-off-by: Robert Varga <robert.varga@pantheon.sk>
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/leafref/LeafRefContextBuilder.java

index 4349bd5396bafd717f09f6467c8d36198158ecf4..b9899f17366b92a906f8f8e38112de0b1f9290b6 100644 (file)
@@ -28,9 +28,9 @@ class LeafRefContextBuilder {
     private boolean isReferencedBy = false;
     private boolean isReferencing = false;
 
-    private Map<QName, LeafRefContext> referencingChilds = new HashMap<QName, LeafRefContext>();
-    private Map<QName, LeafRefContext> referencedByChilds = new HashMap<QName, LeafRefContext>();
-    private Map<QName, LeafRefContext> referencedByLeafRefCtx = new HashMap<QName, LeafRefContext>();
+    private final Map<QName, LeafRefContext> referencingChildren = new HashMap<>();
+    private final Map<QName, LeafRefContext> referencedByChildren = new HashMap<>();
+    private final Map<QName, LeafRefContext> referencedByLeafRefCtx = new HashMap<>();
 
     public LeafRefContextBuilder(final QName currentNodeQName,
             final SchemaPath currentNodePath, final SchemaContext schemaContext) {
@@ -42,9 +42,10 @@ class LeafRefContextBuilder {
     public LeafRefContext build() {
         final LeafRefContext leafRefContext = new LeafRefContext(this);
 
-        referencingChilds = new HashMap<QName, LeafRefContext>();
-        referencedByChilds = new HashMap<QName, LeafRefContext>();
-        referencedByLeafRefCtx = new HashMap<QName, LeafRefContext>();
+        // LeafRefContext has made a copy of these
+        referencingChildren.clear();
+        referencedByChildren.clear();
+        referencedByLeafRefCtx.clear();
 
         return leafRefContext;
     }
@@ -54,11 +55,11 @@ class LeafRefContextBuilder {
     }
 
     public boolean hasReferencedByChild() {
-        return !referencedByChilds.isEmpty();
+        return !referencedByChildren.isEmpty();
     }
 
     public boolean hasReferencingChild() {
-        return !referencingChilds.isEmpty();
+        return !referencingChildren.isEmpty();
     }
 
     public boolean isReferencedBy() {
@@ -78,27 +79,27 @@ class LeafRefContextBuilder {
     }
 
     public void addReferencingChild(final LeafRefContext child, final QName childQName) {
-        referencingChilds.put(childQName, child);
+        referencingChildren.put(childQName, child);
     }
 
     public LeafRefContext getReferencingChildByName(final QName name) {
-        return referencingChilds.get(name);
+        return referencingChildren.get(name);
     }
 
     public Map<QName, LeafRefContext> getReferencingChilds() {
-        return referencingChilds;
+        return referencingChildren;
     }
 
     public void addReferencedByChild(final LeafRefContext child, final QName childQName) {
-        referencedByChilds.put(childQName, child);
+        referencedByChildren.put(childQName, child);
     }
 
     public LeafRefContext getReferencedByChildByName(final QName name) {
-        return referencedByChilds.get(name);
+        return referencedByChildren.get(name);
     }
 
     public Map<QName, LeafRefContext> getReferencedByChilds() {
-        return referencedByChilds;
+        return referencedByChildren;
     }
 
     public SchemaPath getCurrentNodePath() {