LeadershipStore updates:
- Now tracking leader and candidates for a topic using a single map.
- Using term numbers that are incremented by one every time a new leader is elected.
- Introduced a separate LeadershipStore to conform to the manager-store pattern
Change-Id: I1d03a6c5e8ff0e68ef0c1e3a6c2d425c4856e470
diff --git a/apps/test/election/src/main/java/org/onosproject/election/ElectionTest.java b/apps/test/election/src/main/java/org/onosproject/election/ElectionTest.java
index b2a7207..e0d3b27 100644
--- a/apps/test/election/src/main/java/org/onosproject/election/ElectionTest.java
+++ b/apps/test/election/src/main/java/org/onosproject/election/ElectionTest.java
@@ -24,12 +24,11 @@
import org.apache.felix.scr.annotations.ReferenceCardinality;
import org.onosproject.cluster.ClusterService;
import org.onosproject.core.CoreService;
-import org.onosproject.cluster.ControllerNode;
import org.onosproject.cluster.LeadershipEvent;
import org.onosproject.cluster.LeadershipEventListener;
import org.onosproject.cluster.LeadershipService;
+import org.onosproject.cluster.NodeId;
import org.onosproject.core.ApplicationId;
-
import org.slf4j.Logger;
@@ -56,7 +55,7 @@
private LeadershipEventListener leadershipEventListener =
new InnerLeadershipEventListener();
- private ControllerNode localControllerNode;
+ private NodeId localNodeId;
@Activate
@@ -65,7 +64,7 @@
appId = coreService.registerApplication(ELECTION_APP);
- localControllerNode = clusterService.getLocalNode();
+ localNodeId = clusterService.getLocalNode().id();
leadershipService.addListener(leadershipEventListener);
}
@@ -100,20 +99,10 @@
log.debug("Leadership Event: time = {} type = {} event = {}",
event.time(), event.type(), event);
- if (!event.subject().leader().equals(
- localControllerNode.id())) {
- return; // The event is not about this instance: ignore
- }
-
switch (event.type()) {
- case LEADER_ELECTED:
- log.info("Election-test app leader elected");
- break;
- case LEADER_BOOTED:
- log.info("Election-test app lost election");
- break;
- case LEADER_REELECTED:
- log.debug("Election-test app was re-elected");
+ case LEADER_CHANGED:
+ case LEADER_AND_CANDIDATES_CHANGED:
+ log.info("Election-test app leader changed. New leadership: {}", event.subject());
break;
default:
break;