Sha256: 8370508793f8d92397f7978f980d991ef90d3b1800ea9dd357360399cc647108

Contents?: true

Size: 1010 Bytes

Versions: 28

Compression:

Stored size: 1010 Bytes

Contents

# encoding: utf-8

require "amq/client/channel"

# Basic.Nack
module AMQ
  module Client
    module Extensions
      module RabbitMQ
        module Basic
          module ChannelMixin

            # Overrides {AMQ::Client::Channel#reject} behavior to use basic.nack.
            #
            # @api public
            # @see http://www.rabbitmq.com/amqp-0-9-1-quickref.html#basic.nack
            def reject(delivery_tag, requeue = true, multi = false)
              if multi
                @client.send(Protocol::Basic::Nack.encode(self.id, delivery_tag, multi, requeue))
              else
                super(delivery_tag, requeue)
              end
            end # reject

          end # ChannelMixin
        end # Basic
      end # RabbitMQ
    end # Extensions

    class Channel
      # use modules, a native Ruby way of extension of existing classes,
      # instead of reckless monkey-patching. MK.      
      include Extensions::RabbitMQ::Basic::ChannelMixin
    end
  end # Client
end # AMQ

Version data entries

28 entries across 28 versions & 1 rubygems

Version Path
amq-client-0.7.0.alpha27 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha26 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha25 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha24 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha23 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha22 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha21 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha20 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha19 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha18 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha17 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha16 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha15 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha14 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha13 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha12 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha11 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha10 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha9 lib/amq/client/extensions/rabbitmq/basic.rb
amq-client-0.7.0.alpha8 lib/amq/client/extensions/rabbitmq/basic.rb