Constructor MailboxMutationAuditTrail
- Namespace
- MailFathom.Infrastructure.Persistence.Mutations
- Assembly
- MailFathom.Infrastructure.dll
MailboxMutationAuditTrail(IMailboxMutationAuditEntryStore, OptimisticConcurrencyRetryPolicy, TimeProvider, MailboxMutationAuditTelemetry)
Initializes the trail from the store it appends to and the channels a refused append is reported on.
public MailboxMutationAuditTrail(IMailboxMutationAuditEntryStore store, OptimisticConcurrencyRetryPolicy commitPolicy, TimeProvider timeProvider, MailboxMutationAuditTelemetry telemetry)
Parameters
storeIMailboxMutationAuditEntryStoreKeeps the entries.
commitPolicyOptimisticConcurrencyRetryPolicyCommits the append in a transaction of its own, retrying an optimistic conflict.
timeProviderTimeProviderStamps the instant the mutation ended.
telemetryMailboxMutationAuditTelemetryReports an append that did not happen.
Exceptions
- ArgumentNullException
Thrown when a required collaborator is null.