Show / Hide Table of Contents

Interface IRaftHttpCluster

Represents local view of Raft cluster built on top of ASP.NET Core infrastructure.

Inherited Members
IMessageBus.Leader
IMessageBus.Members
IMessageBus.LeaderRouter
IMessageBus.AddListener(IInputChannel)
IMessageBus.RemoveListener(IInputChannel)
IPeerMesh<ISubscriber>.TryGetPeer(EndPoint)
IStandbyModeSupport.RevertToNormalModeAsync(CancellationToken)
IStandbyModeSupport.EnableStandbyModeAsync(CancellationToken)
IStandbyModeSupport.Standby
IUnresponsiveClusterMemberRemovalSupport.FailureDetectorFactory
IRaftCluster.LocalAddressMeterAttributeName
IRaftCluster.Term
IRaftCluster.ElectionTimeout
IRaftCluster.AuditTrail
IRaftCluster.TryGetLeaseToken(out CancellationToken)
IRaftCluster.LeadershipToken
IRaftCluster.ConsensusToken
IRaftCluster.Readiness
IRaftCluster.ApplyReadBarrierAsync(CancellationToken)
IRaftCluster.WaitForLeadershipAsync(TimeSpan, CancellationToken)
IReplicationCluster<IRaftLogEntry>.ReplicateAsync<TEntryImpl>(TEntryImpl, CancellationToken)
IReplicationCluster.ForceReplicationAsync(CancellationToken)
IReplicationCluster.ReplicationCompleted
ICluster.WaitForLeaderAsync(TimeSpan, CancellationToken)
ICluster.LeaderChanged
ICluster.ResignAsync(CancellationToken)
IPeerMesh.Peers
IPeerMesh.PeerDiscovered
IPeerMesh.PeerGone
Namespace: DotNext.Net.Cluster.Consensus.Raft.Http
Assembly: DotNext.AspNetCore.Cluster.dll
Syntax
public interface IRaftHttpCluster : IMessageBus, IPeerMesh<ISubscriber>, IStandbyModeSupport, IUnresponsiveClusterMemberRemovalSupport, IRaftCluster, IReplicationCluster<IRaftLogEntry>, IReplicationCluster, ICluster, IPeerMesh<IClusterMember>, IPeerMesh<IRaftClusterMember>, IPeerMesh

Properties

| Edit this page View Source

LocalMemberAddress

Gets the address of the local member.

Declaration
Uri LocalMemberAddress { get; }
Property Value
Type Description
Uri

Methods

| Edit this page View Source

AddMemberAsync(Uri, CancellationToken)

Announces a new member in the cluster.

Declaration
Task<bool> AddMemberAsync(Uri address, CancellationToken token = default)
Parameters
Type Name Description
Uri address

The addres of the cluster member.

CancellationToken token

The token that can be used to cancel the operation.

Returns
Type Description
Task<bool>

true if the node has been added to the cluster successfully; false if the node rejects the replication or the address of the node cannot be committed.

Exceptions
Type Condition
OperationCanceledException

The operation has been canceled or the cluster elects a new leader.

| Edit this page View Source

RemoveMemberAsync(Uri, CancellationToken)

Removes the member from the cluster.

Declaration
Task<bool> RemoveMemberAsync(Uri address, CancellationToken token = default)
Parameters
Type Name Description
Uri address

The addres of the cluster member.

CancellationToken token

The token that can be used to cancel the operation.

Returns
Type Description
Task<bool>

true if the node has been removed from the cluster successfully; false if the node rejects the replication or the address of the node cannot be committed.

Extension Methods

BasicExtensions.As<T>(T)
BasicExtensions.GetUserData<T>(T)
BasicExtensions.IsBetween<T, TLowerBound, TUpperBound>(T, TLowerBound, TUpperBound)
BasicExtensions.IsOneOf<T>(T, ReadOnlySpan<T>)
ExpressionBuilder.Const<T>(T)
AsyncLockAcquisition.AcquireLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireLockAsync<T>(T, TimeSpan, CancellationToken)
AsyncLockAcquisition.AcquireReadLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireReadLockAsync<T>(T, TimeSpan, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, bool, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, bool, TimeSpan, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, TimeSpan, CancellationToken)
LockAcquisition.AcquireReadLock<T>(T)
LockAcquisition.AcquireReadLock<T>(T, TimeSpan)
LockAcquisition.AcquireUpgradeableReadLock<T>(T)
LockAcquisition.AcquireUpgradeableReadLock<T>(T, TimeSpan)
LockAcquisition.AcquireWriteLock<T>(T)
LockAcquisition.AcquireWriteLock<T>(T, TimeSpan)
  • Edit this page
  • View Source
☀
☾
In this article
Back to top
Supported by the .NET Foundation
☀
☾