- Remove most of a static class modifiers from docs
to make things easier if doing copy/paste. Not
all can be removed because some spring inner
config classes has to be static.
- Fixes#123
- Add logging of internal transitions which makes things
a bit more clear with showcase sample.
- Update showcase docs with clarification of use of
nested states.
- Fix so that we can annotate @Configuration class with
@EnableStateMachine assuming config class is not extended
from StateMachineConfigurer(aka config adapter).
- Allows to create machine via a builder as @Bean still properly
registring rest of a facilities via @EnableStateMachine.
- Polish other tests by removing registering StateMachineEventPublisherConfiguration
as it's added via @EnableStateMachine.
- Change AbstractImportingAnnotationConfiguration so that it will not try
to register bean if implementation returned null definition. Meaning
StateMachineConfiguration detected that @EnableStateMachine was placed
on a non-adapter class.
- Fixes#120
- Throw BeanDefinitionStoreException in favor of NPE if
@EnableStateMachine or @EnableStateMachineFactory is used
without a configurer meaning user is missing proper config
adapter like EnumStateMachineConfigurerAdapter.
- Polish StateMachineConfiguration and StateMachineFactoryConfiguration
by removing wrong typed refs to Enum.
- Fixes#119
- Fixing internal handling of multiple EnableStateMachineFactory
adapters which were wrongly mixed up during internal
config build.
- Techically we can have multiple adapters building same state machine and
same factory if carefully crafted. However a check was missing in
StateMachineFactoryConfiguration to only attempt configure builder
for exact attached adapter, thus causing same internal builder called twice
which then failed because build was already called. This was originally done
for StateMachineConfiguration but missed for StateMachineFactoryConfiguration.
- Fixes#117
- Fix bug where multiple machines and beans with @WithStateMachine
didn't properly separate calling methods with @OnTransition.
- Some polish
- Fixes#116
- With a combination of a task executor using a thread pool,
substates with triggerless transitions and actions may fail to
properly pass on message headers.
- Move queue message outside of loop on a class level which
should give next loop a change to see previous queued message
which is then used from triggerless transitions.
- Relates to #100
- Change DefaultStateMachineExecutor to keep event message
around and then loop triggerless transitions order to
pass that message to whole chain.
- Fixes#100
- Enhancing internal model so that event and its headers can
be passed into action if it's used in an initial sub-state
when transition target its super state.
- Added tests and better docs.
- Fixes#99.