began implementing MastershipManager
Change-Id: I65b86dcfa062e4cfd74de588f4714b35e9d329f0
diff --git a/core/api/src/main/java/org/onlab/onos/cluster/MastershipProvider.java b/core/api/src/main/java/org/onlab/onos/cluster/MastershipProvider.java
new file mode 100644
index 0000000..2cbad7f
--- /dev/null
+++ b/core/api/src/main/java/org/onlab/onos/cluster/MastershipProvider.java
@@ -0,0 +1,7 @@
+package org.onlab.onos.cluster;
+
+import org.onlab.onos.net.provider.Provider;
+
+public interface MastershipProvider extends Provider {
+
+}
diff --git a/core/api/src/main/java/org/onlab/onos/cluster/MastershipProviderService.java b/core/api/src/main/java/org/onlab/onos/cluster/MastershipProviderService.java
new file mode 100644
index 0000000..a777f63
--- /dev/null
+++ b/core/api/src/main/java/org/onlab/onos/cluster/MastershipProviderService.java
@@ -0,0 +1,18 @@
+package org.onlab.onos.cluster;
+
+import org.onlab.onos.net.DeviceId;
+import org.onlab.onos.net.MastershipRole;
+import org.onlab.onos.net.provider.ProviderService;
+
+public interface MastershipProviderService extends
+ ProviderService<MastershipProvider> {
+
+ /**
+ * Signals the core that mastership has changed for a device.
+ *
+ * @param deviceId the device ID
+ * @param role the new mastership role of this controller instance
+ */
+ void roleChanged(DeviceId deviceId, MastershipRole role);
+
+}
diff --git a/core/api/src/main/java/org/onlab/onos/cluster/MastershipStore.java b/core/api/src/main/java/org/onlab/onos/cluster/MastershipStore.java
index 728e77d..cb4a076 100644
--- a/core/api/src/main/java/org/onlab/onos/cluster/MastershipStore.java
+++ b/core/api/src/main/java/org/onlab/onos/cluster/MastershipStore.java
@@ -25,7 +25,7 @@
MastershipRole role);
/**
- * Adds or updates the mastership information for a device.
+ * Adds or updates mastership information for a device.
*
* @param instance controller instance identifier
* @param deviceId device identifier