Table of Contents

Method MergeThreadsAsync

Namespace
MailFathom.Application.Emails.Threads
Assembly
MailFathom.Application.dll

MergeThreadsAsync(IPersistenceSession, IReadOnlyList<EmailThreadId>, EmailThreadId, CancellationToken)

Folds conversations into one, moving their mail and their identifiers onto the survivor.

Task MergeThreadsAsync(IPersistenceSession session, IReadOnlyList<EmailThreadId> mergedThreadIds, EmailThreadId survivingThreadId, CancellationToken cancellationToken)

Parameters

session IPersistenceSession

The transaction the merge is part of.

mergedThreadIds IReadOnlyList<EmailThreadId>

The conversations that stop being their own.

survivingThreadId EmailThreadId

The conversation that keeps its identity.

cancellationToken CancellationToken

Propagates caller cancellation.

Returns

Task

Remarks

A merged conversation keeps a record naming its survivor, so an identifier a tool published before the merge still resolves to the conversation it named rather than answering not-found.