Upgrade Atomix to 2.0.8 and simplify consistent primitive operation/event IDs

Change-Id: I33b68a134a7f3d016a8947bffc3cea0b90bd4bd2
diff --git a/core/store/primitives/pom.xml b/core/store/primitives/pom.xml
index f6966ea..0974dc5 100644
--- a/core/store/primitives/pom.xml
+++ b/core/store/primitives/pom.xml
@@ -70,7 +70,7 @@
         <dependency>
             <groupId>io.atomix</groupId>
             <artifactId>atomix</artifactId>
-            <version>2.0.4</version>
+            <version>2.0.8</version>
         </dependency>
 
         <dependency>
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/StorageNamespaces.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/StorageNamespaces.java
index 8350499..6639f72 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/StorageNamespaces.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/impl/StorageNamespaces.java
@@ -76,19 +76,6 @@
 import io.atomix.protocols.raft.storage.log.entry.QueryEntry;
 import io.atomix.protocols.raft.storage.system.Configuration;
 import org.onlab.util.KryoNamespace;
-import org.onosproject.store.primitives.resources.impl.AtomixAtomicCounterMapOperations;
-import org.onosproject.store.primitives.resources.impl.AtomixConsistentMapEvents;
-import org.onosproject.store.primitives.resources.impl.AtomixConsistentMapOperations;
-import org.onosproject.store.primitives.resources.impl.AtomixConsistentSetMultimapEvents;
-import org.onosproject.store.primitives.resources.impl.AtomixConsistentSetMultimapOperations;
-import org.onosproject.store.primitives.resources.impl.AtomixConsistentTreeMapOperations;
-import org.onosproject.store.primitives.resources.impl.AtomixCounterOperations;
-import org.onosproject.store.primitives.resources.impl.AtomixDocumentTreeEvents;
-import org.onosproject.store.primitives.resources.impl.AtomixDocumentTreeOperations;
-import org.onosproject.store.primitives.resources.impl.AtomixLeaderElectorEvents;
-import org.onosproject.store.primitives.resources.impl.AtomixLeaderElectorOperations;
-import org.onosproject.store.primitives.resources.impl.AtomixWorkQueueEvents;
-import org.onosproject.store.primitives.resources.impl.AtomixWorkQueueOperations;
 import org.onosproject.store.serializers.KryoNamespaces;
 
 /**
@@ -137,7 +124,11 @@
             .register(RaftResponse.Status.class)
             .register(RaftError.class)
             .register(RaftError.Type.class)
-            .register(ReadConsistency.class)
+            .register(RaftOperation.class)
+            .register(DefaultOperationId.class)
+            .register(OperationType.class)
+            .register(RaftEvent.class)
+            .register(DefaultEventType.class)
             .register(RaftSessionMetadata.class)
             .register(CloseSessionEntry.class)
             .register(CommandEntry.class)
@@ -147,11 +138,6 @@
             .register(MetadataEntry.class)
             .register(OpenSessionEntry.class)
             .register(QueryEntry.class)
-            .register(RaftOperation.class)
-            .register(RaftEvent.class)
-            .register(DefaultEventType.class)
-            .register(DefaultOperationId.class)
-            .register(OperationType.class)
             .register(ReadConsistency.class)
             .register(ArrayList.class)
             .register(LinkedList.class)
@@ -163,19 +149,6 @@
             .register(RaftMember.Type.class)
             .register(Instant.class)
             .register(Configuration.class)
-            .register(AtomixAtomicCounterMapOperations.class)
-            .register(AtomixConsistentMapEvents.class)
-            .register(AtomixConsistentMapOperations.class)
-            .register(AtomixConsistentSetMultimapOperations.class)
-            .register(AtomixConsistentSetMultimapEvents.class)
-            .register(AtomixConsistentTreeMapOperations.class)
-            .register(AtomixCounterOperations.class)
-            .register(AtomixDocumentTreeEvents.class)
-            .register(AtomixDocumentTreeOperations.class)
-            .register(AtomixLeaderElectorEvents.class)
-            .register(AtomixLeaderElectorOperations.class)
-            .register(AtomixWorkQueueEvents.class)
-            .register(AtomixWorkQueueOperations.class)
             .build("RaftProtocol");
 
     /**
@@ -193,6 +166,8 @@
             .register(OpenSessionEntry.class)
             .register(QueryEntry.class)
             .register(RaftOperation.class)
+            .register(DefaultOperationId.class)
+            .register(OperationType.class)
             .register(ReadConsistency.class)
             .register(ArrayList.class)
             .register(HashSet.class)
@@ -201,14 +176,6 @@
             .register(RaftMember.Type.class)
             .register(Instant.class)
             .register(Configuration.class)
-            .register(AtomixAtomicCounterMapOperations.class)
-            .register(AtomixConsistentMapOperations.class)
-            .register(AtomixConsistentSetMultimapOperations.class)
-            .register(AtomixConsistentTreeMapOperations.class)
-            .register(AtomixCounterOperations.class)
-            .register(AtomixDocumentTreeOperations.class)
-            .register(AtomixLeaderElectorOperations.class)
-            .register(AtomixWorkQueueOperations.class)
             .build("RaftStorage");
 
     private StorageNamespaces() {
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixAtomicCounterMapOperations.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixAtomicCounterMapOperations.java
index 7267923..7b2cba2 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixAtomicCounterMapOperations.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixAtomicCounterMapOperations.java
@@ -24,33 +24,31 @@
  * Atomic counter map commands.
  */
 public enum AtomixAtomicCounterMapOperations implements OperationId {
-    PUT("put", OperationType.COMMAND),
-    PUT_IF_ABSENT("putIfAbsent", OperationType.COMMAND),
-    GET("get", OperationType.QUERY),
-    REPLACE("replace", OperationType.COMMAND),
-    REMOVE("remove", OperationType.COMMAND),
-    REMOVE_VALUE("removeValue", OperationType.COMMAND),
-    GET_AND_INCREMENT("getAndIncrement", OperationType.COMMAND),
-    GET_AND_DECREMENT("getAndDecrement", OperationType.COMMAND),
-    INCREMENT_AND_GET("incrementAndGet", OperationType.COMMAND),
-    DECREMENT_AND_GET("decrementAndGet", OperationType.COMMAND),
-    ADD_AND_GET("addAndGet", OperationType.COMMAND),
-    GET_AND_ADD("getAndAdd", OperationType.COMMAND),
-    SIZE("size", OperationType.QUERY),
-    IS_EMPTY("isEmpty", OperationType.QUERY),
-    CLEAR("clear", OperationType.COMMAND);
+    PUT(OperationType.COMMAND),
+    PUT_IF_ABSENT(OperationType.COMMAND),
+    GET(OperationType.QUERY),
+    REPLACE(OperationType.COMMAND),
+    REMOVE(OperationType.COMMAND),
+    REMOVE_VALUE(OperationType.COMMAND),
+    GET_AND_INCREMENT(OperationType.COMMAND),
+    GET_AND_DECREMENT(OperationType.COMMAND),
+    INCREMENT_AND_GET(OperationType.COMMAND),
+    DECREMENT_AND_GET(OperationType.COMMAND),
+    ADD_AND_GET(OperationType.COMMAND),
+    GET_AND_ADD(OperationType.COMMAND),
+    SIZE(OperationType.QUERY),
+    IS_EMPTY(OperationType.QUERY),
+    CLEAR(OperationType.COMMAND);
 
-    private final String id;
     private final OperationType type;
 
-    AtomixAtomicCounterMapOperations(String id, OperationType type) {
-        this.id = id;
+    AtomixAtomicCounterMapOperations(OperationType type) {
         this.type = type;
     }
 
     @Override
     public String id() {
-        return id;
+        return name();
     }
 
     @Override
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentMapEvents.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentMapEvents.java
index c7a1f1f..a0429da 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentMapEvents.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentMapEvents.java
@@ -24,17 +24,11 @@
  * Atomix consistent map events.
  */
 public enum AtomixConsistentMapEvents implements EventType {
-    CHANGE("change");
-
-    private final String id;
-
-    AtomixConsistentMapEvents(String id) {
-        this.id = id;
-    }
+    CHANGE;
 
     @Override
     public String id() {
-        return id;
+        return name();
     }
 
     public static final KryoNamespace NAMESPACE = KryoNamespace.newBuilder()
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentMapOperations.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentMapOperations.java
index 31d5bf8..248c4eb 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentMapOperations.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentMapOperations.java
@@ -33,44 +33,42 @@
  * {@link AtomixConsistentMap} resource state machine operations.
  */
 public enum AtomixConsistentMapOperations implements OperationId {
-    IS_EMPTY("isEmpty", OperationType.QUERY),
-    SIZE("size", OperationType.QUERY),
-    CONTAINS_KEY("containsKey", OperationType.QUERY),
-    CONTAINS_VALUE("containsValue", OperationType.QUERY),
-    GET("get", OperationType.QUERY),
-    GET_OR_DEFAULT("getOrDefault", OperationType.QUERY),
-    KEY_SET("keySet", OperationType.QUERY),
-    VALUES("values", OperationType.QUERY),
-    ENTRY_SET("entrySet", OperationType.QUERY),
-    PUT("put", OperationType.COMMAND),
-    PUT_IF_ABSENT("putIfAbsent", OperationType.COMMAND),
-    PUT_AND_GET("putAndGet", OperationType.COMMAND),
-    REMOVE("remove", OperationType.COMMAND),
-    REMOVE_VALUE("removeValue", OperationType.COMMAND),
-    REMOVE_VERSION("removeVersion", OperationType.COMMAND),
-    REPLACE("replace", OperationType.COMMAND),
-    REPLACE_VALUE("replaceValue", OperationType.COMMAND),
-    REPLACE_VERSION("replaceVersion", OperationType.COMMAND),
-    CLEAR("clear", OperationType.COMMAND),
-    ADD_LISTENER("addListener", OperationType.COMMAND),
-    REMOVE_LISTENER("removeListener", OperationType.COMMAND),
-    BEGIN("begin", OperationType.COMMAND),
-    PREPARE("prepare", OperationType.COMMAND),
-    PREPARE_AND_COMMIT("prepareAndCommit", OperationType.COMMAND),
-    COMMIT("commit", OperationType.COMMAND),
-    ROLLBACK("rollback", OperationType.COMMAND);
+    IS_EMPTY(OperationType.QUERY),
+    SIZE(OperationType.QUERY),
+    CONTAINS_KEY(OperationType.QUERY),
+    CONTAINS_VALUE(OperationType.QUERY),
+    GET(OperationType.QUERY),
+    GET_OR_DEFAULT(OperationType.QUERY),
+    KEY_SET(OperationType.QUERY),
+    VALUES(OperationType.QUERY),
+    ENTRY_SET(OperationType.QUERY),
+    PUT(OperationType.COMMAND),
+    PUT_IF_ABSENT(OperationType.COMMAND),
+    PUT_AND_GET(OperationType.COMMAND),
+    REMOVE(OperationType.COMMAND),
+    REMOVE_VALUE(OperationType.COMMAND),
+    REMOVE_VERSION(OperationType.COMMAND),
+    REPLACE(OperationType.COMMAND),
+    REPLACE_VALUE(OperationType.COMMAND),
+    REPLACE_VERSION(OperationType.COMMAND),
+    CLEAR(OperationType.COMMAND),
+    ADD_LISTENER(OperationType.COMMAND),
+    REMOVE_LISTENER(OperationType.COMMAND),
+    BEGIN(OperationType.COMMAND),
+    PREPARE(OperationType.COMMAND),
+    PREPARE_AND_COMMIT(OperationType.COMMAND),
+    COMMIT(OperationType.COMMAND),
+    ROLLBACK(OperationType.COMMAND);
 
-    private final String id;
     private final OperationType type;
 
-    AtomixConsistentMapOperations(String id, OperationType type) {
-        this.id = id;
+    AtomixConsistentMapOperations(OperationType type) {
         this.type = type;
     }
 
     @Override
     public String id() {
-        return id;
+        return name();
     }
 
     @Override
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentSetMultimapEvents.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentSetMultimapEvents.java
index 7bdac8a..7ccb5b7 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentSetMultimapEvents.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentSetMultimapEvents.java
@@ -24,17 +24,11 @@
  * Atomix consistent set multimap events.
  */
 public enum AtomixConsistentSetMultimapEvents implements EventType {
-    CHANGE("change");
-
-    private final String id;
-
-    AtomixConsistentSetMultimapEvents(String id) {
-        this.id = id;
-    }
+    CHANGE;
 
     @Override
     public String id() {
-        return id;
+        return name();
     }
 
     public static final KryoNamespace NAMESPACE = KryoNamespace.newBuilder()
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentSetMultimapOperations.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentSetMultimapOperations.java
index 02cad03..329113d 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentSetMultimapOperations.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentSetMultimapOperations.java
@@ -34,35 +34,33 @@
  * AsyncConsistentMultimap state machine commands.
  */
 public enum AtomixConsistentSetMultimapOperations implements OperationId {
-    GET("get", OperationType.QUERY),
-    SIZE("size", OperationType.QUERY),
-    IS_EMPTY("isEmpty", OperationType.QUERY),
-    CONTAINS_KEY("containsKey", OperationType.QUERY),
-    CONTAINS_VALUE("containsValue", OperationType.QUERY),
-    CONTAINS_ENTRY("containsEntry", OperationType.QUERY),
-    KEY_SET("keySet", OperationType.QUERY),
-    KEYS("keys", OperationType.QUERY),
-    VALUES("values", OperationType.QUERY),
-    ENTRIES("entries", OperationType.QUERY),
-    PUT("put", OperationType.COMMAND),
-    REMOVE("remove", OperationType.COMMAND),
-    REMOVE_ALL("removeAll", OperationType.COMMAND),
-    REPLACE("replace", OperationType.COMMAND),
-    CLEAR("clear", OperationType.COMMAND),
-    ADD_LISTENER("addListener", OperationType.COMMAND),
-    REMOVE_LISTENER("removeListener", OperationType.COMMAND);
+    GET(OperationType.QUERY),
+    SIZE(OperationType.QUERY),
+    IS_EMPTY(OperationType.QUERY),
+    CONTAINS_KEY(OperationType.QUERY),
+    CONTAINS_VALUE(OperationType.QUERY),
+    CONTAINS_ENTRY(OperationType.QUERY),
+    KEY_SET(OperationType.QUERY),
+    KEYS(OperationType.QUERY),
+    VALUES(OperationType.QUERY),
+    ENTRIES(OperationType.QUERY),
+    PUT(OperationType.COMMAND),
+    REMOVE(OperationType.COMMAND),
+    REMOVE_ALL(OperationType.COMMAND),
+    REPLACE(OperationType.COMMAND),
+    CLEAR(OperationType.COMMAND),
+    ADD_LISTENER(OperationType.COMMAND),
+    REMOVE_LISTENER(OperationType.COMMAND);
 
-    private final String id;
     private final OperationType type;
 
-    AtomixConsistentSetMultimapOperations(String id, OperationType type) {
-        this.id = id;
+    AtomixConsistentSetMultimapOperations(OperationType type) {
         this.type = type;
     }
 
     @Override
     public String id() {
-        return id;
+        return name();
     }
 
     @Override
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentTreeMapOperations.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentTreeMapOperations.java
index efcfe68..ccb722e 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentTreeMapOperations.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixConsistentTreeMapOperations.java
@@ -34,33 +34,31 @@
  * state machine operations.
  */
 public enum AtomixConsistentTreeMapOperations implements OperationId {
-    SUB_MAP("subMap", OperationType.QUERY),
-    FIRST_KEY("firstKey", OperationType.QUERY),
-    LAST_KEY("lastKey", OperationType.QUERY),
-    FIRST_ENTRY("firstEntry", OperationType.QUERY),
-    LAST_ENTRY("lastEntry", OperationType.QUERY),
-    POLL_FIRST_ENTRY("pollFirstEntry", OperationType.QUERY),
-    POLL_LAST_ENTRY("pollLastEntry", OperationType.QUERY),
-    LOWER_ENTRY("lowerEntry", OperationType.QUERY),
-    LOWER_KEY("lowerKey", OperationType.QUERY),
-    FLOOR_ENTRY("floorEntry", OperationType.QUERY),
-    FLOOR_KEY("floorKey", OperationType.QUERY),
-    CEILING_ENTRY("ceilingEntry", OperationType.QUERY),
-    CEILING_KEY("ceilingKey", OperationType.QUERY),
-    HIGHER_ENTRY("higherEntry", OperationType.QUERY),
-    HIGHER_KEY("higherKey", OperationType.QUERY);
+    SUB_MAP(OperationType.QUERY),
+    FIRST_KEY(OperationType.QUERY),
+    LAST_KEY(OperationType.QUERY),
+    FIRST_ENTRY(OperationType.QUERY),
+    LAST_ENTRY(OperationType.QUERY),
+    POLL_FIRST_ENTRY(OperationType.QUERY),
+    POLL_LAST_ENTRY(OperationType.QUERY),
+    LOWER_ENTRY(OperationType.QUERY),
+    LOWER_KEY(OperationType.QUERY),
+    FLOOR_ENTRY(OperationType.QUERY),
+    FLOOR_KEY(OperationType.QUERY),
+    CEILING_ENTRY(OperationType.QUERY),
+    CEILING_KEY(OperationType.QUERY),
+    HIGHER_ENTRY(OperationType.QUERY),
+    HIGHER_KEY(OperationType.QUERY);
 
-    private final String id;
     private final OperationType type;
 
-    AtomixConsistentTreeMapOperations(String id, OperationType type) {
-        this.id = id;
+    AtomixConsistentTreeMapOperations(OperationType type) {
         this.type = type;
     }
 
     @Override
     public String id() {
-        return id;
+        return name();
     }
 
     @Override
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixCounterOperations.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixCounterOperations.java
index f6ec6d8..67ff936 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixCounterOperations.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixCounterOperations.java
@@ -24,25 +24,23 @@
  * Counter commands.
  */
 public enum AtomixCounterOperations implements OperationId {
-    SET("set", OperationType.COMMAND),
-    COMPARE_AND_SET("compareAndSet", OperationType.COMMAND),
-    INCREMENT_AND_GET("incrementAndGet", OperationType.COMMAND),
-    GET_AND_INCREMENT("getAndIncrement", OperationType.COMMAND),
-    ADD_AND_GET("addAndGet", OperationType.COMMAND),
-    GET_AND_ADD("getAndAdd", OperationType.COMMAND),
-    GET("get", OperationType.QUERY);
+    SET(OperationType.COMMAND),
+    COMPARE_AND_SET(OperationType.COMMAND),
+    INCREMENT_AND_GET(OperationType.COMMAND),
+    GET_AND_INCREMENT(OperationType.COMMAND),
+    ADD_AND_GET(OperationType.COMMAND),
+    GET_AND_ADD(OperationType.COMMAND),
+    GET(OperationType.QUERY);
 
-    private final String id;
     private final OperationType type;
 
-    AtomixCounterOperations(String id, OperationType type) {
-        this.id = id;
+    AtomixCounterOperations(OperationType type) {
         this.type = type;
     }
 
     @Override
     public String id() {
-        return id;
+        return name();
     }
 
     @Override
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixDocumentTreeEvents.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixDocumentTreeEvents.java
index 43f2a20..47dcd31 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixDocumentTreeEvents.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixDocumentTreeEvents.java
@@ -24,17 +24,11 @@
  * Atomix document tree events.
  */
 public enum AtomixDocumentTreeEvents implements EventType {
-    CHANGE("change");
-
-    private final String id;
-
-    AtomixDocumentTreeEvents(String id) {
-        this.id = id;
-    }
+    CHANGE;
 
     @Override
     public String id() {
-        return id;
+        return name();
     }
 
     public static final KryoNamespace NAMESPACE = KryoNamespace.newBuilder()
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixDocumentTreeOperations.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixDocumentTreeOperations.java
index d05215c..6ec6091 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixDocumentTreeOperations.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixDocumentTreeOperations.java
@@ -35,29 +35,27 @@
  * {@link AtomixDocumentTree} resource state machine operations.
  */
 public enum AtomixDocumentTreeOperations implements OperationId {
-    ADD_LISTENER("set", OperationType.COMMAND),
-    REMOVE_LISTENER("compareAndSet", OperationType.COMMAND),
-    GET("incrementAndGet", OperationType.QUERY),
-    GET_CHILDREN("getAndIncrement", OperationType.QUERY),
-    UPDATE("addAndGet", OperationType.COMMAND),
-    CLEAR("getAndAdd", OperationType.COMMAND),
-    BEGIN("begin", OperationType.COMMAND),
-    PREPARE("prepare", OperationType.COMMAND),
-    PREPARE_AND_COMMIT("prepareAndCommit", OperationType.COMMAND),
-    COMMIT("commit", OperationType.COMMAND),
-    ROLLBACK("rollback", OperationType.COMMAND);
+    ADD_LISTENER(OperationType.COMMAND),
+    REMOVE_LISTENER(OperationType.COMMAND),
+    GET(OperationType.QUERY),
+    GET_CHILDREN(OperationType.QUERY),
+    UPDATE(OperationType.COMMAND),
+    CLEAR(OperationType.COMMAND),
+    BEGIN(OperationType.COMMAND),
+    PREPARE(OperationType.COMMAND),
+    PREPARE_AND_COMMIT(OperationType.COMMAND),
+    COMMIT(OperationType.COMMAND),
+    ROLLBACK(OperationType.COMMAND);
 
-    private final String id;
     private final OperationType type;
 
-    AtomixDocumentTreeOperations(String id, OperationType type) {
-        this.id = id;
+    AtomixDocumentTreeOperations(OperationType type) {
         this.type = type;
     }
 
     @Override
     public String id() {
-        return id;
+        return name();
     }
 
     @Override
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixLeaderElectorEvents.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixLeaderElectorEvents.java
index 7e098b5..3c5a2c7 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixLeaderElectorEvents.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixLeaderElectorEvents.java
@@ -23,17 +23,11 @@
  * Atomix leader elector events.
  */
 public enum AtomixLeaderElectorEvents implements EventType {
-    CHANGE("change");
-
-    private final String id;
-
-    AtomixLeaderElectorEvents(String id) {
-        this.id = id;
-    }
+    CHANGE;
 
     @Override
     public String id() {
-        return id;
+        return name();
     }
 
     public static final KryoNamespace NAMESPACE = KryoNamespace.newBuilder()
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixLeaderElectorOperations.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixLeaderElectorOperations.java
index 598d54f..c778cea 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixLeaderElectorOperations.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixLeaderElectorOperations.java
@@ -29,28 +29,26 @@
  * {@link AtomixLeaderElector} resource state machine operations.
  */
 public enum AtomixLeaderElectorOperations implements OperationId {
-    ADD_LISTENER("addListener", OperationType.COMMAND),
-    REMOVE_LISTENER("removeListener", OperationType.COMMAND),
-    RUN("run", OperationType.COMMAND),
-    WITHDRAW("withdraw", OperationType.COMMAND),
-    ANOINT("anoint", OperationType.COMMAND),
-    PROMOTE("promote", OperationType.COMMAND),
-    EVICT("evict", OperationType.COMMAND),
-    GET_LEADERSHIP("getLeadership", OperationType.QUERY),
-    GET_ALL_LEADERSHIPS("getAllLeaderships", OperationType.QUERY),
-    GET_ELECTED_TOPICS("getElectedTopics", OperationType.QUERY);
+    ADD_LISTENER(OperationType.COMMAND),
+    REMOVE_LISTENER(OperationType.COMMAND),
+    RUN(OperationType.COMMAND),
+    WITHDRAW(OperationType.COMMAND),
+    ANOINT(OperationType.COMMAND),
+    PROMOTE(OperationType.COMMAND),
+    EVICT(OperationType.COMMAND),
+    GET_LEADERSHIP(OperationType.QUERY),
+    GET_ALL_LEADERSHIPS(OperationType.QUERY),
+    GET_ELECTED_TOPICS(OperationType.QUERY);
 
-    private final String id;
     private final OperationType type;
 
-    AtomixLeaderElectorOperations(String id, OperationType type) {
-        this.id = id;
+    AtomixLeaderElectorOperations(OperationType type) {
         this.type = type;
     }
 
     @Override
     public String id() {
-        return id;
+        return name();
     }
 
     @Override
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixWorkQueueEvents.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixWorkQueueEvents.java
index 019290f..5458300 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixWorkQueueEvents.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixWorkQueueEvents.java
@@ -23,17 +23,11 @@
  * Atomix work queue events.
  */
 public enum AtomixWorkQueueEvents implements EventType {
-    TASK_AVAILABLE("taskAvailable");
-
-    private final String id;
-
-    AtomixWorkQueueEvents(String id) {
-        this.id = id;
-    }
+    TASK_AVAILABLE;
 
     @Override
     public String id() {
-        return id;
+        return name();
     }
 
     public static final KryoNamespace NAMESPACE = KryoNamespace.newBuilder()
diff --git a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixWorkQueueOperations.java b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixWorkQueueOperations.java
index 4cb0abf..2452cf8 100644
--- a/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixWorkQueueOperations.java
+++ b/core/store/primitives/src/main/java/org/onosproject/store/primitives/resources/impl/AtomixWorkQueueOperations.java
@@ -29,25 +29,23 @@
  * {@link AtomixWorkQueue} resource state machine operations.
  */
 public enum AtomixWorkQueueOperations implements OperationId {
-    STATS("stats", OperationType.QUERY),
-    REGISTER("register", OperationType.COMMAND),
-    UNREGISTER("unregister", OperationType.COMMAND),
-    ADD("add", OperationType.COMMAND),
-    TAKE("take", OperationType.COMMAND),
-    COMPLETE("complete", OperationType.COMMAND),
-    CLEAR("clear", OperationType.COMMAND);
+    STATS(OperationType.QUERY),
+    REGISTER(OperationType.COMMAND),
+    UNREGISTER(OperationType.COMMAND),
+    ADD(OperationType.COMMAND),
+    TAKE(OperationType.COMMAND),
+    COMPLETE(OperationType.COMMAND),
+    CLEAR(OperationType.COMMAND);
 
-    private final String id;
     private final OperationType type;
 
-    AtomixWorkQueueOperations(String id, OperationType type) {
-        this.id = id;
+    AtomixWorkQueueOperations(OperationType type) {
         this.type = type;
     }
 
     @Override
     public String id() {
-        return id;
+        return name();
     }
 
     @Override
diff --git a/core/store/primitives/src/test/java/org/onosproject/store/primitives/impl/EventuallyConsistentMapImplTest.java b/core/store/primitives/src/test/java/org/onosproject/store/primitives/impl/EventuallyConsistentMapImplTest.java
index 41cf18c..ed142df 100644
--- a/core/store/primitives/src/test/java/org/onosproject/store/primitives/impl/EventuallyConsistentMapImplTest.java
+++ b/core/store/primitives/src/test/java/org/onosproject/store/primitives/impl/EventuallyConsistentMapImplTest.java
@@ -46,6 +46,8 @@
 import java.util.function.Consumer;
 import java.util.function.Function;
 
+import com.google.common.collect.ComparisonChain;
+import com.google.common.collect.ImmutableList;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -66,8 +68,6 @@
 import org.onosproject.store.service.EventuallyConsistentMap;
 import org.onosproject.store.service.EventuallyConsistentMapEvent;
 import org.onosproject.store.service.EventuallyConsistentMapListener;
-import com.google.common.collect.ComparisonChain;
-import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableSet;
 import com.google.common.util.concurrent.MoreExecutors;
 
diff --git a/features/features.xml b/features/features.xml
index 707bcec..3155b4c 100644
--- a/features/features.xml
+++ b/features/features.xml
@@ -59,7 +59,7 @@
         <bundle>mvn:com.typesafe/config/1.2.1</bundle>
         <bundle>mvn:com.googlecode.concurrent-trees/concurrent-trees/2.6.0</bundle>
         <bundle>mvn:commons-io/commons-io/2.4</bundle>
-        <bundle>mvn:io.atomix/atomix/2.0.4</bundle>
+        <bundle>mvn:io.atomix/atomix/2.0.8</bundle>
 
         <bundle>mvn:org.glassfish.jersey.core/jersey-client/2.25.1</bundle>
 
diff --git a/lib/BUCK b/lib/BUCK
index 203cf5a..87ce5ff 100644
--- a/lib/BUCK
+++ b/lib/BUCK
@@ -1,4 +1,4 @@
-# ***** This file was auto-generated at Wed, 20 Dec 2017 21:31:33 GMT. Do not edit this file manually. *****
+# ***** This file was auto-generated at Wed, 20 Dec 2017 23:04:11 GMT. Do not edit this file manually. *****
 # ***** Use onos-lib-gen *****
 
 pass_thru_pom(
@@ -178,10 +178,10 @@
 
 remote_jar (
   name = 'atomix',
-  out = 'atomix-2.0.4.jar',
-  url = 'mvn:io.atomix:atomix:jar:2.0.4',
-  sha1 = 'ad9165144b95174ab8c8ba1ae7481e6ca8a699e3',
-  maven_coords = 'io.atomix:atomix:2.0.4',
+  out = 'atomix-2.0.8.jar',
+  url = 'mvn:io.atomix:atomix:jar:2.0.8',
+  sha1 = '90673ee06d2de8455d66066aa1d5f539f2f3e963',
+  maven_coords = 'io.atomix:atomix:2.0.8',
   visibility = [ 'PUBLIC' ],
 )
 
diff --git a/lib/deps.json b/lib/deps.json
index ab52f9d..f77cc66 100644
--- a/lib/deps.json
+++ b/lib/deps.json
@@ -112,7 +112,7 @@
     "aopalliance-repackaged": "mvn:org.glassfish.hk2.external:aopalliance-repackaged:2.5.0-b32",
     "amqp-client": "mvn:com.rabbitmq:amqp-client:jar:3.6.1",
     "asm": "mvn:org.ow2.asm:asm:5.0.4",
-    "atomix": "mvn:io.atomix:atomix:2.0.4",
+    "atomix": "mvn:io.atomix:atomix:2.0.8",
     "commons-codec": "mvn:commons-codec:commons-codec:1.10",
     "commons-collections": "mvn:commons-collections:commons-collections:3.2.2",
     "commons-configuration": "mvn:commons-configuration:commons-configuration:1.10",