Namespace Xapi.Client.Outbox
Classes
- FileOutboxRecovery
What FileOutboxStore had to repair when it opened its journal.
- FileOutboxStore
An OutboxStore that keeps the outbox in a directory, as an append-only journal that is flushed to disk (
fsync) before each change is acknowledged.
- InMemoryOutboxStore
An OutboxStore that keeps everything in memory. Queued Statements are lost when the process ends, so use it for tests, or where that is acceptable; use FileOutboxStore otherwise.
- OutboxDeadLetter
A Statement the outbox gave up on, with the reason. Dead letters stay in the store until they are requeued (RequeueDeadLetterAsync(Guid, CancellationToken)) or removed (RemoveDeadLetterAsync(Guid, CancellationToken)).
- OutboxDeadLetteredEventArgs
Data for DeadLettered.
- OutboxDeliveredEventArgs
Data for Delivered.
- OutboxDiagnostics
The names of the outbox's metrics. They are reported on the client's meter, MeterName (
Xapi.Client), next to StatementsSent, which counts what the outbox delivers. The names are part of the public contract: they change only in a major release.
- OutboxEntry
A Statement waiting in an outbox, with its delivery history.
- OutboxFlushResult
What one FlushAsync(CancellationToken) did.
- OutboxFullException
Thrown by EnqueueAsync(Statement, CancellationToken) when MaxQueueSize Statements are already waiting. The Statement was not stored.
- OutboxOptions
Settings for StatementOutbox. The outbox copies them when it is created.
- OutboxPausedEventArgs
Data for Paused.
- OutboxStatus
A snapshot of an outbox: what it is doing, how much is waiting, and the last error.
- OutboxStore
Where an outbox keeps its Statements: an ordered queue of pending entries, keyed by Statement id, and a set of dead letters.
- StatementOutbox
A durable queue in front of an XapiClient: Statements are stored before EnqueueAsync(Statement, CancellationToken) returns, and delivered later, in order and in batches, by FlushAsync(CancellationToken) or by a background loop (RunAsync(CancellationToken)).
Enums
- OutboxDeadLetterReason
Why a Statement was moved to the dead letters instead of being delivered.
- OutboxState
What an outbox is doing.