private void HandleReadHighestSequenceNr(ReadHighestSequenceNr message)
{
// Send read highest sequence number to persistentActor directly. No need
// to resequence the result relative to written and looped messages.
ReadHighestSequenceNrAsync(message.PersistenceId, message.FromSequenceNr)
.ContinueWith(t => t.IsFaulted || t.IsCanceled
? (object)
new ReadHighestSequenceNrFailure(
t.IsFaulted
? TryUnwrapException(t.Exception)
: new OperationCanceledException(
"ReadHighestSequenceNrAsync canceled, possibly due to timing out."))
: new ReadHighestSequenceNrSuccess(t.Result))
.PipeTo(message.PersistentActor);
}