Table of Contents

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

drafts IMailDraftStore

Holds the draft and the record of what it was promoted to.

contentStore IEmailContentStore

Holds the stored MIME the send carries unchanged.

outbox MailOutbox

Writes the send down, and is where this deployment's bounds are asked again.

outgoingEmails IOutgoingEmailStore

Reads back the record a draft was already promoted to.

retryPolicy OptimisticConcurrencyRetryPolicy

Commits the mark that names the send on the draft.

bounds OutgoingEmailBounds

States how large a message this deployment sends.

authorization AccessAuthorization

Answers whether the caller that reached this holds the grant that lets it send.

Exceptions

ArgumentNullException

Thrown when a collaborator is null.