To make it easier for users of this library to
differentiate general exceptions from automaton
exceptions it is quite common to have a root exception
class that libraries use (and derive there exceptions
from); this adds that.
Change-Id: I140cb188f58849ac5caea97ed5a422375b549f6f
Both ironic and taskflow share this same code to convert
their state machines into a pydot graph which then gets
converted into SVG to form:
- http://docs.openstack.org/developer/taskflow/states.html
- http://docs.openstack.org/developer/ironic/dev/states.html
So instead of duplicating it, provide a useful helper function
that both (and others) can share to produce a dot/graphviz pretty
diagram from a state machine.
Change-Id: I218740910163a1ca2587d706edc55852af1c0c74
When using a state machine it is not always desired
to use the runner concept, so to ensure both concepts
are modular split runners off into there own module.
Change-Id: Iac8ce50b0a17468190f3f737663b5b094c324a55