BUG-7464: Eliminate custom Map.Entry implementation 63/49863/7
authorRobert Varga <rovarga@cisco.com>
Fri, 30 Dec 2016 10:02:07 +0000 (11:02 +0100)
committerRobert Varga <nite@hq.sk>
Mon, 9 Jan 2017 14:05:19 +0000 (14:05 +0000)
AbstractMap.SimpleImmutableEntry serves the same purpose,
so use that instead of home-grown class.

Change-Id: Ifdb27bff9b87ef0d208a03b2e2d870c42ef82822
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
third-party/triemap/src/main/java/org/opendaylight/yangtools/triemap/ListMap.java
third-party/triemap/src/main/java/org/opendaylight/yangtools/triemap/Pair.java [deleted file]
third-party/triemap/src/main/java/org/opendaylight/yangtools/triemap/TrieMap.java

index fd3da93de745fcadc158d3c7e8df1c511acddda9..21d7b8469258d57ecee7513a69a266ded0378016 100644 (file)
@@ -1,6 +1,7 @@
 package org.opendaylight.yangtools.triemap;
 
 import java.util.Iterator;
+import java.util.AbstractMap.SimpleImmutableEntry;
 import java.util.Map;
 import java.util.Map.Entry;
 
@@ -210,7 +211,7 @@ abstract class ListMap<K,V> {
             public Entry<K, V> next () {
                 if (n instanceof Node) {
                     Node<K, V> nn = (Node<K, V>) n;
-                    Pair<K, V> res = new Pair<K, V> (nn.k, nn.v);
+                    Entry<K, V> res = new SimpleImmutableEntry<K, V> (nn.k, nn.v);
                     n = n.next;
                     return res;
                 } else {
diff --git a/third-party/triemap/src/main/java/org/opendaylight/yangtools/triemap/Pair.java b/third-party/triemap/src/main/java/org/opendaylight/yangtools/triemap/Pair.java
deleted file mode 100644 (file)
index 2bb73f9..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-package org.opendaylight.yangtools.triemap;
-
-import java.util.Map;
-
-/***
- * Helper class simulating a tuple of 2 elements in Scala
- * 
- * @author Roman Levenstein <romixlev@gmail.com>
- *
- * @param <K>
- * @param <V>
- */
-class Pair<K, V> implements Map.Entry<K, V> {
-
-    final K k;
-    final V v;
-
-    Pair (K k, V v) {
-        this.k = k;
-        this.v = v;
-    }
-
-    @Override
-    public K getKey () {
-        // TODO Auto-generated method stub
-        return k;
-    }
-
-    @Override
-    public V getValue () {
-        // TODO Auto-generated method stub
-        return v;
-    }
-
-    @Override
-    public V setValue (V value) {
-        throw new RuntimeException ("Operation not supported");
-    }
-
-}
index f727f0eddcf89bae862f984f765f96ebf1b5eea6..63118d3b8019a3be46844e5fd79137da8042ace7 100644 (file)
@@ -6,6 +6,7 @@ import java.io.ObjectOutputStream;
 import java.io.Serializable;
 import java.lang.reflect.Field;
 import java.util.AbstractMap;
+import java.util.AbstractMap.SimpleImmutableEntry;
 import java.util.AbstractSet;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -671,7 +672,7 @@ public class TrieMap<K, V> extends AbstractMap<K, V> implements ConcurrentMap<K,
         }
 
         final public Map.Entry<K, V> kvPair () {
-            return new Pair<K, V> (k, v);
+            return new SimpleImmutableEntry<K, V> (k, v);
         }
 
         final public String string (int lev) {
@@ -703,8 +704,8 @@ public class TrieMap<K, V> extends AbstractMap<K, V> implements ConcurrentMap<K,
             return new SNode<K, V> (k, v, hc);
         }
 
-        final public Pair<K, V> kvPair () {
-            return new Pair<K, V> (k, v);
+        final public Map.Entry<K, V> kvPair () {
+            return new SimpleImmutableEntry<K, V> (k, v);
         }
 
         final public int cachedSize (Object ct) {