private async Task executePage(EventPage page, CancellationToken cancellation) { using (var session = _store.OpenSession()) { await _projection.ApplyAsync(session, page.Streams, cancellation).ConfigureAwait(false); session.QueueOperation(new EventProgressWrite(_events, _projection.Produces.FullName, page.To)); await session.SaveChangesAsync(cancellation).ConfigureAwait(false); _logger.PageExecuted(page, this); LastEncountered = page.To; evaluateWaiters(); UpdateBlock?.Post(new StoreProgress(_projection.Produces, page)); } }
private async Task executePage(EventPage page, CancellationToken cancellation) { // TODO -- have to pass in the tenant here using (var session = _store.OpenSession()) { await _projection.ApplyAsync(session, page, cancellation).ConfigureAwait(false); session.QueueOperation(new EventProgressWrite(_events, _projection.ProjectedType().FullName, page.To)); await session.SaveChangesAsync(cancellation).ConfigureAwait(false); _logger.PageExecuted(page, this); // This is a change to accomodate the big gap problem LastEncountered = page.LastEncountered(); evaluateWaiters(); UpdateBlock?.Post(new StoreProgress(_projection.ProjectedType(), page)); } }