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