def initialize(client, name, opts = {})
raise Bunny::ConnectionError, 'Not connected to server' if client.status == :not_connected
@client = client
@opts = opts
@delivery_tag = nil
@subscription = nil
if !name
opts = {
:passive => false,
:durable => false,
:exclusive => true,
:auto_delete => true
}.merge(opts)
end
opts.delete(:nowait)
client.send_frame(
Qrack::Protocol::Queue::Declare.new({ :queue => name || '', :nowait => false }.merge(opts))
)
method = client.next_method
client.check_response(method, Qrack::Protocol::Queue::DeclareOk, "Error declaring queue #{name}")
@name = method.queue
client.queues[@name] = self
end