Immutability for getMeters APIs

Change-Id: Iaf908766aa360e84e82306e398fff56c9593d8f1
diff --git a/core/api/src/test/java/org/onosproject/store/service/TestConsistentMap.java b/core/api/src/test/java/org/onosproject/store/service/TestConsistentMap.java
index 84d1734..e0df8c6 100644
--- a/core/api/src/test/java/org/onosproject/store/service/TestConsistentMap.java
+++ b/core/api/src/test/java/org/onosproject/store/service/TestConsistentMap.java
@@ -44,6 +44,8 @@
     private final String mapName;
     private final AtomicLong counter = new AtomicLong(0);
     private final Serializer serializer;
+    private Map<K, V> javaMap;
+
 
     private TestConsistentMap(String mapName, Serializer serializer) {
         map = new ConcurrentHashMap<>();
@@ -197,9 +199,7 @@
 
     @Override
     public Collection<Versioned<V>> values() {
-        return map.values()
-                .stream()
-                .collect(Collectors.toList());
+        return map.values();
     }
 
     @Override
@@ -295,7 +295,12 @@
 
     @Override
     public Map<K, V> asJavaMap() {
-        return new ConsistentMapBackedJavaMap<>(this);
+        synchronized (this) {
+            if (javaMap == null) {
+                javaMap = new ConsistentMapBackedJavaMap<>(this);
+            }
+        }
+        return javaMap;
     }
 
     public static Builder builder() {