Module AMQ::Client::Async::Extensions::RabbitMQ::Confirm::ChannelMixin
In: lib/amq/client/async/extensions/rabbitmq/confirm.rb

Methods

Attributes

publisher_index  [W]  Change publisher index. Publisher index is incremented by 1 after each Basic.Publish starting at 1. This is done on both client and server, hence this acknowledged messages can be matched via its delivery-tag.

@api private

Public Class methods

Public Instance methods

Turn on confirmations for this channel and, if given, register callback for Confirm.Select-Ok.

@raise [RuntimeError] Occurs when confirmations are already activated. @raise [RuntimeError] Occurs when nowait is true and block is given.

@param [Boolean] nowait Whether we expect Confirm.Select-Ok to be returned by the broker or not. @yield [method] Callback which will be executed once we receive Confirm.Select-Ok. @yieldparam [AMQ::Protocol::Confirm::SelectOk] method Protocol method class instance.

@return [self] self.

@see confirm

Handler for Basic.Ack. By default, it just executes hook specified via the confirm method with a single argument, a protocol method class instance (an instance of AMQ::Protocol::Basic::Ack).

@api plugin

Handler for Basic.Nack. By default, it just executes hook specified via the confirm_failed method with a single argument, a protocol method class instance (an instance of AMQ::Protocol::Basic::Nack).

@api plugin

Handler for Confirm.Select-Ok. By default, it just executes hook specified via the confirmations method with a single argument, a protocol method class instance (an instance of AMQ::Protocol::Confirm::SelectOk) and then it deletes the callback, since Confirm.Select is supposed to be sent just once.

@api plugin

This method is executed after publishing of each message via {Exchage#publish}. Currently it just increments publisher index by 1, so messages can be actually matched.

@api plugin

Turn on confirmations for this channel and, if given, register callback for basic.ack from the broker.

@raise [RuntimeError] Occurs when confirmations are already activated. @raise [RuntimeError] Occurs when nowait is true and block is given. @param [Boolean] nowait Whether we expect Confirm.Select-Ok to be returned by the broker or not.

@yield [basick_ack] Callback which will be executed every time we receive Basic.Ack from the broker. @yieldparam [AMQ::Protocol::Basic::Ack] basick_ack Protocol method class instance.

@return [self] self.

Register error callback for Basic.Nack. It‘s called when message(s) is rejected.

@return [self] self

Publisher index is an index of the last message since the confirmations were activated, started with 0. It‘s incremented by 1 every time a message is published. This is done on both client and server, hence this acknowledged messages can be matched via its delivery-tag.

@return [Integer] Current publisher index. @api public

Resets publisher index to 0

@api plugin

[Validate]