Constructor MailDraftPromotion
- Namespace
- MailFathom.Application.Mail.Delivery.Drafts
- Assembly
- MailFathom.Application.dll
MailDraftPromotion(IMailDraftStore, IEmailContentStore, MailOutbox, IOutgoingEmailStore, OptimisticConcurrencyRetryPolicy, OutgoingEmailBounds, AccessAuthorization)
Initializes the promotion from the draft it reads and the outbox it writes the send into.
public MailDraftPromotion(IMailDraftStore drafts, IEmailContentStore contentStore, MailOutbox outbox, IOutgoingEmailStore outgoingEmails, OptimisticConcurrencyRetryPolicy retryPolicy, OutgoingEmailBounds bounds, AccessAuthorization authorization)
Parameters
draftsIMailDraftStoreHolds the draft and the record of what it was promoted to.
contentStoreIEmailContentStoreHolds the stored MIME the send carries unchanged.
outboxMailOutboxWrites the send down, and is where this deployment's bounds are asked again.
outgoingEmailsIOutgoingEmailStoreReads back the record a draft was already promoted to.
retryPolicyOptimisticConcurrencyRetryPolicyCommits the mark that names the send on the draft.
boundsOutgoingEmailBoundsStates how large a message this deployment sends.
authorizationAccessAuthorizationAnswers whether the caller that reached this holds the grant that lets it send.
Exceptions
- ArgumentNullException
Thrown when a collaborator is null.