Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Easy FSM Add-on: Makes making Finite State Machines with go-statemachine easier #4

Merged
merged 20 commits into from
Feb 26, 2020

Commits on Feb 24, 2020

  1. feat(fsm): add finite state machine module

    add module for constructing statehandlers as simple finite state machines, to support readable
    definitions, type checking, and testing
    hannahhoward committed Feb 24, 2020
    Configuration menu
    Copy the full SHA
    5ac8748 View commit details
    Browse the repository at this point in the history
  2. feat(fsm): add synchronous event handling

    Add the ability ot dispatch a synchronous event to the state machine and wait for a result
    hannahhoward committed Feb 24, 2020
    Configuration menu
    Copy the full SHA
    da5aba1 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b253c92 View commit details
    Browse the repository at this point in the history
  4. refactor(fsm): switch to transition map

    Use a full transition map for events to make them more flexible
    hannahhoward committed Feb 24, 2020
    Configuration menu
    Copy the full SHA
    b1ed3ec View commit details
    Browse the repository at this point in the history
  5. feat(fsm): support fallback transitions

    support a transition that applies to any source state
    hannahhoward committed Feb 24, 2020
    Configuration menu
    Copy the full SHA
    971ff7d View commit details
    Browse the repository at this point in the history
  6. feat(fsm): add identifier getter

    Add ability to get identifier for this instance of the state machine
    hannahhoward committed Feb 24, 2020
    Configuration menu
    Copy the full SHA
    4f04d27 View commit details
    Browse the repository at this point in the history
  7. feat(fsm): add world building by identifier

    Allow each instance of fsm to get a unique instance of outside dependencies
    hannahhoward committed Feb 24, 2020
    Configuration menu
    Copy the full SHA
    859924d View commit details
    Browse the repository at this point in the history
  8. refactor(fsm): switch to notifier

    remove universal events, add notifications, add params struct, make event name an interface
    hannahhoward committed Feb 24, 2020
    Configuration menu
    Copy the full SHA
    050f1af View commit details
    Browse the repository at this point in the history
  9. Revert "feat(fsm): add identifier getter"

    This reverts commit 206d210.
    hannahhoward committed Feb 24, 2020
    Configuration menu
    Copy the full SHA
    88e6fbf View commit details
    Browse the repository at this point in the history
  10. refactor(fsm): revert to single environment

    remove world by indentifier for simplicity, rename world to environment
    hannahhoward committed Feb 24, 2020
    Configuration menu
    Copy the full SHA
    532cb72 View commit details
    Browse the repository at this point in the history
  11. feat(fsm): more informative statehandler errors

    add more data about why state handlers fail
    hannahhoward committed Feb 24, 2020
    Configuration menu
    Copy the full SHA
    6733fe9 View commit details
    Browse the repository at this point in the history
  12. feat(fsm): add begin function to group

    add begin function from base group to fsm group
    hannahhoward committed Feb 24, 2020
    Configuration menu
    Copy the full SHA
    4545331 View commit details
    Browse the repository at this point in the history
  13. refactor(fsm): builder interfaces

    simplify builders for state, extract state machine from event machine
    hannahhoward committed Feb 24, 2020
    Configuration menu
    Copy the full SHA
    85461c4 View commit details
    Browse the repository at this point in the history
  14. feat(fsm): add test context util

    adds a utility class for testing state machines by allowing contexts to actually be replayed with a
    given event machine
    hannahhoward committed Feb 24, 2020
    Configuration menu
    Copy the full SHA
    a9094aa View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    8c5b822 View commit details
    Browse the repository at this point in the history
  16. rerun ci

    hannahhoward committed Feb 24, 2020
    Configuration menu
    Copy the full SHA
    d855d86 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    054b5d1 View commit details
    Browse the repository at this point in the history

Commits on Feb 25, 2020

  1. refactor(fsm): rename applyTransition to action

    Rename applyTransition to action to match actual FSM concept it represents
    hannahhoward committed Feb 25, 2020
    Configuration menu
    Copy the full SHA
    c91c30c View commit details
    Browse the repository at this point in the history

Commits on Feb 26, 2020

  1. refactor(fsm): a few more renames

    rename event -> trigger with context
    rename eventMachine -> eventProcessor
    rename eventProcessor.Event -> eventProcessor.Generate
    rename stateHandler -> stateEntryFunc
    hannahhoward committed Feb 26, 2020
    Configuration menu
    Copy the full SHA
    a2059e0 View commit details
    Browse the repository at this point in the history
  2. feat(fsm): add err tracking to eventbuilder

    track various DSL errors in event builder so it fails when used
    hannahhoward committed Feb 26, 2020
    Configuration menu
    Copy the full SHA
    fe83f89 View commit details
    Browse the repository at this point in the history