Class MailboxScopeResolver
- Namespace
- MailFathom.Application.Emails.Mailboxes
- Assembly
- MailFathom.Application.dll
Decides which accounts and folders a mailbox read actually runs against.
public sealed class MailboxScopeResolver
- Inheritance
-
MailboxScopeResolver
- Inherited Members
Remarks
Every read model asks the same two questions of a requested scope, and both answers are access decisions rather than query details, which is why they are resolved once here instead of per use case. A read model that answered either one differently would publish mail through the query that got it wrong while the others stayed correct.
Constructors
- MailboxScopeResolver(IMailAccountCatalog, IMailFolderParticipationReader, IJunkMailFolderCatalog, MailFolderReferenceResolver)
Initializes the resolver.
Methods
- IsReadableByTools(MailAccountId, MailFolderAlias)
Reports whether a tool may read one email, given the mailbox it was stored from.
- ReadableScope(IReadOnlyList<MailAccountSelector>, IReadOnlyList<MailFolderReference>, JunkMailInclusion)
Resolves what a request named into the scope a query runs with.