private void HandleEventQuery(Query query)
{
var queryId = query.QueryId;
var sender = Context.Sender;
DbEngine.ReadEvents(queryId, query.Hints, Context.Sender, reply =>
{
foreach (var adapted in AdaptFromJournal(reply))
{
sender.Tell(new QueryResponse(queryId, adapted));
}
})
.ContinueWith(task =>
task.IsFaulted || task.IsCanceled ? (IQueryReply) new QueryFailure(queryId, task.Exception) : new QuerySuccess(queryId),
TaskContinuationOptions.ExecuteSynchronously)
.PipeTo(Context.Sender);
}