Exemple #1
0
        private async Task <EventRange> loadEvents(EventRange range)
        {
            if (_cancellation.IsCancellationRequested)
            {
                return(null);
            }

            await _daemon.TryAction(this, async() =>
            {
                try
                {
                    await _fetcher.Load(range, _cancellation);
                }
                catch (Exception e)
                {
                    if (!_cancellation.IsCancellationRequested)
                    {
                        _logger.LogError(e, "Error loading events for {Range}", range);
                        throw new EventFetcherException(_projectionShard.Name, e);
                    }
                }

                if (_logger.IsEnabled(LogLevel.Debug))
                {
                    _logger.LogDebug("Loaded events for {Range}", range);
                }
            }, _cancellation);

            return(range);
        }
Exemple #2
0
        private async Task<EventRange> loadEvents(EventRange range)
        {
            var parameters = new ActionParameters(this, async () =>
            {
                await _fetcher.Load(_projectionShard.Name, range, _cancellation);

                if (_logger.IsEnabled(LogLevel.Debug))
                {
                    _logger.LogDebug("Loaded events for {Range}", range);
                }
            })
            {
                LogAction = (logger, e) =>
                {
                    logger.LogError(e, "Error loading events for {Range}", range);
                }
            };


            await _daemon.TryAction(parameters);

            return range;
        }
Exemple #3
0
        private async Task <EventRange> loadEvents(EventRange range)
        {
            var parameters = new ActionParameters(this, async() =>
            {
                await _fetcher.Load(range, _cancellation).ConfigureAwait(false);

                if (_logger.IsEnabled(LogLevel.Debug))
                {
                    _logger.LogDebug("Loaded events {Range} for {ProjectionShardIdentity}", range, ProjectionShardIdentity);
                }
            })
            {
                LogAction = (logger, e) =>
                {
                    logger.LogError(e, "Error loading events {Range} for {ProjectionShardIdentity}", range, ProjectionShardIdentity);
                }
            };


            await _daemon.TryAction(parameters).ConfigureAwait(false);

            return(range);
        }