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
2018-11-28 09:24:21 +00:00
2018-02-11 14:20:13 +02:00
2018-02-10 16:16:49 +02:00
2016-11-12 14:17:04 +00:00
2018-11-11 07:48:06 +00:00
2016-02-02 16:27:23 +00:00
2018-11-11 07:48:06 +00:00
2017-08-20 09:42:48 +01:00
2017-04-06 13:34:56 +01:00
2015-02-04 18:17:50 +00:00
2018-03-06 18:03:15 +00:00

= Spring Statemachine

image:https://badges.gitter.im/spring-projects/spring-statemachine.svg[link="https://gitter.im/spring-projects/spring-statemachine?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge"]

image:https://build.spring.io/plugins/servlet/wittified/build-status/SDG-MAS[Bamboo
Build Status, link=https://build.spring.io/browse/SDG-MAS] (master)
image:https://build.spring.io/plugins/servlet/wittified/build-status/SDG-B12X[Bamboo
Build Status, link=https://build.spring.io/browse/SDG-B12X] (1.2.x)
image:https://build.spring.io/plugins/servlet/wittified/build-status/SDG-B11X[Bamboo
Build Status, link=https://build.spring.io/browse/SDG-B11X] (1.1.x)
image:https://api.travis-ci.org/spring-projects/spring-statemachine.svg?branch=master[Travis
CI Build Status,
link=https://travis-ci.org/spring-projects/spring-statemachine]
(Travis)

The Spring Statemachine project aims to provide a common infrastructure 
to work with state machine concepts in Spring applications.

It is advised to check the actual state of this project by referring to 
the latest releases found on
http://projects.spring.io/spring-statemachine/[Spring
Statemachine Project Page].
The git repo master branch may be relatively unstable when new features are
added into the source code.

== Code of Conduct
This project adheres to the Contributor Covenant
link:CODE_OF_CONDUCT.adoc[code of conduct].
By participating, you  are expected to uphold this code. Please report
unacceptable behavior to spring-code-of-conduct@pivotal.io.

== Downloading Artifacts
See
https://github.com/spring-projects/spring-framework/wiki/Downloading-Spring-artifacts[downloading
Spring artifacts] for Maven repository information.

== Documentation
http://projects.spring.io/spring-statemachine/[The Spring
Statemachine Project Page] contains links to currently available
JavaDoc and Reference Documentation for particular releases and
versions.

== Samples
Samples can be found under `spring-statemachine-samples`. Check
the reference documentation more about what those do.

== Building from Source
Spring Statemachine uses a http://gradle.org[Gradle]-based build
system.
In the instructions below, http://vimeo.com/34436402[`./gradlew`] is
invoked from the root of the source tree and serves as
a cross-platform, self-contained bootstrap mechanism for the build.

=== Prerequisites
http://help.github.com/set-up-git-redirect[Git] and the
http://www.oracle.com/technetwork/java/javase/downloads[JDK8 build].

Be sure that your `JAVA_HOME` environment variable points to the
`jdk` folder extracted from the JDK download. While build requires
`JDK8`, created artifacts are `JDK7` compatible.

=== Check out sources
[indent=0]
----
git clone git@github.com:spring-projects/spring-statemachine.git
----

=== Install all spring-\* jars into your local Maven cache
[indent=0]
----
./gradlew install
----

=== Compile and test; build all jars, distribution zips, and docs
[indent=0]
----
./gradlew build
----

Discover more commands with `./gradlew tasks`.
See also the
https://github.com/spring-projects/spring-framework/wiki/Gradle-build-and-release-FAQ[Gradle
build and release FAQ].

== Contributing
http://help.github.com/send-pull-requests[Pull requests] are welcome;
see the
https://github.com/spring-projects/spring-statemachine/blob/master/CONTRIBUTING.md[contributor
guidelines] for details.

If you want to contribute, search github tickets marked with `help
wanted` or come up with your own ticket but please first open a ticket
to discuss in order to avoid duplicate work on a topic or issue. Nobody 
wants to see the same work done twice!

== License
Spring Statemachine is Open Source software released under the
http://www.apache.org/licenses/LICENSE-2.0.html[Apache 2.0 license].

Description
No description provided
Readme 19 MiB
Languages
Java 56%
JavaScript 19.3%
HTML 12.5%
Less 8.2%
CSS 1.3%
Other 2.7%