Commit Graph

423 Commits

Author SHA1 Message Date
Janne Valkealahti
a4c8ddcbdd Add support for end states
- Adding end state construction
- Relates to #262
2016-10-18 09:38:12 +01:00
Janne Valkealahti
36a87493f2 Add support for join/fork states
- Adding join/fork state construction
- Relates to #262
2016-10-18 08:11:10 +01:00
Janne Valkealahti
79f0280990 Add monitoring subsystem
- This is a preliminary work.
- New monitoring and tracing conceps around StateMachineMonitor.
- Adds hooks internally to better calculate transition times.
- Add new annotation configurer for monitors.
- New boot module which autoconfigures monitoring for boot's metrics
  and trancing repos.
- New monitoring sample.
- Relates to #149
2016-10-18 06:54:47 +01:00
Janne Valkealahti
543c906c35 Add support for entry/exit states
- Adding entry/exit state construction
- Relates to #262
2016-10-11 15:43:02 +01:00
Janne Valkealahti
f65632f7d8 Polish 2016-10-11 10:53:53 +01:00
Janne Valkealahti
bd6696920f Add support for junction states
- Adding junction state construction and
  guard resolving.
- Relates to #262
2016-10-11 10:50:08 +01:00
Janne Valkealahti
1beb0e6860 Fix datajpa sample
- Relates to #262
2016-10-10 20:13:41 +01:00
Janne Valkealahti
8e219cffcc Refactor repository actions/guards
- Make RepositoryGuard and RepositoryAction work exactly
  like RepositoryState what comes for class structure
  and how things are saved and used via populator.
- Relates to #262
2016-10-10 20:00:48 +01:00
Janne Valkealahti
de3a9341de Add support for choice states
- Adding choice state construction and
  guard resolving.
- Relates to #262
2016-10-10 08:54:28 +01:00
Janne Valkealahti
d06d45580a Add support for regions
- Add region id to RepositoryState and hook it
  via RepositoryStateMachineModelFactory.
- Relates to #262
2016-10-09 21:22:05 +01:00
Janne Valkealahti
a6d7040199 Add support for history states
- Add PseudoStateKind to RepositoryState.
- Hook shallow and deep historys in
  RepositoryStateMachineModelFactory
- Relates to #262
2016-10-09 17:38:35 +01:00
Janne Valkealahti
3cc33a6fef Fix parent state ref
- For RepositoryState, its parent state is now
  defined as RepositoryState as well allowing
  to reference from a json files.
- Relates to #262
2016-10-09 17:04:36 +01:00
Janne Valkealahti
c7951c5001 Use references in RepositoryTransition
- Refactor so that we can create RepositoryState in one place
  and then reference to it from JpaRepositoryTransition impls.
- New common top class BaseRepositoryEntity for entities
- Change RepositoryState and RepositoryTransition to be abstract
  classes instead of interfaces.
- New custom StateMachineJackson2RepositoryPopulatorFactoryBean and
  StateMachineJackson2ResourceReader handling json refs.
- Relates to #262
2016-10-09 10:21:22 +01:00
Janne Valkealahti
c016fd6e06 Add repository config guards
- Add guard to RepositoryTransition
- New GuardRepository.
- Relates to #262
2016-10-02 16:28:32 +01:00
Janne Valkealahti
ddf81c78a0 Add repository config transition type
- Add transition type to RepositoryTransition
- Relates to #262
2016-10-02 15:30:01 +01:00
Janne Valkealahti
0b6f67ece4 Add repository config actions
- Add action to RepositoryTransition, state/entry/exit
  actions to RepositoryState.
- New ActionsRepository.
- Relates to #262
2016-10-02 14:42:12 +01:00
Janne Valkealahti
de556f0d54 Add repository config substates
- Add parent state to RepositoryState
  and use it in model factory.
- Relates to #262
2016-10-01 09:34:31 +01:00
Janne Valkealahti
27d67bfd47 Fix StateMachineHandler method caching
- Adding ApplicationListener so that we can
  consult time of last ContextRefreshedEvent and
  rebuild a cache of StateMachineHandler methods.
- This implementation is a bit naive as we speak but
  work for #224 will need to add better concept to work
  outside of app context.
- Fixes #232
2016-09-30 17:16:53 +01:00
Janne Valkealahti
07b3b8ddf7 Updage to tomcat 8.5.5
- Old version caused failures when running
  in sts due to mixed deps.
- Fixes #256
2016-09-30 09:22:23 +01:00
Janne Valkealahti
3cc626c947 Upgrade to Boot 1.4.1
- Align related spring train deps
- Modify some other deps to get correct versions
- Some testing changes as boot 1.4.1 shuffled some
  test stuff around.
- Fixed deprecations with newer boot and framework
- Fixes #256
2016-09-30 07:55:12 +01:00
Janne Valkealahti
638e3e21ff Update changelog for 1.2.0.M1 2016-09-28 09:39:36 +01:00
Janne Valkealahti
99460531b4 Fix region persist
- Correctly set main persisted state id into
  StateMachineContext if state is orthogonal.
- Fixes #242
2016-09-28 09:34:13 +01:00
Janne Valkealahti
6c00222f63 Update changelog for 1.2.0.M1 2016-09-27 09:46:12 +01:00
Janne Valkealahti
0f3ffa1876 Transition error action not used per defined action
- Revert some previous changes order to define transition
  error action logic in a different place. Now basically
  wrapping try/catch in a dedicated action order to have
  separate error action per action as is expected by a config
  SPI.
- Added some tests.
- Added docs for transition error actions.
- Relates to #238
- Fixes #259
2016-09-27 09:21:30 +01:00
Janne Valkealahti
8fc7592404 Fix wrong event object comparison
- 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
2016-09-26 10:29:01 +01:00
Janne Valkealahti
29f67fdbf8 Add docs for new in 1.2
- Relates to #238
2016-09-25 17:43:37 +01:00
Janne Valkealahti
fe8c120bd4 Add docs for repository config
- Docs for base usage, jpa and jpa sample.
- Relates to #238
2016-09-25 17:02:11 +01:00
Janne Valkealahti
9c20ddd051 Fix state action tests
- Tests should now be more reliable as trying to
  make sure actions run before testing further.
- Fixes #257
2016-09-25 11:20:20 +01:00
Janne Valkealahti
49bae38eb3 Hook StateMachineModelFactory and StateMachineFactory together
- 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
2016-09-25 10:08:57 +01:00
Janne Valkealahti
842442520c Align Spring Data version
- Before we get a proper central support
  for version, align data version with boot.
- Relates to #256
2016-09-25 10:07:40 +01:00
Janne Valkealahti
9f9acd3567 Add docs for state actions
- Relates to #238
2016-09-24 15:55:06 +01:00
Janne Valkealahti
51c9e72961 Update docs for StateMachineComponentResolver
- Relates to #238
2016-09-24 15:19:27 +01:00
Janne Valkealahti
3a4aab647e Update docs for join state
- Relates to #238
2016-09-24 11:31:32 +01:00
Janne Valkealahti
a22ac86277 Add docs for submachine ref
- Relates to #238
2016-09-24 09:59:31 +01:00
Janne Valkealahti
0d329d9e57 Add initial infra for config repository
- Initial infra for config abstraction with
  Spring Data Repositories via RepositoryStateMachineModelFactory.
- Initial jpa impl.
- Initial jpa sample atop of H2 DB.
- Relates to #250
2016-09-23 17:26:39 +01:00
Janne Valkealahti
693d7b8951 Fix StateMachineModelFactory usage
- 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
2016-09-23 15:44:13 +01:00
Nicola Cammillini
876bdc9671 Typos and some minor fixes in reference guide introduction. 2016-09-19 01:16:14 +02:00
Nicola Cammillini
2b5aeffd2d Fixed some typos in reference guide preface. 2016-09-18 17:21:39 +02:00
Janne Valkealahti
25e190c57d Fix local transition logic
- 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
2016-09-11 10:25:05 +01:00
Christophe
e6f10b60f5 Ability to set UUID for StateMachine
- 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
2016-09-09 15:42:19 +01:00
Christophe
4c34e46ccf Add capabilities to provide ActionError in Transition
- 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
2016-08-30 20:54:56 +01:00
Janne Valkealahti
062bc9aa0e Support state activity
- 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
2016-08-14 10:06:33 +01:00
Janne Valkealahti
c387979d75 Support for UML Sub State Machines
- 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
2016-08-13 07:19:21 +01:00
Janne Valkealahti
049f811f56 Refactor join handling
- 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
2016-08-11 08:58:34 +01:00
Janne Valkealahti
7b39ce0912 Next major development version 1.2.0.BUILD-SNAPSHOT
- Branch 1.1.x is now for maintenance and master is
  for new development.
2016-08-01 06:25:28 +01:00
Janne Valkealahti
c4e106001e Next development version. 2016-05-23 18:11:06 +01:00
Janne Valkealahti
e0b0f86d41 Update cloud cluster version 2016-05-23 15:44:24 +01:00
Janne Valkealahti
dd1f05b7d0 Restore gradle.properties 2016-05-23 15:32:41 +01:00
Spring Buildmaster
fc98be0ad8 Next development version. 2016-05-23 14:11:00 +00:00
Janne Valkealahti
55071c7471 Update docs
- Relates to #219
2016-05-22 08:34:46 +01:00