public QueueMessageVisualization get_message_details_Port_QueueName_SourceInstanceId_MessageId(
            MessageInputModel input)
        {
            var messageId = new MessageId
            {
                MessageIdentifier = input.MessageId,
                SourceInstanceId  = input.SourceInstanceId
            };
            var message = RetrieveMessage(messageId, input.Port, input.QueueName);

            if (message == null)
            {
                _fubuRequest.Set(new QueueMessageNotFound
                {
                    Id        = messageId,
                    QueueName = input.QueueName
                });

                return(null);
            }

            var envelope = message.ToEnvelope();

            envelope.UseSerializer(_serializer);

            return(new QueueMessageVisualization
            {
                MessageId = messageId,
                QueueName = message.Queue,
                SubQueueName = message.SubQueue,
                Status = message.Status,
                SentAt = message.SentAt,
                Headers = message.Headers,
                Payload = envelope.Message
            });
        }
        public QueueMessageVisualization get_message_details_Port_QueueName_SourceInstanceId_MessageId(
            MessageInputModel input)
        {
            var messageId = new MessageId
            {
                MessageIdentifier = input.MessageId,
                SourceInstanceId = input.SourceInstanceId
            };
            var message = RetrieveMessage(messageId, input.Port, input.QueueName);

            if (message == null)
            {
                _fubuRequest.Set(new QueueMessageNotFound
                {
                    Id = messageId,
                    QueueName = input.QueueName
                });

                return null;
            }

            var envelope = message.ToEnvelope();
            envelope.UseSerializer(_serializer);

            return new QueueMessageVisualization
            {
                MessageId = messageId,
                QueueName = message.Queue,
                SubQueueName = message.SubQueue,
                Status = message.Status,
                SentAt = message.SentAt,
                Headers = message.Headers,
                Payload = envelope.Message
            };
        }