aasm callback order?

Hello!

Sometime ago I ran across a webpage where someone had identified the full callback sequence for an object lifecycle including AASM with it's :enter and :exit and whatnot callbacks. Unfortunately, I can't find it and searches don't seem to help.

Does anyone have a reference to a page that shows the callback sequence with Acts As State Machine (the gem)?

I think there was a Wiki page on github with this, but I can't find it. Grrr.

Thanks!

-Danimal

Danimal,

Usually the best place to look is the actual source itself. http://github.com/omghax/acts_as_state_machine/tree/master/lib/acts_as_state_machine.rb

Looks like this is what you are looking for :entering :entered :exited

The entering and exiting methods call the @enter and @exit options respectively which are passed in during instantiation.

Cheers

Robert,

I appreciate the fast response. Actually, though, there was a page somewhere that showed the FULL lifecycle of a ruby model that goes through before_save, validation, after_save, and all that along with the AASM transitions when the bang (!) character is included and when enters, exits, guards, transitions and such are used.

I can practically visualize the page I remember... it was a listing of the order of each of these "steps" (callbacks and such).

In other words, it was very similar to the first part of this: http://api.rubyonrails.org/classes/ActiveRecord/Callbacks.html but with the AASM hooks included.

It's just bugging me because I thought I bookmarked the page and I can't find my bookmark. *sigh*

-Danimal

Ahhh I see. Sorry, Im not familiar with that wiki you are talking about. However I can solve your bookmarking problem if you happen to use Firefox http://www.foxmarks.com/ :slight_smile:

Good luck finding that wiki.

Thank you, Robert! I'll have to try out foxmarks. I suspect that the problem was PEBKAC... i.e. I probably thought "that's a cool page, I should bookmark it" and for whatever reason did not. Heh.

Anyway... anyone else have an inkling about the page/wiki that I'm talking about? Or was it just in a dream?

:slight_smile:

-Danimal

Is this it?

http://didcoe.id.au/archives/finite-state-machines-in-rails

Dusty,

That may very well be it. I thought it was a longer list, but maybe I'm just remembering the two lists (new vs. existing) and somehow lumping them together.

Thanks for the reference, though! :slight_smile:

-Danimal

This is a bit more verbose.

http://blog.methodmissing.com/2006/11/16/beyond-callbacks-for-complex-model-lifecycles/