Table of Contents

Class MailboxQueryFilterInvalidException

Namespace
MailFathom.Application.Emails.Mailboxes
Assembly
MailFathom.Application.dll

The failure raised when one filter of a mailbox query carries something the query does not accept.

public sealed class MailboxQueryFilterInvalidException : MailFathomException, ISerializable
Inheritance
MailboxQueryFilterInvalidException
Implements
Inherited Members

Remarks

A filter a caller supplies reaches a database predicate, so each one states what it accepts and anything else is refused rather than absorbed. Truncating an over-long filter, or keeping a value that can match no row, would be worse than failing: the query would run against a filter nobody wrote and the caller would read its result as the answer to the request they sent.

The message names the filter and, where there is one, its limit. It never repeats the value that was refused, because an address and a subject fragment are mail content; both the filter name and the limit come from this assembly rather than from the request.

Properties

ErrorCode

Gets the stable code identifying this failure to a boundary that must report it without naming a type.

FilterName

Gets the filter that was refused, named as this assembly names it.

Methods

Blank(string)

Refuses a filter that carries no text where the query has no meaning without one.

ContainsControlCharacter(string)

Refuses a text filter that carries a control character.

EmptyRange(string)

Refuses a range filter whose end is not after its start.

NotAUsableIdentifier(string)

Refuses text that names no identity this system issues, where no other failure explains why.

NotAUsableIdentifier(string, Exception)

Refuses text that names no identity this system issues, such as an account identifier or a folder alias.

NotAnAddress(string)

Refuses a filter whose value is not an address any stored participant could carry.

ThrowIfCountExceeded(int, int, string)

Refuses a filter that names more distinct values than the query accepts.

ThrowIfLengthExceeded(int, int, string)

Refuses a filter whose text is longer than the query accepts.