Table of Contents

Interface IMailAccountCatalog

Namespace
MailFathom.Application.Accounts
Assembly
MailFathom.Application.dll

Describes the mail accounts this deployment serves.

public interface IMailAccountCatalog

Remarks

A query use case asks this before it reads anything, and it asks for two reasons. An account nobody configured is refused rather than answered with an empty page, because at a boundary a client reaches an empty page tells the client the name exists and holds no mail, which turns a list operation into a way to enumerate accounts. A request that names no account is then narrowed to this set rather than left unrestricted, because removing an account from configuration must stop its stored mail from being readable even though its rows remain.

The set is published to a caller in one place and one only: the tool that exists to say which accounts a deployment serves, so that a client can name one. Every other use of it is a bound on a query rather than an answer, and what a caller learns there is still only whether the account it named was accepted.

Properties

ServedAccounts

Gets the accounts this deployment is configured to serve, deduplicated and ordered.

SynchronizationEnabled

Gets whether this deployment refreshes the local copy of these accounts at all.