Class RemoteEmailPlacement
- Namespace
- MailFathom.Domain.Mutations
- Assembly
- MailFathom.Domain.dll
States where a mutation left an email in the folder it put it into, when the server said.
public sealed record RemoteEmailPlacement : IEquatable<RemoteEmailPlacement>
- Inheritance
-
RemoteEmailPlacement
- Implements
- Inherited Members
Remarks
A message that arrives in another folder is a different occurrence with a different UID, and only RFC 4315's
COPYUID response names it directly. A server advertising no UIDPLUS completes the same change and
simply does not say where, which is why the absence is a value this type carries rather than a failure or a
null a caller has to interpret: the alternative is searching the destination folder for the
message afterwards, and that is a guess about identity rather than a fact the server gave.
The UIDVALIDITY travels with the UID because a UID is only stable inside one. Reporting the number alone would let a destination folder recreated between two mutations hand back an identity naming a different email.
Properties
- IsReported
Gets whether the server named where it put the email.
- UidValidity
Gets the UIDVALIDITY of the folder the email was put into, or null when the server named neither.
Methods
- NotReported()
Reports a server that completed the change without naming where the email landed.
- Reported(ImapUidValidity, ImapUid)
Reports the identity a
COPYUIDresponse named.