README.rdoc in runcoderun-aasm-2.0.2.2 vs README.rdoc in runcoderun-aasm-2.0.2.3

- old
+ new

@@ -29,11 +29,11 @@ % sudo gem install rubyist-aasm === Building your own gems % rake gem - % sudo gem install pkg/aasm-2.0.2.gem + % sudo gem install pkg/aasm-2.0.1.gem == Simple Example Here's a quick example highlighting some of the features. @@ -42,53 +42,21 @@ include AASM aasm_initial_state :new aasm_state :new - aasm_state :read, :enter => :mark_thread_as_read + aasm_state :read aasm_state :closed aasm_event :view do - # Transitions can take an optional on_transition option to execute some logic when the event is happening. - # It can take a single string or symbol (denoting a method), an array of string or symbols - # (denoting several methods), or an inline lambda - transitions :to => :read, :from => [:new], :on_transition => :set_last_read_at, :guard => :user_authorized + transitions :to => :read, :from => [:new] end aasm_event :close do transitions :to => :closed, :from => [:read, :new] end - - # Update last_read_at timestamp when the conversation is viewed - def set_last_read_at - self.last_read_at = Time.now - end - end - - -== Explanation of transitions - -The current state machine has the following process. If we were to call -<tt>Conversation#view!</tt>, we would get: - - state:new - | - | <-- :exit called on state[new] - | - | <-- :guard called on state[read] - | - | <-- :on_transition called on state[read] - | - | <-- aasm_current_state set to "read" - | - | <-- :success called on state[read] - | - | <-- :enter called on state[read] - | - state:read - = Other Stuff Author:: Scott Barron <scott at elitists dot net> License:: Copyright 2006, 2007, 2008 by Scott Barron.