- Add new repository model for storing StateMachineContext
via a new StateMachineRepository.
- New StateMachineRuntimePersister interface to abstract needed
functionality to do a runtime machine persistence.
- As runtime persistence, as of now, is done via interceptors, define
JpaRepositoryStateMachinePersist and JpaPersistingStateMachineInterceptor
to define StateMachineRuntimePersister logic.
- Add new datajpapersist sample demonstrating new concepts.
- Keep tests related to jpa as there's not redis/mongo integration
implemented in this first iteration.
- As this is going to be WIP until features around this issues
are completed, docs, etc are not yet added. Also, interfaces and impls
are subject to change during a process.
- Relates to #423
- Relates to #426
- Relates to #427
- There is a newer mongo client with changed behaviour
as junit rule skipping tests if mongo is not running
waits 30s for a connect failure. Add new server
select timeout.
- Fixes#314
- Fix RedisRepositoryState and MongoDbStateRepository not to use
null for machineid in any case as contract is that empty machineid
is always empty not null.
- This issue was found when adding initial tck config tests, thus
this commit also adds initial tck tests.
- Fixes#279
- Relates to #278
- 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
- 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
- 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
- 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