All Classes and Interfaces

Class
Description
 
Used to send AppendEntries messages to cluster members.
 
The result of an AppendEntries request
 
It's a growable ring buffer that allows to move tail/head sequences, clear, append, set/replace at specific positions.
RAFT Implementation of AsyncCounter.
Abstract leader election algorithm functionalities.
Blocks while handling a message.
Client which accesses the CLIENT protocol through a socket.
Protocol listening on a socket for client requests.
 
Client stub which accesses a remote server via the CLIENT protocol through a socket.
Keeps track of next_index and match_index for each cluster member (excluding this leader).
 
Provides a consensus based distributed counter (similar to AtomicLong) which can be atomically updated across a cluster.
 
Demo of CounterService.
Sample state machine accepting additions and subtractions
Defines the contract to add and remove servers (RAFT.members).
The default leader election algorithm.
A leader election protocol.
A Log implementation stored in a file.
A mapping between the RAFT log index and where the log entry is stored in a file.
Creates FileChannel.
Base class to store data in a file.
Implements the behavior of a RAFT follower
An in-memory Log implementation without any persistence.
 
Internal command to be added to the log, e.g. adding or removing a server
 
Implements the behavior of a RAFT leader
Sent by the freshly elected leader to all members (-self)
Implements the behavior of a learner node.
Deprecated, for removal: This API element is subject to removal in a future version.
Delegates to FileBasedLog.
The interface for a persistent log.
Bounded caching Log facade.
List of LogEntry elements, provides efficient serialization.
An element in a log.
Stores the LogEntry into a file.
 
Stores the RAFT log metadata in a file.
Base class for the cluster implementations in the test framework.
Intercepts JOIN and MERGE requests on the coordinator and rejects members whose addition would lead to members with duplicate raft-ids in the view.
Options to pass to Settable.setAsync(byte[], int, int) call
Manipulate the cluster during tests.
Responsible for a node's internal state.
This class is here solely for the purpose of encapsulating the PmemUtil class so we do not load it unless necessary, allowing this to be an optional dependency.
Utilized during the pre-voting phase to ask nodes information about their leader.
Utilized during the pre-voting phase to return information about the current seen leader.
Iterates over all concrete Protocol classes and creates tables with Protocol's properties.
Implementation of the RAFT consensus protocol in JGroups
 
 
 
Received by up(Message) or up(MessageBatch)
TODO!
Orchestrates a number of RaftNode objects, to be used in a unit test, for example a leader and a follower.
TODO!
Main interaction point for applications with jgroups-raft.
 
Base class for the different roles a RAFT node can have (follower, candidate, leader)
 
Wraps the RAFT and/or ELECTION protocols
Keep track of part of the algorithm state.
TODO!
Utilities for developing tests with Raft.
Repository for read-only operations.
 
Protocol that redirects RAFT commands from clients to the actual RAFT leader.
 
 
A key-value store replicating its contents with RAFT via consensus
 
Client connecting to a remote ReplicatedStateMachineDemo.
 
Dummy replicated hashmap state machine
Keeps track of AppendEntriesRequest messages and responses.
 
 
Interface to make changes to the Raft state machine.
Interface of a state machine which stores data in memory.