Table of Contents

Method Create

Namespace
MailFathom.Domain.Mutations
Assembly
MailFathom.Domain.dll

Create(StoredEmailId, EmailOccurrenceId, MailboxMutation, MailboxMutationRequester, RemoteFolderPath?, bool?)

Restores the request a durable record was written for.

public static MailboxMutationRequest Create(StoredEmailId storedEmailId, EmailOccurrenceId occurrence, MailboxMutation mutation, MailboxMutationRequester requester, RemoteFolderPath? destinationPath, bool? desiredSeenState)

Parameters

storedEmailId StoredEmailId

The local email the change is about.

occurrence EmailOccurrenceId

The occurrence the change was asked for.

mutation MailboxMutation

The change that was asked for.

requester MailboxMutationRequester

The authored act that asked.

destinationPath RemoteFolderPath?

The stored destination folder, where the mutation takes one.

desiredSeenState bool?

The stored flag direction, where the mutation takes one.

Returns

MailboxMutationRequest

The request those values name.

Remarks

This is the one route that accepts the parameters loose, because a stored row hands them back that way. It validates the shape the factories above guarantee, so a row edited by hand into a combination no mutation has is rejected on the way in rather than acted on.

Exceptions

ArgumentNullException

Thrown when occurrence or requester is null.

ArgumentException

Thrown when mutation is unspecified, or when the parameters present are not the ones it takes.