/// <summary>
        /// Constructor from an AMQP message
        /// </summary>
        /// <param name="amqpMessage">AMQP message</param>
        internal BrokeredMessage(Message amqpMessage)
            : this()
        {
            if (amqpMessage == null)
            {
                throw new ArgumentNullException("amqpMessage");
            }

            MessageConverter.AmqpMessageToBrokeredMessage(amqpMessage, this);

            this.bodyStream = (amqpMessage.Body != null) ? new MemoryStream((byte[])amqpMessage.Body) : null;
        }