Interface IRemoteFolderCreator
- Namespace
- MailFathom.Application.Folders
- Assembly
- MailFathom.Application.dll
Creates the one folder a mapping asked to have created, and can do nothing else to a mailbox.
public interface IRemoteFolderCreator
Remarks
The name states the port's whole surface. There is no method that renames a folder, deletes one, or unsubscribes from one, and permitting any of those is a decision to reopen ADR 0007 rather than a method to append here.
It is a port of its own rather than a fifth method on IMailboxWriteSession, which is what buys the same separation the write session itself buys: a component that can file a message into a folder cannot create one, and a component that can create one cannot relocate, delete, flag, or copy a message. No second connection is opened for it — a creation is issued over the account's single write connection, so an account still holds at most one connection able to change its mailbox.
Nothing reaches this port from configuration binding, from mail content, from a tool argument, or from model output.
A path arrives here from the RemotePath of a mapping the operator wrote and from nowhere else, which is the
input class the decision's authorization review turns on.
Methods
- CreateFolderAsync(MailAccountId, MailFolderAlias, RemoteFolderPath, MailTransportSecurityPolicy, CancellationToken)
Creates the folder a configured path names, together with the ancestors that path names above it.