Sha256: 8bc76d88fa438f01c7e6953fef310d271dc23aa55994048be74678f492fc12ea

Contents?: true

Size: 1.28 KB

Versions: 33

Compression:

Stored size: 1.28 KB

Contents

#!/usr/bin/env ruby
# encoding: utf-8

__dir = File.dirname(File.expand_path(__FILE__))
require File.join(__dir, "..", "..", "example_helper")

require "amq/client/extensions/rabbitmq/confirm"

amq_client_example "Publisher confirmations using RabbitMQ extension: unroutable message scenario" do |client|
  channel = AMQ::Client::Channel.new(client, 1)
  channel.open do
    puts "Channel #{channel.id} is now open"

    channel.confirm_select
    channel.on_error do
      puts "Oops, there is a channel-levle exceptions!"
    end


    channel.on_ack do |basic_ack|
      puts "Received basic_ack: multiple = #{basic_ack.multiple}, delivery_tag = #{basic_ack.delivery_tag}"
    end

    x = AMQ::Client::Exchange.new(client, channel, AMQ::Protocol::EMPTY_STRING, :direct)
    x.on_return { |basic_return, metadata, payload|
      puts "Received basic.return: reply_text = #{basic_return.reply_text}, reply_code = #{basic_return.reply_code}"
    }

    10.times { x.publish("A message", AMQ::Protocol::EMPTY_STRING, {}, true) }



    show_stopper = Proc.new {
      client.disconnect do
        puts
        puts "AMQP connection is now properly closed"
        EM.stop
      end
    }

    Signal.trap "INT",  show_stopper
    Signal.trap "TERM", show_stopper

    EM.add_timer(3, show_stopper)
  end
end

Version data entries

33 entries across 33 versions & 1 rubygems

Version Path
amq-client-0.9.0 examples/eventmachine_adapter/extensions/rabbitmq/publisher_confirmations_with_unroutable_message.rb
amq-client-0.9.0.pre2 examples/eventmachine_adapter/extensions/rabbitmq/publisher_confirmations_with_unroutable_message.rb
amq-client-0.9.0.pre1 examples/eventmachine_adapter/extensions/rabbitmq/publisher_confirmations_with_unroutable_message.rb
amq-client-0.8.7 examples/eventmachine_adapter/extensions/rabbitmq/publisher_confirmations_with_unroutable_message.rb
amq-client-0.8.7.pre1 examples/eventmachine_adapter/extensions/rabbitmq/publisher_confirmations_with_unroutable_message.rb
amq-client-0.8.6 examples/eventmachine_adapter/extensions/rabbitmq/publisher_confirmations_with_unroutable_message.rb
amq-client-0.8.5 examples/eventmachine_adapter/extensions/rabbitmq/publisher_confirmations_with_unroutable_message.rb
amq-client-0.8.4 examples/eventmachine_adapter/extensions/rabbitmq/publisher_confirmations_with_unroutable_message.rb
amq-client-0.8.3 examples/eventmachine_adapter/extensions/rabbitmq/publisher_confirmations_with_unroutable_message.rb
amq-client-0.8.2 examples/eventmachine_adapter/extensions/rabbitmq/publisher_confirmations_with_unroutable_message.rb
amq-client-0.8.1 examples/eventmachine_adapter/extensions/rabbitmq/publisher_confirmations_with_unroutable_message.rb
amq-client-0.8.0 examples/eventmachine_adapter/extensions/rabbitmq/publisher_confirmations_with_unroutable_message.rb
amq-client-0.7.0.alpha35 examples/eventmachine_adapter/extensions/rabbitmq/publisher_confirmations_with_unroutable_message.rb