All Classes and Interfaces
Class
Description
A base
AnnotationBuilder
that ensures the object being built is only
built one time.Base implementation of @
Configuration
class.Base implementation for all composite items.
Base implementation for all composite listeners.
A base
AnnotationBuilder
that allows AnnotationConfigurer
s to be
applied to it.Base class providing common functionality for using Spring expression language.
Base class for
Configuration
which works on a bean definition level
relying on ImportBeanDefinitionRegistrar
phase to register beans.AbstractImportingAnnotationConfiguration.BeanDelegatingFactoryBean<T,B extends AnnotationBuilder<O>,O>
Abstract base implementation for
StateMachineSerialisationService
using kryo.Base class for
StateMachineInterceptor
persisting StateMachineContext
s.AbstractPersistStateMachineHandler
is a base recipe which can be used to
handle a state change of an arbitrary entity in a persistent storage.The listener interface for receiving persistStateChange events.
Base implementation of a
PseudoState
.Base implementation of a
State
having a single state identifier.Base implementation of a
State
.Base implementation of a
StateMachine
loosely modelled from UML state
machine.Adapter base implementation for
StateMachineConfigurer
.Base
StateMachineFactory
implementation building StateMachine
s.Base helper class for state machine tests.
Base helper class for state machine tests.
Base implementation of a
StateMachineModelFactory
providing
some common grounds for various implementations.Base implementation of a
StateMachineMonitor
.Base implementation of a
StateMachinePersister
easing persist
and restore operations with a StateMachinePersist
.Base implementation of a
Transition
.Base class for transition configurers.
Generic strategy interface used by a state machine to respond
events by executing an
Action
with a StateContext
.ActionListener
for various action events.Generic
Repository
interface for actions.Action Utilities.
A MethodFilter implementation that enables the following:
matching on method name, if available
exclusion of void-returning methods if 'requiresReply' is true
limiting to annotated methods if at least one is present
Interface for building an
Object
.Allows for configuring an
AnnotationBuilder
.A base class for
AnnotationConfigurer
that allows subclasses to only
implement the methods they are interested in.Interface for wrapping a return type from
AnnotationConfigurer
into AnnotationBuilder
.Generic base class for all entity classes.
StateMachineModelVerifier
which verifies a base model structure
like existence of initial states, etc.Implementation of a
StateMachineMonitor
which converts monitoring
events and bridges those into supported format handled by Spring Boot's
tracing and metrics frameworks.A simple data object keeping choice related configs in a same place.
Choice implementation of a
PseudoState
.TransitionConfigurer
interface for configuring Transition
from a choice pseudo state.Implementation of a
ActionListener
backed by a multiple listeners.Default
EnsembleListener
dispatcher.Composite state listener.
Default
StateMachineListener
dispatcher.Implementation of a
StateMachineModelVerifier
backed by a multiple verifiers.Implementation of a
StateMachineMonitor
backed by a multiple monitors.Default
TriggerListener
dispatcher.Base
ConfigConfigurer
interface for configuring generic config.Configuration object used to keep things together in
StateMachineConfigurationBuilder
.Default implementation of a
ChoiceTransitionConfigurer
.Default implementation of a
ConfigurationConfigurer
.Default implementation of a
DistributedStateMachineConfigurer
.Default implementation of a
EntryTransitionConfigurer
.The default implementation of
SecurityExpressionHandler
which uses a
EventSecurityExpressionRoot
.Default implementation of a
ExitTransitionConfigurer
.Default implementation of a
ExtendedState
.Default implementation of a
ExternalTransitionConfigurer
.Default implementation of a
ForkTransitionConfigurer
.Default implementation of a
HistoryTransitionConfigurer
.Default implementation of a
InternalTransitionConfigurer
.Default implementation of a
JoinTransitionConfigurer
.Default implementation of a
JunctionTransitionConfigurer
.Default implementation of a
LocalTransitionConfigurer
.Default implementation of a
ModelConfigurer
.Default implementation of a
MonitoringConfigurer
.Default implementation of a
PersistenceConfigurer
.AnnotationConfigurer
which knows how to handle configuring a Properties
.Default implementation of a
PseudoState
which is a simple passthrough
via AbstractPseudoState
.Default implementation of a
PseudoStateContext
.AnnotationConfigurer
which knows how to handle
configuring a Resource
s.Default implementation of a
SecurityConfigurer
.Default implementation of a
StateConfigurer
.Default implementation of a
StateContext
.Default implementation of a
StateMachineComponentResolver
which resolves
from a BeanFactory
if given or from a manually registered actions and guards.Default implementation of a
StateMachineContext
.Default implementation of
StateMachineEventPublisher
.Default implementation of a
StateMachineModel
.Default implementation of a
StateMachineModelVerifier
.Default implementation of a
StateMachinePersister
.Default implementation of a
StateMachineService
.Default implementation of a
VerifierConfigurer
.Action
which is used to wrap execution of an Action
so that only a StateMachine
considered to be a leader in an
StateMachineEnsemble
will do the execution.DistributedStateMachine
is wrapping a real StateMachine
and works
together with a StateMachineEnsemble
order to provide a distributed state
machine.Base
DistributedStateMachineConfigurer
interface for configuring
distributed state machine.Base annotation used in JavaConfig order to enable
some base functionality.
Annotation which imports @
Configuration
s related to
building state machines.Annotation which imports @
Configuration
s related to
building state machine factories.Annotation which enables features needed for
WithStateMachine
.EnsembleListener
for various ensemble events.Adapter implementation of
EnsembleListener
implementing all
methods which extended implementation can override.A simple data object keeping entrypoint related configs in a same place.
Entrypoint implementation of a
PseudoState
.TransitionConfigurer
interface for configuring Transition
with an entrypoint pseudo state.A
State
implementation where state and event is enum based.Base implementation of a
StateMachineConfigurer
using enums.Voter which handles
Message
authorisation decisions.Annotation which indicates that a method parameter should be bound to a event header.
Annotation which indicates that a method parameter should be bound to the
event headers of a message.
The
SecurityExpressionRoot
used for Message
expressions.Votes if any
ConfigAttribute.getAttribute()
starts with a prefix indicating
that it is an event.A simple data object keeping exitpoint related configs in a same place.
Exitpoint implementation of a
PseudoState
.TransitionConfigurer
interface for configuring Transition
with an exitpoint pseudo state.Utility class with static methods for helping with establishing environments for
SpEL expressions.
Extended states are used to supplement state machine with a variables.
The listener interface for receiving extended state change events.
TransitionConfigurer
interface for configuring external Transition
s.FactoryPersistStateMachineHandler
is a recipe can be used to
handle a state change of an arbitrary entity in a persistent storage.A
MethodFilter
implementation that will always return the same Method
instance within a single-element list if it is present in the candidate list.Fork implementation of a
PseudoState
.TransitionConfigurer
interface for configuring Transition
from a fork pseudo state.GenericPersistStateMachineHandler
is a recipe which can be used to
handle a state change of an arbitrary entity in a persistent storage.Guard
s are typically considered as guard conditions which affect the
behaviour of a state machine by enabling actions or transitions only when they
evaluate to TRUE
and disabling them when they evaluate to
FALSE
.Generic
Repository
interface for guards.Guard Utilities.
A simple data object keeping history related configs in a same place.
History implementation of a
PseudoState
.TransitionConfigurer
interface for configuring Transition
with default history state.Transition
used during a state machine start.In-memory implementation of
StateMachineTraceRepository
.TransitionConfigurer
interface for configuring internal Transition
s.Join implementation of a
PseudoState
.TransitionConfigurer
interface for configuring Transition
from a join pseudo state.A
ActionRepository
interface for JPA used for actions.A
GuardRepository
interface for JPA used for guards.JPA
implementation of a AbstractPersistingStateMachineInterceptor
.JPA entity for actions.
JPA entity for actions.
JPA entity for states.
A
RepositoryStateMachine
interface for JPA used for states machines.JPA
based implementation of a RepositoryStateMachinePersist
.JPA entity for transitions.
JPA entity for state machine.
A
StateRepository
interface for JPA used for states.A
StateRepository
interface for JPA used for transitions.A simple data object keeping junction related configs in a same place.
Junction implementation of a
PseudoState
.TransitionConfigurer
interface for configuring Transition
from a junction pseudo state.Implementation for
StateMachineSerialisationService
using kryo.A
StateMachineListener
which is used during the tests
to assert correct count of listener callbacks.StateMachineEnsemble
backed by a zookeeper and leader functionality
from a Spring Cloud Cluster.Convenient base class for object which needs spring task scheduler, task
executor and life cycle handling.
TransitionConfigurer
interface for configuring local Transition
s.Simple
ApplicationListener
which logs all events
based on StateMachineEvent
using a log level
set during the construction.Generic exception indicating ill-formed state machine configuration.
Kryo
Serializer
for spring messaging message headers.Strategy interface for post-processing annotated methods.
A simple
StateMachineRuntimeProcessor
implementation using
methods from a state machine protected bean.Base
ModelConfigurer
interface for configuring state machine model.Data object used return and build data from a
ModelConfigurer
.A
ActionRepository
interface for MongoDb used for actions.A
GuardRepository
interface for MongoDb used for guards.MongoDb
implementation of a AbstractPersistingStateMachineInterceptor
.MongoDb entity for actions.
MongoDb entity for actions.
MongoDb entity for states.
A
RepositoryStateMachine
interface for Redis used for states machines.MongoDb
based implementation of a RepositoryStateMachinePersist
.MongoDb entity for transitions.
A
StateMachineRepository
interface for MongoDb used for states machines.A
StateRepository
interface for MongoDb used for states.A
StateRepository
interface for MongoDb used for transitions.Base
MonitoringConfigurer
interface for configuring state machine monitoring.Allows initialization of Objects.
Spring
Configuration
that exports the default
ObjectPostProcessor
.A
State
implementation where state and event is object based.Specialisation of a
StateMachine
using objects
as its State
and event types.Utility class which wraps
Map
and notifies
ObservableMap.MapChangeListener
of changes for individual
change operations.The listener interface for receiving map change events.
Indicates that a method is candidate to be called when event
is not accepted by a state machine.
Generic event representing that a state machine did not
accept an event.
Indicates that a method is candidate to be called when
ExtendedState
is changed.Generic event representing that extended state variable has been changed.
Indicates that a method is candidate to be called when
State
is changed.Generic event representing that state has been changed.
Indicates that a method is candidate to be called when
State
is entered.Generic event representing that state has been entered.
Indicates that a method is candidate to be called when
State
is exited.Generic event representing that state has been exited.
Indicates that a method is candidate to be called when state machine
has been entered in error it cannot recover.
Generic event representing that state machine has been entered in
error it cannot recover.
Indicates that a method is a candidate to be called when state machine
is started.
Generic event representing that state machine has been started.
Indicates that a method is a candidate to be called when state machine
is stopped.
Generic event representing that state machine has been stopped or terminated.
Indicates that a method is a candidate to be called with a
Transition
.Indicates that a method is candidate to be called with a
Transition
.Event representing that a
Transition
has ended.Event representing that a
Transition
has happened.Indicates that a method is candidate to be called with a
Transition
.Event representing that a
Transition
has started.Composite item which can be used in other components which
may want to allow automatic and annotation based ordering.
Composite item which can be used in other components which
may want to allow automatic and annotation based ordering.
Base
PersistenceConfigurer
interface for configuring state machine persistence.PersistStateMachineHandler
is a recipe which can be used to
handle a state change of an arbitrary entity in a persistent storage.Interface for
DefaultPropertiesConfigurer
which act
as intermediate gatekeeper between a user and
an AnnotationConfigurer
.Interface for
AnnotationBuilder
which wants to be aware of Properties
configured by DefaultPropertiesConfigurer
.A
PseudoState
is an abstraction that encompasses different types of
transient states or vertices in the state machine.Context object using in
PseudoStateListener
.The PseudoAction enumeration.
Defines enumeration of a
PseudoState
kind.PseudoStateListener
for various pseudo state events.Functional interface exposing reactive
StateMachine
internals.Default reactive implementation of a
StateMachineExecutor
.A
ActionRepository
interface for Redis used for actions.A
GuardRepository
interface for Redis used for guards.JPA
implementation of a AbstractPersistingStateMachineInterceptor
.Redis entity for actions.
Redis entity for actions.
Redis entity for states.
A
RepositoryStateMachine
interface for Redis used for states machines.Redis
based implementation of a RepositoryStateMachinePersist
.Redis entity for transitions.
A
StateMachineContextRepository
backed by a redis and kryo serialization.Implementation of a
StateMachinePersister
to be used with a redis.A
StateMachineRepository
interface for Redis used for states machines.A
StateRepository
interface for Redis used for states.A
StateRepository
interface for Redis used for transitions.A region is an orthogonal part of either a composite state or a state
machine.
Enumerations for possible region execution policies.
A
State
implementation where states are wrapped in a regions..Generic base class representing action entity.
Generic base class representing guard entity.
Generic base class representing state entity.
Generic base class representing state machine entity.
A generic
StateMachineModelFactory
which is backed by a Spring Data
Repository abstraction.Base implementation of a
StateMachinePersist
using Spring Data Repositories.A
StateMachinePersist
using a generic StateMachineContextRepository
for persisting StateMachineContext
.Generic base class representing transition entity.
Interface for
DefaultResourceConfigurer
which act
as intermediate gatekeeper between a user and
an AnnotationConfigurer
.Interface for
AnnotationBuilder
which wants to be
aware of Resource
s configured by DefaultResourceConfigurer
.Base
ConfigConfigurer
interface for configuring generic config.Encapsulates the rules for comparing security attributes and expression.
Security comparison types.
Action
which uses Spring SpEL expression for action execution.Guard
which uses Spring SpEL expression for condition evaluation.State
is an interface representing possible state in a state machine.Base
StateConfigurer
interface for configuring State
s.Enumeration of a possible history pseudostate type.
StateContext
is representing of a current context used in
various stages in a state machine execution.Enumeration of possible stages context is attached.
Assertions applicable to a
StateContext
.Helper class to work with a spel expressions and
StateContext
.StateData
is a data representation of a State
used as an
abstraction between a StateMachineFactory
and a state machine
configuration.Enumerations for possible state do action policies.
Utility class using holder pattern to keep a
State
reference.StateListener
for various state events.Adapter implementation of
StateListener
implementing all
methods which extended implementation can override.StateMachine
provides an APIs for generic finite state machine needed
for basic operations like working with states, events and a lifecycle.Functional interface exposing
StateMachine
internals.Functional interface for
StateMachine
to allow more programmatic
access to underlying functionality.A
BeanPostProcessor
implementation that processes method-level
annotations such as OnTransition
.Configuration for annotation post processor which is needed i.e.
Assertions applicable to a
StateMachine
.Entry point for all
assertj
definitions for a StateMachine
.Auto-configuration
for Spring Statemachine.StateMachineBuilder
provides a builder pattern for
StateMachine
using a similar concepts found from a
normal annotation based configuration.Builder
implementation handling logic of building
a StateMachine
manually.Common configuration for statemachine.
Strategy interface for resolving state machine components by their id's.
Generic pojo keeping relates configs together.
AnnotationBuilder
handling all shared builders which effectively contructs
full configuration for StateMachineConfig
.Configuration
which gets imported from EnableStateMachine
and registers
a StateMachine
build from a StateMachineConfigurerAdapter
via
a BeanDefinition
.Configurer interface exposing generic config.
Spring
ImportSelector
choosing appropriate Configuration
based on EnableStateMachine
or EnableStateMachineFactory
annotations.AnnotationConfigurer
exposing configurers for states and transitions.Base implementation of a
StateMachineConfigurer
using objects.StateMachineContext
represents a current state of a state machine.Repository interface for saving and retrieving
StateMachineContext
objects.Kryo
Serializer
for StateMachineContext
.Utility methods for accessing common components from the BeanFactory.
StateMachineEnsemble
is a contract between a StateMachine
and
arbitrary ensemble of other StateMachine
s.General exception indicating a problem in ensemble.
Support class for implementing
StateMachineEnsemble
s.Base
ApplicationEvent
class for leader based events.Interface for publishing state machine based application events.
Configuration for common
StateMachineEventPublisher
.Interface defining a result for sending an event to a statemachine.
Enumeration of a result type indicating whether a region accepted, denied or
deferred an event.
Assertions applicable to a
StateMachineEventResult
.General exception indicating a problem in interacting with statemachine.
Interface for a
StateMachine
event executor.Completion callback to notify back complete or error.
Callback interface when executor wants to handle transit.
StateMachineFactory
is a strategy interface building StateMachine
s.Configuration
which gets imported from EnableStateMachineFactory
and registers
a StateMachineFactory
build from a StateMachineConfigurerAdapter
via
a BeanDefinition
.Handler for a common object representing something to be run.
Spring
ApplicationListener
which hooks to ContextRefreshedEvent
and tracks when was a last time context was refreshed.Helper class which is used from a StateMachineObjectSupport to ease handling
of StateMachineHandlers and provides needed caching so that a runtime calls
are fast.
Interface which can be registered with a state machine and can be used
to intercept and break a state change chain.
Adapter helper implementation for
StateMachineInterceptor
.Support class working with a
StateMachineInterceptor
s.FactoryBean
to set up a ResourceReaderRepositoryPopulator
with a StateMachineJackson2ResourceReader
.A
ResourceReader
using Jackson to read JSON into objects.Auto-configuration
for JPA repositories and Entity classes.StateMachineListener
for various state machine events.Adapter implementation of
StateMachineListener
implementing all
methods which extended implementation can override.Reserved
Message
headers used in StateMachine
events.A helper class using spel to execute target methods.
Wrapping everything we need to work with spel.
Base abstract SPI class for state machine configuration.
Configurer interface exposing model.
A generic builder interface for building
StateMachineModel
s.Strategy interface for implementations verifying
StateMachineModel
structures.Auto-configuration
for MongoDb repositories and Entity classes.StateMachineMonitor
for various state machine monitoring events.Support and helper class for base state machine implementation.
StateMachinePersist
is an interface handling serialization
logic of a StateMachineContext
.Interface persisting and restoring a
StateMachine
from
a persistent storage.Spring Boot
ConfigurationProperties
for spring.statemachine.Config props for "spring.statemachine.monitor".
Reactive equivalent of a
Lifecycle
.Auto-configuration
for Redis repositories and Entity classes.Generic
Repository
interface for states machines.A generic runtime representation of a state machine.
Interface defining a runtime persistence of a
StateMachine
.Defines a strategy of processing a state machine and returning
some Object (or null).
Configurer interface exposing generic config.
StateMachineInterceptor
which can be registered into a StateMachine
order to intercept a various security related checks.Generic interface to handle serialisation in a state machine.
Service class helping to persist and restore
StateMachine
s
in a runtime environment.A
State
implementation where state is wrapped in a substatemachine.Configurer interface exposing states.
Various constants used in state machine lib.
StateMachineTestPlan
is fully constructed plan how
a StateMachine
should be tested.A builder for
StateMachineTestPlan
.A value object representing a statemachine trace event: at a particular time
with a simple (map) information.
Endpoint
to expose StateMachineTrace
information.A repository for
StateMachineTrace
s.Configurer interface exposing different type of transitions.
Various utility methods for state machine.
Generic
Repository
interface for states.Data object used return and build data from a
StateConfigurer
.TasksHandler
is a recipe for executing arbitrary Runnable
tasks
using a state machine logic.Builder pattern implementation building a
TasksHandler
.TasksListener
is a generic interface listening tasks
execution events.Adapter class for
TasksHandler.TasksListener
.Utils for tests.
Implementation of a
Trigger
capable of firing on a
static periods.Transition
is something what a state machine associates with a state
changes.Base
TransitionConfigurer
interface for configuring Transition
s.Enumerations for possible transition conflict policies.
A simple data object keeping transition related configs in a same place.
Generic base event representing something with a
Transition
.Specific
ConfigAttribute
for spel expression.AccessDecisionVoter
evaluating access via security spel expression.Defines enumeration of a
Transition
kind.Generic
Repository
interface for transitions.Data object for transitions.
Root object for security spel evaluation.
Votes if any
ConfigAttribute.getAttribute()
starts with a prefix indicating
that it is a transition source or target.Utility class which can be used to represent a tree based data structure.
Trigger
is the cause of the Transition
.TriggerListener
for listening a Trigger
events.Model parser which constructs states and transitions data out from an uml
model.
StateMachineModelFactory
which builds StateMachineModel
from
uml representation.Utilities for uml model processing.
A
ReflectionUtils.MethodFilter
implementation that will match unique methods.Kryo
Serializer
for UUID
.Base
ConfigConfigurer
interface for configuring state machine model verifier.Annotation which is marking a bean to be a candidate for participating with a
state machine events.
StateMachineEnsemble
backed by a zookeeper.StateMachinePersist
using zookeeper as a storage and
kroy libraries as a backing serialization technique.