Interface ISynchronizationCheckpointStore
- Namespace
- MailFathom.Application.Synchronization.Checkpoints
- Assembly
- MailFathom.Application.dll
Persists synchronization checkpoints for mailbox folders.
public interface ISynchronizationCheckpointStore
Remarks
The port carries behavior of its own rather than a row's storage: staging an advance is a compare against the progress the caller decided from, so a run that resumed from stale state is refused instead of overwriting a run that already moved the binding forward. No persistence library publishes that contract, and expressing it here is what lets the compare be asserted without a database.
Methods
- GetCheckpointAsync(MailAccountId, MailFolderResolutionId, CancellationToken)
Gets the last durable checkpoint for one alias binding.
- SaveCheckpointAsync(IPersistenceSession, MailAccountId, MailFolderResolutionId, SynchronizationCheckpoint?, SynchronizationCheckpoint, CancellationToken)
Stages a checkpoint update only when the durable state still matches the state previously read.