# File lib/amq/client/async/consumer.rb, line 39
        def initialize(channel, queue, consumer_tag = self.class.tag_generator.generate_for(queue), exclusive = false, no_ack = false, arguments = {}, no_local = false, &block)
          @callbacks    = Hash.new

          @channel       = channel            || raise(ArgumentError, "channel is nil")
          @connection    = channel.connection || raise(ArgumentError, "connection is nil")
          @queue         = queue        || raise(ArgumentError, "queue is nil")
          @consumer_tag  = consumer_tag
          @exclusive     = exclusive
          @no_ack        = no_ack
          @arguments     = arguments

          @no_local     = no_local

          self.register_with_channel
          self.register_with_queue
        end