/// <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(); } }
/// <inheritdoc /> public void RollbackIfTransacted() { _adapter.RollbackIfTransacted(); }