Exemplo n.º 1
0
        private async Task <QueueMessageRecoveryStrategy> OnProcessMessageAsync(IQueueEntry <TMessage> queueEntry)
        {
            try
            {
                await OnMessageReceivedAsync(queueEntry).ConfigureAwait(false);

                return(QueueMessageRecoveryStrategy.Complete);
            }
#pragma warning disable CA1031 // Do not catch general exception types
            catch (Exception e)
#pragma warning restore CA1031 // Do not catch general exception types
            {
                return(await TaskHelpers.DefaultIfExceptionAsync(
                           GetRecoveryStrategyAsync,
                           e,
                           QueueMessageRecoveryStrategy.Abandon).ConfigureAwait(false));
            }
        }