Table of Contents

Class MailboxMutationRequester

Namespace
MailFathom.Domain.Mutations
Assembly
MailFathom.Domain.dll

Names the authored act that asked for a mutation, in a form two requests can be compared by.

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

Remarks

This is one third of a mutation's idempotency identity, beside the email occurrence and the mutation itself. It has to answer one question: would asking again be the same request or a new one. A rule answers it with its own name and the revision it was evaluated at, so re-evaluating an unchanged rule over the same email performs nothing and changing the rule asks afresh. An invocation answers it with the identity of the invocation, so a retried call is the same request and a second call is a second one.

Only MailFathom's own configured names reach here. A rule name and an invocation identity are chosen by the operator or generated by MailFathom; no subject, address, or other mail content is part of a requester, which is what keeps the mutation record free of message content while still saying who asked.

Fields

MaximumIdentityLength

The greatest length an identity may have, which bounds the column it is stored in and the index over it.

Properties

Identity

Gets the identity that decides whether asking again is the same request.

Origin

Gets what kind of authored act asked.

Methods

Command(string)

Names one invocation somebody made.

Create(MailboxMutationOrigin, string)

Restores a requester from the origin and identity a record holds.

Rule(string, int)

Names a rule together with the revision of it that asked.

ToString()

Returns a string that represents the current object.