Package io.atomix.raft.roles
Class PassiveRole
java.lang.Object
io.atomix.raft.roles.AbstractRole
io.atomix.raft.roles.InactiveRole
io.atomix.raft.roles.PassiveRole
- Direct Known Subclasses:
ActiveRole,PromotableRole
Passive state.
-
Field Summary
Fields inherited from class io.atomix.raft.roles.AbstractRole
log, raft -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidappendEntries(AppendRequest request, CompletableFuture<AppendResponse> future) Appends entries from the given AppendRequest.protected booleancheckPreviousEntry(AppendRequest request, CompletableFuture<AppendResponse> future) Checks the previous index of the given AppendRequest, returning a boolean indicating whether to continue handling the request.protected booleancheckTerm(AppendRequest request, CompletableFuture<AppendResponse> future) Checks the leader's term of the given AppendRequest, returning a boolean indicating whether to continue handling the request.protected booleancompleteAppend(boolean succeeded, long lastLogIndex, CompletableFuture<AppendResponse> future) Returns a successful append response.protected booleanfailAppend(long lastLogIndex, CompletableFuture<AppendResponse> future) Returns a failed append response.protected CompletableFuture<AppendResponse>handleAppend(AppendRequest request) Handles an AppendRequest.onAppend(AppendRequest request) Handles an append request.onInstall(InstallRequest request) Handles an install request.onPoll(PollRequest request) Handles a poll request.onReconfigure(ReconfigureRequest request) Handles a configure request.onVote(VoteRequest request) Handles a vote request.role()Returns the Raft state represented by this state.start()stop()protected booleansucceedAppend(long lastLogIndex, CompletableFuture<AppendResponse> future) Returns a successful append response.Methods inherited from class io.atomix.raft.roles.InactiveRole
onConfigure, onTransferMethods inherited from class io.atomix.raft.roles.AbstractRole
forward, isRunning, logRequest, logResponse, toString, updateTermAndLeader
-
Constructor Details
-
PassiveRole
-
-
Method Details
-
start
- Specified by:
startin interfaceManaged<RaftRole>- Overrides:
startin classAbstractRole
-
stop
- Specified by:
stopin interfaceManaged<RaftRole>- Overrides:
stopin classAbstractRole
-
role
Description copied from class:AbstractRoleReturns the Raft state represented by this state.- Specified by:
rolein interfaceRaftRole- Overrides:
rolein classInactiveRole- Returns:
- The Raft state represented by this state.
-
onInstall
Description copied from interface:RaftRoleHandles an install request.- Specified by:
onInstallin interfaceRaftRole- Overrides:
onInstallin classInactiveRole- Parameters:
request- The request to handle.- Returns:
- A completable future to be completed with the request response.
-
onReconfigure
Description copied from interface:RaftRoleHandles a configure request.- Specified by:
onReconfigurein interfaceRaftRole- Overrides:
onReconfigurein classInactiveRole- Parameters:
request- The request to handle.- Returns:
- A completable future to be completed with the request response.
-
onAppend
Description copied from interface:RaftRoleHandles an append request.- Specified by:
onAppendin interfaceRaftRole- Overrides:
onAppendin classInactiveRole- Parameters:
request- The request to handle.- Returns:
- A completable future to be completed with the request response.
-
onPoll
Description copied from interface:RaftRoleHandles a poll request.- Specified by:
onPollin interfaceRaftRole- Overrides:
onPollin classInactiveRole- Parameters:
request- The request to handle.- Returns:
- A completable future to be completed with the request response.
-
onVote
Description copied from interface:RaftRoleHandles a vote request.- Specified by:
onVotein interfaceRaftRole- Overrides:
onVotein classInactiveRole- Parameters:
request- The request to handle.- Returns:
- A completable future to be completed with the request response.
-
handleAppend
Handles an AppendRequest. -
checkTerm
Checks the leader's term of the given AppendRequest, returning a boolean indicating whether to continue handling the request. -
checkPreviousEntry
protected boolean checkPreviousEntry(AppendRequest request, CompletableFuture<AppendResponse> future) Checks the previous index of the given AppendRequest, returning a boolean indicating whether to continue handling the request. -
appendEntries
Appends entries from the given AppendRequest. -
failAppend
Returns a failed append response.- Parameters:
lastLogIndex- the last log indexfuture- the append response future- Returns:
- the append response status
-
succeedAppend
Returns a successful append response.- Parameters:
lastLogIndex- the last log indexfuture- the append response future- Returns:
- the append response status
-
completeAppend
protected boolean completeAppend(boolean succeeded, long lastLogIndex, CompletableFuture<AppendResponse> future) Returns a successful append response.- Parameters:
succeeded- whether the append succeededlastLogIndex- the last log indexfuture- the append response future- Returns:
- the append response status
-