Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- handleEvent :: forall sm v. (RaftStateMachinePure sm v, Show v, Serialize v) => RaftNodeState v -> TransitionEnv sm v -> PersistentState -> Event v -> (RaftNodeState v, PersistentState, [Action sm v], [LogMsg])
- data RaftHandler ns sm v = RaftHandler {
- handleAppendEntries :: RPCHandler ns sm (AppendEntries v) v
- handleAppendEntriesResponse :: RPCHandler ns sm AppendEntriesResponse v
- handleRequestVote :: RPCHandler ns sm RequestVote v
- handleRequestVoteResponse :: RPCHandler ns sm RequestVoteResponse v
- handleTimeout :: TimeoutHandler ns sm v
- handleClientReadRequest :: ClientReqHandler ns ClientReadReq sm v
- handleClientWriteRequest :: ClientReqHandler ns (ClientWriteReq v) sm v
- followerRaftHandler :: (Show v, Serialize v) => RaftHandler Follower sm v
- candidateRaftHandler :: (Show v, Serialize v) => RaftHandler Candidate sm v
- leaderRaftHandler :: (Show v, Serialize v) => RaftHandler Leader sm v
- mkRaftHandler :: forall ns sm v. (Show v, Serialize v) => NodeState ns v -> RaftHandler ns sm v
- handleEvent' :: forall ns sm v. (RaftStateMachinePure sm v, Show v, Serialize v) => NodeState ns v -> TransitionEnv sm v -> PersistentState -> Event v -> ((ResultState ns v, [LogMsg]), PersistentState, [Action sm v])
Documentation
handleEvent :: forall sm v. (RaftStateMachinePure sm v, Show v, Serialize v) => RaftNodeState v -> TransitionEnv sm v -> PersistentState -> Event v -> (RaftNodeState v, PersistentState, [Action sm v], [LogMsg]) Source #
Main entry point for handling events
data RaftHandler ns sm v Source #
RaftHandler | |
|
followerRaftHandler :: (Show v, Serialize v) => RaftHandler Follower sm v Source #
candidateRaftHandler :: (Show v, Serialize v) => RaftHandler Candidate sm v Source #
leaderRaftHandler :: (Show v, Serialize v) => RaftHandler Leader sm v Source #
mkRaftHandler :: forall ns sm v. (Show v, Serialize v) => NodeState ns v -> RaftHandler ns sm v Source #
handleEvent' :: forall ns sm v. (RaftStateMachinePure sm v, Show v, Serialize v) => NodeState ns v -> TransitionEnv sm v -> PersistentState -> Event v -> ((ResultState ns v, [LogMsg]), PersistentState, [Action sm v]) Source #