+ @Override
+ public RaftActorBehavior handleMessage(final ActorRef sender, final Object originalMessage) {
+ requireNonNull(sender, "sender should not be null");
+
+ if (ISOLATED_LEADER_CHECK.equals(originalMessage)) {
+ if (isLeaderIsolated()) {
+ log.warn("{}: At least {} followers need to be active, Switching {} from Leader to IsolatedLeader",
+ context.getId(), getMinIsolatedLeaderPeerCount(), getLeaderId());
+ return internalSwitchBehavior(new IsolatedLeader(context, this));
+ } else {
+ return this;
+ }
+ } else {
+ return super.handleMessage(sender, originalMessage);