Make RaftActor.initiateLeadershipTransfer() private
[controller.git] / opendaylight / md-sal / sal-akka-raft / src / main / java / org / opendaylight / controller / cluster / raft / RaftActorServerConfigurationSupport.java
index 7012e0db86f8847b3660f78de8cefb3a1f8c7a6a..46fe6269e37a907db36fe3d0ca7a5b9b9b52bd58 100644 (file)
@@ -678,28 +678,8 @@ class RaftActorServerConfigurationSupport {
             // leadership.
             boolean localServerChangedToNonVoting = Boolean.FALSE.equals(getOperation().
                     getServerVotingStatusMap().get(raftActor.getRaftActorContext().getId()));
-            if(succeeded && localServerChangedToNonVoting && raftActor.isLeader()) {
-                raftActor.initiateLeadershipTransfer(new RaftActorLeadershipTransferCohort.OnComplete() {
-                    @Override
-                    public void onSuccess(ActorRef raftActorRef, ActorRef replyTo) {
-                        LOG.debug("{}: leader transfer succeeded after change to non-voting", raftActor.persistenceId());
-                        ensureFollowerState(raftActor);
-                    }
-
-                    @Override
-                    public void onFailure(ActorRef raftActorRef, ActorRef replyTo) {
-                        LOG.debug("{}: leader transfer failed after change to non-voting", raftActor.persistenceId());
-                        ensureFollowerState(raftActor);
-                    }
-
-                    private void ensureFollowerState(RaftActor raftActor) {
-                        // Whether or not leadership transfer succeeded, we have to step down as leader and
-                        // switch to Follower so ensure that.
-                        if(raftActor.getRaftState() != RaftState.Follower) {
-                            raftActor.initializeBehavior();
-                        }
-                    }
-                });
+            if (succeeded && localServerChangedToNonVoting) {
+               raftActor.becomeNonVoting();
             }
         }