Sha256: 13a19ca9116f0402a43eccc8e2ab7ce05b503b42512bfd8afacccd1b652467ff

Contents?: true

Size: 1.31 KB

Versions: 32

Compression:

Stored size: 1.31 KB

Contents

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

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


EM.run do
  AMQ::Client::EventMachineClient.connect(:port     => 5672,
                                          :vhost    => "amq_client_testbed",
                                          :user     => "amq_client_gem",
                                          :password => "amq_client_gem_password",
                                          :timeout        => 0.3,
                                          :on_tcp_connection_failure => Proc.new { |settings| puts "Failed to connect, this was NOT expected"; EM.stop }) do |connection|

    connection.on_tcp_connection_loss do |conn, settings|
      puts "Trying to reconnect..."
      conn.reconnect_to(:host => "dev.rabbitmq.com")
    end

    connection.on_recovery do |conn, settings|
      puts "Connection recovered"
    end

    show_stopper = Proc.new {
      connection.disconnect { puts "Disconnected. Exiting…"; EventMachine.stop }
    }

    Signal.trap "TERM", show_stopper
    Signal.trap "INT",  show_stopper
    EM.add_timer(30, show_stopper)


    puts "Connected, authenticated. To really exercise this example, shut AMQP broker down for a few seconds. If you don't it will exit gracefully in 30 seconds."
  end
end

Version data entries

32 entries across 32 versions & 1 rubygems

Version Path
amq-client-0.9.0 examples/eventmachine_adapter/error_handling/connection_loss_handler_that_fails_over.rb
amq-client-0.9.0.pre2 examples/eventmachine_adapter/error_handling/connection_loss_handler_that_fails_over.rb
amq-client-0.9.0.pre1 examples/eventmachine_adapter/error_handling/connection_loss_handler_that_fails_over.rb
amq-client-0.8.7 examples/eventmachine_adapter/error_handling/connection_loss_handler_that_fails_over.rb
amq-client-0.8.7.pre1 examples/eventmachine_adapter/error_handling/connection_loss_handler_that_fails_over.rb
amq-client-0.8.6 examples/eventmachine_adapter/error_handling/connection_loss_handler_that_fails_over.rb
amq-client-0.8.5 examples/eventmachine_adapter/error_handling/connection_loss_handler_that_fails_over.rb
amq-client-0.8.4 examples/eventmachine_adapter/error_handling/connection_loss_handler_that_fails_over.rb
amq-client-0.8.3 examples/eventmachine_adapter/error_handling/connection_loss_handler_that_fails_over.rb
amq-client-0.8.2 examples/eventmachine_adapter/error_handling/connection_loss_handler_that_fails_over.rb
amq-client-0.8.1 examples/eventmachine_adapter/error_handling/connection_loss_handler_that_fails_over.rb
amq-client-0.8.0 examples/eventmachine_adapter/error_handling/connection_loss_handler_that_fails_over.rb