<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -75,11 +75,12 @@ module AMQP
       log 'connected'
       # @on_disconnect = proc{ raise Error, 'Disconnected from server' }
       unless @closing
-        @on_disconnect = method(:reconnect)
+        @on_disconnect = method(:disconnected)
         @reconnecting = false
       end
 
       @connected = true
+      @connection_status.call(:connected) if @connection_status
 
       @buf = Buffer.new
       send_data HEADER
@@ -188,8 +189,17 @@ module AMQP
       EM.connect opts[:host], opts[:port], self, opts
     end
 
+    def connection_status &amp;blk
+      @connection_status = blk
+    end
+
     private
 
+    def disconnected
+      @connection_status.call(:disconnected) if @connection_status
+      reconnect
+    end
+
     def log *args
       return unless @settings[:logging] or AMQP.logging
       require 'pp'</diff>
      <filename>lib/amqp/client.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>bfe1fb60a2fd932373b1a8aa43d9a93b59335706</id>
    </parent>
  </parents>
  <author>
    <name>Aman Gupta</name>
    <email>aman@tmm1.net</email>
  </author>
  <url>http://github.com/tmm1/amqp/commit/06c50d9c8f1fd129a06426f54d0b45e0703738ec</url>
  <id>06c50d9c8f1fd129a06426f54d0b45e0703738ec</id>
  <committed-date>2009-05-16T19:21:06-07:00</committed-date>
  <authored-date>2009-05-16T19:21:06-07:00</authored-date>
  <message>Add Client#connection_status</message>
  <tree>5df3b89d62757999aebbf83e91248a580e103bc1</tree>
  <committer>
    <name>Aman Gupta</name>
    <email>aman@tmm1.net</email>
  </committer>
</commit>
