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 57b36ab..4133095 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
@@ -28,7 +28,7 @@
 import java.util.stream.Collectors;
 
 import org.onosproject.core.ApplicationId;
-import static org.onosproject.store.service.MapEvent.Type;
+
 import static org.onosproject.store.service.MapEvent.Type.*;
 
 /**
@@ -37,7 +37,7 @@
 public final class TestConsistentMap<K, V> extends ConsistentMapAdapter<K, V> {
 
     private final List<MapEventListener<K, V>> listeners;
-    private final HashMap<K, V> map;
+    private final Map<K, V> map;
     private final String mapName;
     private final AtomicLong counter = new AtomicLong(0);
 
@@ -54,7 +54,7 @@
     /**
      * Notify all listeners of an event.
      */
-    private void notifyListeners(String mapName, Type type,
+    private void notifyListeners(String mapName, MapEvent.Type type,
                                  K key, Versioned<V> value) {
         MapEvent<K, V> event = new MapEvent<>(mapName, type, key, value);
         listeners.forEach(
