Constructor OutgoingMailFilingPass
- Namespace
- MailFathom.Application.Mail.Delivery.Filing
- Assembly
- MailFathom.Application.dll
OutgoingMailFilingPass(IOutgoingEmailStore, OutgoingMailFiler, IMailFolderMappingReader, IOutgoingMailFilingPolicyReader, TimeProvider, MailOutboxSettings)
Initializes the pass from the outbox it reads and the filer it acts through.
public OutgoingMailFilingPass(IOutgoingEmailStore outgoingEmails, OutgoingMailFiler filer, IMailFolderMappingReader folderMappings, IOutgoingMailFilingPolicyReader filingPolicies, TimeProvider timeProvider, MailOutboxSettings settings)
Parameters
outgoingEmailsIOutgoingEmailStoreHolds the records whose copies this pass keeps in step.
filerOutgoingMailFilerAppends and withdraws one copy.
folderMappingsIMailFolderMappingReaderAnswers whether this account maps a folder to the outbox role at all.
filingPoliciesIOutgoingMailFilingPolicyReaderAnswers whether this account files a copy of what it sends.
timeProviderTimeProviderDecides which sends are waiting rather than merely queued.
settingsMailOutboxSettingsBounds how many waiting sends one pass mirrors.
Remarks
The mirror is bounded by the same number as the deliveries, because both are one conversation with a server per send and what one pass leaves the next one takes. A second bound would be a second number to keep in step for no difference an operator could observe.
Exceptions
- ArgumentNullException
Thrown when a collaborator is null.