BUG 2138 - Do not fail on module-based default shard
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / main / java / org / opendaylight / controller / cluster / datastore / LeaderLocalDelegateFactory.java
index d33cebbebc2f7680dff2097f8b3ab3745f861c26..0f766295409c73e0305f6d45dd3fbc2df605afce 100644 (file)
@@ -17,8 +17,8 @@ import com.google.common.base.Preconditions;
  * Base class for factories instantiating delegates which are local to the
  * shard leader.
  *
- * <D> delegate type
- * <M> message type
+ * @param <D> delegate type
+ * @param <M> message type
  */
 abstract class LeaderLocalDelegateFactory<M, D> extends DelegateFactory<M, D> {
     private final Shard shard;
@@ -59,8 +59,10 @@ abstract class LeaderLocalDelegateFactory<M, D> extends DelegateFactory<M, D> {
      * Invoked whenever the local shard's leadership role changes.
      *
      * @param isLeader true if the shard has become leader, false if it has
-     *                 become a follower.
+ *                 become a follower.
+     * @param hasLeader true if the shard knows about leader ID
      */
-    abstract void onLeadershipChange(boolean isLeader);
-    abstract void onMessage(M message, boolean isLeader);
+    abstract void onLeadershipChange(boolean isLeader, boolean hasLeader);
+
+    abstract void onMessage(M message, boolean isLeader, boolean hasLeader);
 }