/// <inheritdoc />
        protected override async Task ProcessReceivedMessage(BaseMessage message)
        {
            try
            {
                var processed = await GetProcessedMessageAsync(message);

                if (!processed)
                {
                    processed = GetProcessedMessage(message);
                }

                if (!processed)
                {
                    _logger.LogError("The message did not processed. Message body: {messageBody}", message.LogBody());
                }

                _transactedAdapter.CommitIfTransacted(message);
            }
            catch (SystemException)
            {
                _logger.LogError("Process message failed: commit message");
                _transactedAdapter.CommitIfTransacted(message);
            }
            catch (Exception e)
            {
                _logger.LogError(e, "Error while executing process handler");
                _transactedAdapter.RollbackIfTransacted();
            }
        }
示例#2
0
 /// <inheritdoc />
 public void RollbackIfTransacted()
 {
     _adapter.RollbackIfTransacted();
 }