def on_vote_received(self, message): if message.sender not in self._votes: self._votes[message.sender] = message if (len(self._votes.keys()) > (self._server._total_nodes - 1) / 2): leader = Leader() leader.set_server(self._server) return leader, None return self, None
def on_vote_received(self, message): self._votes[message.sender] = message if len(self._votes.keys()) >= (self._server._total_nodes - 1) / 2: leader = Leader() leader.set_server(self._server) print "Server", self._server._name, "has been elected leader" self._server._serverState = leaderState for n in self._server._neighbors: if n._serverState != deadState: n._serverState = followerState n._state = Follower() n._state.set_server(n) return leader, None return self, None