Commit Graph

672 Commits

Author SHA1 Message Date
Janne Valkealahti
3b8fdd0eb1 Bump to boot 2.2.2 2019-12-24 07:33:41 +00:00
Janne Valkealahti
df893a4d6b Fork next development version for 2.2.x 2019-10-21 10:25:47 +01:00
Spring Buildmaster
fc77906f7d Next development version 2019-06-03 06:36:52 +00:00
Janne Valkealahti
7553e5bddc Update changelog 2019-06-03 07:05:36 +01:00
Janne Valkealahti
0a760f5bc0 Relax sync in DefaultStateMachineService
- Now starting machine outside of a sycn block with
  acquire vs. release. This should allow long running
  start in a machine to allow next acquire to work faster.
- Fixes #770
2019-05-25 15:59:40 +01:00
Janne Valkealahti
39dad686b5 Add vscode to gitignore 2019-05-12 15:02:00 +01:00
Spring Operator
885836400f URL Cleanup
- Merge/squash #688
- Exclude all .di, .notation and .uml files whose id's cannot be
  changed.
2019-05-04 13:37:36 +01:00
Spring Operator
426fa163b2 URL Cleanup
- Merge/squash #686 and #694
2019-05-03 15:01:31 +01:00
Janne Valkealahti
98ba6949ff Fix concurrency in DefaultStateMachineExecutor
- Change deferList from LinkedList to ConcurrentLinkedQueue
  to fix ConcurrentModificationException with parallel events.
- Fixes #736
2019-05-03 14:14:14 +01:00
Janne Valkealahti
55b7ff09cf Fix exit logic with fork/join
- In a case where fork/join happens within a substate we should not exit parent state
  which causes cascading stops for forked regions thus causing inconsistent lifecycle
  states within that kind of a machine structure. This for example caused parent submachine
  to end up stopped and all regions running even if some regions ended up into terminal state.
- Fixes #737
2019-05-03 09:50:35 +01:00
Spring Buildmaster
dc72cc4982 Next development version 2019-04-29 11:53:56 +00:00
Janne Valkealahti
b2deb7f4ca Update changelog 2019-04-29 08:10:57 +01:00
Janne Valkealahti
8f6c89d65e Move post state interceptor call later
- This is fixing some issues where anonymous transitions
  are causing post state call to happen too early i.e.
  with a submachine which transits away from it.
- Fixes #734
2019-04-24 07:51:18 +01:00
Janne Valkealahti
6867b5dc9e Fix pseudostate parent with uml machine references
- In a case where uml is drawn with submachine references where
  a pseudostate like choice is defined in a reference, UmlModelParser
  needs to find possible parent by following machine/state references
  to match a state name which references to a this particular machine.
- Actual bug was because pseudostate parent wasn't found it became null,
  thus causing it to be defined in a root machine which then caused
  other cascading errors like nasty loop shown in #729.
- Fixes #729
2019-04-18 17:45:37 +01:00
burak
cdaa9a1400 Add full interceptor methods support for RegionPersistingInterceptorAdapter
- Fixes #726
2019-04-14 07:15:08 +01:00
Jay Bryant
bc1f015c23 Modernized the document production
I updated the build to use spring-doc-resources, which gives us the modern look and feel for the HTML output. Unfortunately, we lose the epub output (until the Asciidoctor team gets that fixed).
2019-04-13 16:56:16 +01:00
Jay Bryant
16a2a5389d Editing pass
I edited for spelling, punctuation, grammar, usage, and corporate voice. I also added leader sentences before all the images and code listings and rewrote for clarity.
2019-04-13 16:55:58 +01:00
Hamid Mortazavi
bd2518cce9 Persisting StateMachineContext for SM with nested regions and Fork/Join
- fixing issue when StateMachineContext is incorrectly persisted for
  SM with nested regions and Fork/Join configuration
- Fixes #723
2019-04-13 16:41:32 +01:00
Jonathon Seah
39ab4a0732 Add backwards compatibility between StateMachineContext serialization of spring-statemachine 2.0.x and 2.1.x
- Add tests between old serialised context(write) and new context(write)
- Fix setting childRefs to empty array instead of null if childRefs
  are not given.
2019-04-13 15:56:43 +01:00
ryenus
02ecb28751 fix wording: must be used +{in} order to 2019-03-20 14:35:47 +00:00
Janne Valkealahti
20c123d36f Remove badge from readme 2019-03-19 17:57:44 +00:00
Janne Valkealahti
069cf207cd Travis, bye bye 2019-03-19 17:55:53 +00:00
Spring Buildmaster
f67ec1380b Next development version 2019-03-19 13:30:47 +00:00
Janne Valkealahti
74c6bc2c46 Update changelog 2019-03-19 11:51:25 +00:00
Janne Valkealahti
40a7230a43 JoinPseudoState not tracking join states correctly
- In JoinPseudoState join states are tracked as list of lists
  where usually inner list contains one item except with region
  having multiple end states.
- Now fixing this case when resetting when previously completed
  region don't clear this list out from outer list.
- Fixes #684
2019-03-19 11:45:41 +00:00
Janne Valkealahti
009d8331fd Fix wrong refs in docs
- Duo to older refactorings fix correct impl refs
  for StateMachineRuntimePersister.
- Fix link to sample.
- Fixes #595
2019-03-19 08:36:25 +00:00
Vincent Privat
675fdf07de Add new method isStateMachineManaged
Determines if the given machine identifier denotes a known managed state machine.
2019-03-17 08:52:23 +00:00
Janne Valkealahti
7df664d306 Add support for @EventHeader annotation
- Add @EventHeader which can be used to bound as single
  event headers instead of all headers @EventHeaders.
- Fixes #638
2019-03-17 08:08:13 +00:00
Janne Valkealahti
53d6ddefa9 Fix StateMachineInterceptor calls
- Due to a regression when new preStateChange method were
  added to pass on root machine, old method did not get
  called anymore. Now calling that as well and fixing
  some other things around it.
- Same changes for postStateChange.
- Fixes #633
2019-03-11 11:17:45 +00:00
Spring Operator
d0a13258cb URL Cleanup
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# Fixed URLs

## Fixed Success
These URLs were fixed successfully.

* http://www.apache.org/licenses/LICENSE-2.0.txt migrated to:
  https://www.apache.org/licenses/LICENSE-2.0.txt ([https](https://www.apache.org/licenses/LICENSE-2.0.txt) result 200).
* http://docs.jboss.org/jbossas/javadoc/4.0.5/connector migrated to:
  https://docs.jboss.org/jbossas/javadoc/4.0.5/connector ([https](https://docs.jboss.org/jbossas/javadoc/4.0.5/connector) result 301).
* http://repo.springsource.org/libs-milestone migrated to:
  https://repo.springsource.org/libs-milestone ([https](https://repo.springsource.org/libs-milestone) result 301).
* http://repo.springsource.org/libs-release migrated to:
  https://repo.springsource.org/libs-release ([https](https://repo.springsource.org/libs-release) result 301).
* http://repo.springsource.org/libs-snapshot migrated to:
  https://repo.springsource.org/libs-snapshot ([https](https://repo.springsource.org/libs-snapshot) result 301).
* http://repo.springsource.org/plugins-release migrated to:
  https://repo.springsource.org/plugins-release ([https](https://repo.springsource.org/plugins-release) result 301).
* http://repo.springsource.org/plugins-snapshot migrated to:
  https://repo.springsource.org/plugins-snapshot ([https](https://repo.springsource.org/plugins-snapshot) result 301).
* http://spring.io/spring-statemachine migrated to:
  https://spring.io/spring-statemachine ([https](https://spring.io/spring-statemachine) result 302).
2019-03-06 00:02:12 -06:00
Spring Buildmaster
4932395b65 Next development version 2019-02-18 08:48:02 +00:00
Janne Valkealahti
d4b0eeedc5 Update changelog 2019-02-18 08:16:49 +00:00
Janne Valkealahti
afcbea2ee9 Upgrade to boot 2.1.3
- Fixes #632
2019-02-18 08:14:32 +00:00
Janne Valkealahti
3e89ce7753 Update changelog 2019-01-29 14:04:20 +00:00
Janne Valkealahti
62b57ebb84 Make equals work in DefaultStateMachineContext
- Adding equals and hashCode methods to DefaultStateMachineContext,
  DefaultExtendedState and ObservableMap.
- Fixes #628
2019-01-26 14:35:29 +00:00
Janne Valkealahti
28301a2464 Upgrade to kryo 4.0.2
- Fixes #625
2019-01-25 14:50:33 +00:00
Janne Valkealahti
5ccc82af1c Re-enable devtools for samples
- Change plugin config not to exclude devtools.
- Add spring.h2.console.enabled=true to samples
  using embedded db.
- Fixes #623
2019-01-20 14:02:05 +00:00
Janne Valkealahti
4feeb196cf Document region changes
- Add new docs for regions changes related to StateMachineContext
  and StateConfigurer.
- Document new datajpamultipersist sample.
- Fixes #621
2019-01-20 13:55:24 +00:00
Janne Valkealahti
d698fc8d11 Allow auto naming for uml pseudostates
- Fixing issue when i.e. choice pseudostate is not named which
  then cause some other internal errors in a model parser.
- As pseudostate need to have a name, we now auto generate with
  pseudostate type name + counter.
- Fixes #591
2019-01-13 16:09:25 +00:00
Janne Valkealahti
b30f0ed0b3 Fix join from orthogonal regions
- Fix a bug where multiple end states in a region failed to complete
  if transition was from a super state which in case of join used to track
  a list of end states. This is now changed to track list of lists and
  we can now track that at least one end state were reached per region.
- Fixes #619
2019-01-13 09:01:20 +00:00
Janne Valkealahti
1a485e4d69 Add end state action test
- Test that entry action for end state is executed.
- Relates to #620
2019-01-12 09:10:33 +00:00
Janne Valkealahti
84ca0aec3e Refactor region handling and persistence
- Make kryo in AbstractKryoStateMachineSerialisationService aware of same classloader
  most likely use in an app. This takes away some of those weird kryo
  errors you see with a web apps.
- Add context references concept to StateMachineContext which can be used
  to store reference id and then individual running machines with regions
  can independently store their states. Whole machine state can then get
  restored more accurately.
- Add new `region(String id)` to StateConfigurer which can be used to set region id.
  This is equivalent as setting region id with json based machine structure where
  you need to define region id's with orthogonal regions are in use.
- Add new datajpamultipersist sample showing running regions and how those are
  persisted to a database.
- Fixes #617
- Fixes #605
- Fixes #615
2019-01-12 08:37:34 +00:00
Janne Valkealahti
c700301767 Update changelog 2018-11-28 09:24:21 +00:00
Janne Valkealahti
2c9d951f99 Upgrade to Spring Boot 2.1.x
- Simple boot 2.1.x upgrade
- Pump up gradle to 4.4 as required
- Allow one test to override bean as that's what it does
- Fixes #602
2018-11-11 07:48:06 +00:00
Spring Buildmaster
efce68bab0 Next development version 2018-11-10 14:45:21 +00:00
Janne Valkealahti
021b906bd3 Update changelog 2018-11-10 13:49:44 +00:00
Alex Pang
b67d632f46 Fix numpad typo in Reference documentation, section B.3.8 2018-10-02 16:17:39 -04:00
Christoph Empl
cb74a35bff Fixed enum comparison in AbstractStatemachine#resetStateMachine
- Add a check for enum class as well so that
  restore doesn't pick a wrong instance.
- Fixes #554
2018-09-26 12:21:45 -04:00
Jonathan Buzzetti
1a797532ca Update sm.adoc 2018-08-22 21:05:55 -03:00
Janne Valkealahti
61e762763f Initial state wrongly entered with entry point
- Fix case where submachine entry via entrypoint wrongly
  caused its initial state to get activated before
  entering transition target leading out from entrypoint.
- Fixes #577
2018-07-17 07:39:48 +01:00