list mastership roles CLI command

Change-Id: I54dc296f90c4b8ceebe4e86816c3796da4d2d714
diff --git a/core/store/hz/cluster/src/main/java/org/onlab/onos/store/mastership/impl/DistributedMastershipStore.java b/core/store/hz/cluster/src/main/java/org/onlab/onos/store/mastership/impl/DistributedMastershipStore.java
index e073b63..1def9f9 100644
--- a/core/store/hz/cluster/src/main/java/org/onlab/onos/store/mastership/impl/DistributedMastershipStore.java
+++ b/core/store/hz/cluster/src/main/java/org/onlab/onos/store/mastership/impl/DistributedMastershipStore.java
@@ -2,6 +2,8 @@
 
 import static org.onlab.onos.mastership.MastershipEvent.Type.MASTER_CHANGED;
 
+import java.util.LinkedList;
+import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
@@ -143,6 +145,30 @@
         return deserialize(masters.get(serialize(deviceId)));
     }
 
+
+    @Override
+    public List<NodeId> getNodes(DeviceId deviceId) {
+        byte [] did = serialize(deviceId);
+        List<NodeId> nodes = new LinkedList<>();
+
+        //add current master to head - if there is one
+        ILock lock = theInstance.getLock(LOCK);
+        lock.lock();
+        try {
+            byte [] master = masters.get(did);
+            if (master != null) {
+                nodes.add((NodeId) deserialize(master));
+            }
+
+            for (byte [] el : standbys.get(serialize(deviceId))) {
+                nodes.add((NodeId) deserialize(el));
+            }
+            return nodes;
+        } finally {
+            lock.unlock();
+        }
+    }
+
     @Override
     public Set<DeviceId> getDevices(NodeId nodeId) {
         ImmutableSet.Builder<DeviceId> builder = ImmutableSet.builder();