<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -66,21 +66,36 @@ private
   def process_class(current_class)
     
     STDERR.print &quot;\tProcessing #{current_class}\n&quot; if @options.verbose
-    
+
+    states = nil
+    if current_class.respond_to? 'states'
+      states  = current_class.states
+      initial = current_class.initial_state
+      events  = current_class.read_inheritable_attribute(:transition_table)
+    elsif current_class.respond_to? 'aasm_states'
+      states  = current_class.aasm_states.map { |s| s.name }
+      initial = current_class.aasm_initial_state
+      events  = current_class.aasm_events
+    end
+
     # Only interested in acts_as_state_machine models.
-    return unless current_class.respond_to?'states'
-    
+    return if states.nil? || states.empty?
+
     node_attribs = []
     node_type = 'aasm'
-    
-    current_class.states.each do |state_name|
-      state = current_class.read_inheritable_attribute(:states)[state_name]
-      node_shape = (current_class.initial_state === state_name) ? &quot;, peripheries = 2&quot; : &quot;&quot;
+
+    states.each do |state_name|
+      node_shape = (initial === state_name) ? &quot;, peripheries = 2&quot; : &quot;&quot;
       node_attribs &lt;&lt; &quot;#{current_class.name.downcase}_#{state_name} [label=#{state_name} #{node_shape}];&quot;
     end
     @graph.add_node [node_type, current_class.name, node_attribs]
     
-    current_class.read_inheritable_attribute(:transition_table).each do |event_name, event|
+    events.each do |event_name, event|
+      if !event.respond_to?('each')
+        def event.each(&amp;blk)
+          @transitions.each { |t| blk.call(t) }
+        end
+      end
       event.each do |transition|
         @graph.add_edge [
           'event', </diff>
      <filename>lib/railroad/aasm_diagram.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>70b77a233d298356178a10f253f8d201cf5cad40</id>
    </parent>
  </parents>
  <author>
    <name>Bruno Michel</name>
    <email>bmichel@menfin.info</email>
  </author>
  <url>http://github.com/ddollar/railroad/commit/a8815fc3ba8df8db44d078dbf2046ddf99538120</url>
  <id>a8815fc3ba8df8db44d078dbf2046ddf99538120</id>
  <committed-date>2009-03-13T07:00:19-07:00</committed-date>
  <authored-date>2009-03-13T07:00:19-07:00</authored-date>
  <message>Compatibility with rubyist-aasm</message>
  <tree>3a3674787cd436ea7e608f05b8d10e9eb65e175c</tree>
  <committer>
    <name>Bruno Michel</name>
    <email>bmichel@menfin.info</email>
  </committer>
</commit>
