Work queue improvements
- Fixed logic to ensure only session to which task is currently assigned can complete it
- Support destroy method to reset work queue state
- Removed deprecated DistributedQueue primitive

Change-Id: I4e1d5be4eb142115130acf15ff34035cb9319a1a
diff --git a/core/api/src/main/java/org/onosproject/store/service/WorkQueue.java b/core/api/src/main/java/org/onosproject/store/service/WorkQueue.java
index f9b0173..99eaa03 100644
--- a/core/api/src/main/java/org/onosproject/store/service/WorkQueue.java
+++ b/core/api/src/main/java/org/onosproject/store/service/WorkQueue.java
@@ -39,7 +39,12 @@
  *
  * @param <E> task payload type.
  */
-public interface WorkQueue<E> {
+public interface WorkQueue<E> extends DistributedPrimitive {
+
+    @Override
+    default DistributedPrimitive.Type primitiveType() {
+        return DistributedPrimitive.Type.WORK_QUEUE;
+    }
 
     /**
      * Adds a collection of tasks to the work queue.