Show / Hide Table of Contents

    Class UnorderedReceiverState

    IReceiverState for DeDuplicatingReceiveActors that are processing messages with AnyOrder
    Inheritance
    System.Object
    UnorderedReceiverState
    Namespace:Akka.Persistence.Extras
    Assembly:Akka.Persistence.Extras.dll
    Syntax
    public sealed class UnorderedReceiverState : object, IReceiverState
    Remarks

    The implication of AnyOrder is that we can't rely on the sequence numbers for any individual sender being monotonic, therefore we have to store a finite-length array of them and check to see if the ConfirmationId has already been handled by this actor.

    Constructors

    UnorderedReceiverState()

    Declaration
    public UnorderedReceiverState()

    UnorderedReceiverState(ITimeProvider, Int32)

    Declaration
    public UnorderedReceiverState(ITimeProvider timeProvider, int maxConfirmationsPerSender = null)
    Parameters
    Type Name Description
    ITimeProvider timeProvider
    System.Int32 maxConfirmationsPerSender

    Fields

    DefaultMaxConfirmationsPerSender

    Determines the size of the circular buffer we're going to use to store the out-of-order confirmations

    Declaration
    public const int DefaultMaxConfirmationsPerSender = null
    Field Value
    Type Description
    System.Int32

    Properties

    MaxConfirmationsPerSender

    Determines the size of the circular buffer we're going to use to store the out-of-order confirmations

    Declaration
    public int MaxConfirmationsPerSender { get; }
    Property Value
    Type Description
    System.Int32

    Ordering

    Declaration
    public ReceiveOrdering Ordering { get; }
    Property Value
    Type Description
    ReceiveOrdering

    TrackedSenders

    Declaration
    public IReadOnlyDictionary<string, DateTime> TrackedSenders { get; }
    Property Value
    Type Description
    IReadOnlyDictionary<System.String, DateTime>

    Methods

    AlreadyProcessed(Int64, String)

    Declaration
    public bool AlreadyProcessed(long confirmationId, string senderId)
    Parameters
    Type Name Description
    System.Int64 confirmationId
    System.String senderId
    Returns
    Type Description
    System.Boolean

    ConfirmProcessing(Int64, String)

    Declaration
    public IReceiverState ConfirmProcessing(long confirmationId, string senderId)
    Parameters
    Type Name Description
    System.Int64 confirmationId
    System.String senderId
    Returns
    Type Description
    IReceiverState

    FromSnapshot(IReceiverStateSnapshot)

    Declaration
    public IReceiverState FromSnapshot(IReceiverStateSnapshot snapshot)
    Parameters
    Type Name Description
    IReceiverStateSnapshot snapshot
    Returns
    Type Description
    IReceiverState

    Prune(TimeSpan)

    Declaration
    public PrunedResult Prune(TimeSpan notUsedSince)
    Parameters
    Type Name Description
    TimeSpan notUsedSince
    Returns
    Type Description
    PrunedResult

    ToSnapshot()

    Declaration
    public IReceiverStateSnapshot ToSnapshot()
    Returns
    Type Description
    IReceiverStateSnapshot
    Back to top Copyright © 2015-2018 Petabridge®