Table of Contents

Method Relocate

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

Relocate(StoredEmailId, EmailOccurrenceId, MailboxMutationRequester, RemoteFolderPath, AuthoredDeleteEmailDisposition?)

Asks for one email to be moved out of its folder and into another.

public static MailboxMutationRequest Relocate(StoredEmailId storedEmailId, EmailOccurrenceId occurrence, MailboxMutationRequester requester, RemoteFolderPath destinationPath, AuthoredDeleteEmailDisposition? localDisposition = null)

Parameters

storedEmailId StoredEmailId

The local email being moved.

occurrence EmailOccurrenceId

Where the email is now.

requester MailboxMutationRequester

The authored act asking.

destinationPath RemoteFolderPath

The folder to move it into.

localDisposition AuthoredDeleteEmailDisposition?

What becomes of the local copy, supplied only when the destination is a folder MailFathom does not mirror, and null for a destination it does.

Returns

MailboxMutationRequest

The request to write down.

Remarks

Nothing about the IMAP command changes with the disposition. The move is issued the same way into a folder MailFathom mirrors and one it does not, because the server's folder is the same kind of thing either way; what the disposition decides is only what synchronization does with the local row once the occurrence has been seen to leave its source folder, which for an unmirrored destination is the last MailFathom will ever see of it.

Exceptions

ArgumentNullException

Thrown when occurrence or requester is null.

ArgumentOutOfRangeException

Thrown when localDisposition names no declared disposition.