...
| NotExistant | StartedPristine | StartedNormal |
---|
| action / next state | action / next state | action : next state |
PRISTINE | NotExistant.create / NotExistant NotExistant.cleanup / NotExistant NotExistant.startup / StartedPristine StartedPristine.test | invokeTest StartedPristine.shutdown / StartedPristine StartedPristine.cleanup / StartedPristine StartedPristine.destroy / NonExistant | |
NOSERVICE | | | |
ROLLBACK | NotExistant.create / NotExistant NotExistant.cleanup / NotExistant NotExistant.startup / StartedPristine StartedPristine.test | tag invokeTest / StartedNormal StartedNormal.revert / StartedNormal | tag invokeTest / StartedNormal StartedNormal.revert / StartedNormal |
RESTART | NotExistant.create / NotExistant NotExistant.startup / StartedNormal StartedNormal.test | | invokeTest StartedNormal.shutdown / StartedNormal StartedNormal.startup / StartedNormal |
CUMULATIVE | NotExistant.create / NotExistant NotExistant.startup / StartedNormal StartedNormal.test | | invokeTest |
Now let's mix the states and the actions together:
Pristine
ROLLBACK
RESTART
CUMULATIVE
I would suggest a slightly different state diagram :Image Removed Appendix
Appendix A: System Wide SetupMode Default
...