private async Task ExecuteWorkBodyAsync(ReceivedData receivedData)
        {
            try
            {
                _logger.LogDebug(
                    Utils.LogMessages.DataflowEngine.Execution,
                    receivedData.DeliveryTag);

                if (await _workBodyAsync(receivedData).ConfigureAwait(false))
                {
                    _logger.LogDebug(
                        Utils.LogMessages.DataflowEngine.ExecutionSuccess,
                        receivedData.DeliveryTag);

                    receivedData.AckMessage();
                }
                else
                {
                    _logger.LogWarning(
                        Utils.LogMessages.DataflowEngine.ExecutionFailure,
                        receivedData.DeliveryTag);

                    receivedData.NackMessage(true);
                }
            }
            catch (Exception ex)
            {
                _logger.LogWarning(
                    Utils.LogMessages.DataflowEngine.ExecutionError,
                    receivedData.DeliveryTag,
                    ex.Message);

                receivedData.NackMessage(true);
            }
        }