def declare_queue(channel, exchange, name, key, options = {})
      channel.queue(name, options) do |queue|
        # Check if additional bindings are needed
        unless default_exchange?(exchange.name)
          queue.bind(exchange, { :routing_key => key })
        end

        log.debug("Queue #{queue.name.inspect} bound to #{exchange.name.inspect}")
      end
    end
def declare_queue(channel, exchange, name, key, options = {})
      channel.queue(name, options) do |queue|
        # Check if additional bindings are needed
        unless default_exchange?(exchange.name)
          queue.bind(exchange, { :routing_key => key })
        end

        log.debug("Queue #{queue.name.inspect} bound to #{exchange.name.inspect}")
      end
    end
Declare and bind a queue to the specified exchange via the
 supplied routing key.

 @param channel [AMQP::Channel]
 @param exchange [AMQP::Exchange]
 @param name [String]
 @param key [String]
 @param options [Hash]
 @return [AMQP::Queue]
 @api public