Table of Contents

Class MailAnsweringAuditQuery

Namespace
MailFathom.Application.Retrieval.AskMail.Audit
Assembly
MailFathom.Application.dll

Asks one bounded, keyset-paginated page of an account's answering record.

public sealed record MailAnsweringAuditQuery : IEquatable<MailAnsweringAuditQuery>
Inheritance
MailAnsweringAuditQuery
Implements
Inherited Members

Remarks

The account is required rather than optional, and every other filter narrows within it. Enabling the record, its retention, and its erasure are all decisions one account's operator makes, so reading it is scoped the same way — and a surface over derived personal data is better for making a caller name whose mailbox they are asking about than for serving a deployment-wide list nobody asked a question about.

A page is always bounded and always ordered newest first, so a caller that supplies nothing gets the most recent DefaultPageSize entries rather than the whole record.

Fields

DefaultPageSize

The page size a request that names none is served.

MaximumPageSize

The greatest page size one request may ask for.

Properties

AccountId

Gets the account whose record is read.

CompletedBefore

Gets the completion instant the page stops before, exclusive, or null when it reaches the newest entry.

CompletedFrom

Gets the earliest completion instant served, inclusive, or null when the page reaches back as far as the record does.

Cursor

Gets the boundary a continued walk reads beyond, or null for the first page.

FilterFingerprint

Gets the fingerprint of the filters this query reads under, which its cursors are issued against.

PageSize

Gets how many entries the page holds at most.

Methods

Create(MailAccountId, DateTimeOffset?, DateTimeOffset?, int?, MailAnsweringAuditCursor?)

Builds a validated query from what a caller asked for, or reports why the request names no page.