private async Task <TResult> HandleWithErrorLogging(
            TQuery query,
            CancellationToken cancellationToken)
        {
            try
            {
                var queryResult = await _handler
                                  .Handle(query, cancellationToken)
                                  .ConfigureAwait(Await.Default);

                return(queryResult);
            }
            catch (Exception ex)
            {
                string queryName = typeof(TQuery).Name;

                _logger.ErrorFormat(
                    ex,
                    "Error executing query {0} :\r\n{1}",
                    queryName,
                    _logger.Serialize(query));

                throw;
            }
        }
Ejemplo n.º 2
0
        private async Task <UploadIntegrationImportCommandResult> HandleWithErrorLogging(
            UploadIntegrationImportCommand command,
            CancellationToken cancellationToken)
        {
            try
            {
                var commandResult = await _handler
                                    .Handle(command, cancellationToken)
                                    .ConfigureAwait(Await.Default);

                return(commandResult);
            }
            catch (Exception ex)
            {
                const string commandName = nameof(UploadIntegrationImportCommand);

                _logger.ErrorFormat(
                    ex,
                    "Error executing command {0} :\r\n{1}",
                    commandName,
                    _logger.Serialize(command));

                throw;
            }
        }
        /// <summary>
        /// Create instance
        /// </summary>
        public T Create()
        {
            if (_logger.IsErrorEnabled)
            {
                try
                {
                    return(_factory.Create());
                }
                catch (Exception ex)
                {
                    string productName = typeof(T).Name;

                    _logger.ErrorFormat(
                        ex,
                        "Error creating {0}",
                        productName);

                    throw;
                }
            }
            else
            {
                return(_factory.Create());
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Create instance
        /// </summary>
        /// <param name="command">The command</param>
        public TResult Create(TCommand command)
        {
            if (_logger.IsErrorEnabled)
            {
                try
                {
                    return(_factory.Create(command));
                }
                catch (Exception ex)
                {
                    string commandName = typeof(TCommand).Name;
                    string productName = typeof(TResult).Name;

                    _logger.ErrorFormat(
                        ex,
                        "Error creating {0} from {1} \r\n{2}",
                        productName,
                        commandName,
                        _logger.Serialize(command));

                    throw;
                }
            }
            else
            {
                return(_factory.Create(command));
            }
        }
        private async Task <IUploadResult> UploadWithErrorLogging(
            TCommand command,
            CancellationToken cancellationToken)
        {
            try
            {
                var commandResult = await _uploader
                                    .Upload(command, cancellationToken)
                                    .ConfigureAwait(Await.Default);

                return(commandResult);
            }
            catch (Exception ex)
            {
                string commandName = typeof(TCommand).Name;

                _logger.ErrorFormat(
                    ex,
                    "Error executing command {0} :\r\n{1}",
                    commandName,
                    _logger.Serialize(command));

                throw;
            }
        }
        private async Task ExecuteWithErrorLogging(CancellationToken cancellationToken)
        {
            try
            {
                await _handler
                .Execute(cancellationToken)
                .ConfigureAwait(Await.Default);
            }
            catch (OperationCanceledException)
            {
                throw;
            }
#pragma warning disable CA1031 // Do not catch general exception types
            catch (Exception ex)
#pragma warning restore CA1031 // Do not catch general exception types
            {
                _logger.ErrorFormat(ex, "Error executing {0}", typeof(T).Name);

                throw;
            }
        }