X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-akka-raft%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fraft%2Fbehaviors%2FCandidate.java;h=77f7a06c49dffe75557e6544e2deba03f16f5614;hb=537c44438b1e8854b719903ac2a4a0d5e12d6606;hp=569f6b3d245fe5a6c1021f0537f08b3e1ec36f6e;hpb=e84f63ee098fff5b02cbce1281ca0d1208f966fa;p=controller.git diff --git a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/behaviors/Candidate.java b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/behaviors/Candidate.java index 569f6b3d24..77f7a06c49 100644 --- a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/behaviors/Candidate.java +++ b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/behaviors/Candidate.java @@ -9,8 +9,7 @@ package org.opendaylight.controller.cluster.raft.behaviors; import akka.actor.ActorRef; import akka.actor.ActorSelection; -import java.util.ArrayList; -import java.util.Collection; +import com.google.common.collect.ImmutableList; import org.opendaylight.controller.cluster.raft.PeerInfo; import org.opendaylight.controller.cluster.raft.RaftActorContext; import org.opendaylight.controller.cluster.raft.RaftState; @@ -44,21 +43,18 @@ import scala.concurrent.duration.FiniteDuration; * */ public final class Candidate extends AbstractRaftActorBehavior { - - private int voteCount; - + private final ImmutableList votingPeers; private final int votesRequired; - private final Collection votingPeers = new ArrayList<>(); + private int voteCount; public Candidate(final RaftActorContext context) { super(context, RaftState.Candidate); - for (PeerInfo peer: context.getPeers()) { - if (peer.isVoting()) { - votingPeers.add(peer.getId()); - } - } + votingPeers = context.getPeers().stream() + .filter(PeerInfo::isVoting) + .map(PeerInfo::getId) + .collect(ImmutableList.toImmutableList()); log.debug("{}: Election: Candidate has following voting peers: {}", logName(), votingPeers); @@ -157,9 +153,7 @@ public final class Candidate extends AbstractRaftActorBehavior { return this; } - if (message instanceof RaftRPC) { - - RaftRPC rpc = (RaftRPC) message; + if (message instanceof RaftRPC rpc) { log.debug("{}: RaftRPC message received {}, my term is {}", logName(), rpc, context.getTermInformation().getCurrentTerm());