- Classic case of using == vs. equals if Strings are involved.
- In DefaultStateMachineExecutor change event comparison
from == to equals.
- Tests using enums naturally work, but some tests using Strings
had a wrong checks.
- Fixes#253
- Change so that machine id used in StateMachineFactory
can use same id in StateMachineModelFactory which now
extended with method build(String machineId).
- Polish repo and jpa classes.
- Fixes#255
- Initial infra for config abstraction with
Spring Data Repositories via RepositoryStateMachineModelFactory.
- Initial jpa impl.
- Initial jpa sample atop of H2 DB.
- Relates to #250
- When StateMachineModelFactory is passed into config
it is now used everytime when machine is build which
allows model factory to get a fresh model from its
own storage if needed.
- Shuffled stuff around in machine factory base classes
to call StateMachineModelFactory only once during a machine
build operation.
- Other tweaks and a polish.
- Fixes#254
- Add missing creating of a local transition
- Fix logic how entry/exit is not called with local
- Add tests comparing functionality with external
- Fixes#248
- Fixes#249
- Squash commits with below entries
- Add factory with a given uuid
- Fix compile error, replace spaces by tabs and clean imports
- Make more sense to swap uuid and stringId
- Fixes#241
- Add classes directory to be ignored by git
- Doesn't yet handle actions defined for entry,
exit or do behariour.
- Docs to come when features around error actions
are fully implemented.
- Fixes#240
- AbstractState now extends LifecycleObjectSupport getting
access to TaskScheduler.
- Modify all configs so that we can have a cancellable Action
which is executed after state is entered and which is
cancelled(if running) when state is exited.
- Fixes#239
- Enhance config model so that a state can be
configured as a submachine or a factory.
- With uml it's possible to put multiple machines
into one xml(one needs to be a root machine) and
in a same way, define state as a separate machine.
- JavaConfig vs. uml config differs in a bit where
latter is passing raw model data into pojo config and
JavaConfig either full machine or machine factory.
- Fixes#121
- Refactor how join is handled
- Add new StateListener for listening entry/exit per State.
- Transition is now passed to next guy from a join state.
- A lot of changes in core machine/factory/executor to support
this new join handling.
- Fixes#235
- Fixes#237
- Enhance state context to have more info about target
states which is needed to make a proper decision if
region needs to be started.
- Fix RegionState to not to start if it looks like
direct entry will be done later.
- Relates to #221