Sha256: f2684ba074958416afcd666a187f168976ad5c9b67aace2be6d5ed994849d219
Contents?: true
Size: 1.32 KB
Versions: 1
Compression:
Stored size: 1.32 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 reconnector = Proc.new { |client, settings| puts "Asked to reconnect to #{settings[:host]}:#{settings[:port]}" } 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 |client| client.on_tcp_connection_loss do |cl, settings| puts "tcp_connection_loss handler kicks in" cl.reconnect(1) end show_stopper = Proc.new { client.disconnect { puts "Disconnected. Exiting…" EM.stop } } Signal.trap "INT", show_stopper Signal.trap "TERM", 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
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
amq-client-0.7.0.alpha8 | examples/eventmachine_adapter/connection_loss_handler.rb |