All Classes and Interfaces
Class
Description
Template implementation of
EventUpcaster
that uses a delegate EventDataMarshaller
to allow subclasses
to upcast EventData.metaData()
and EventData.payload()
as pre-extracted JSON-like Map
s.Captures upcasted
Event.type()
, meta-data, and payload.Represents an
Autowired
parameter within an annotated handler
definition.Base class for reflective
AutowiredParameter
resolution.Interface to be implemented by classes providing back off semantics, e.g.
Encapsulates back off execution state.
Record capturing an event publication intent.
Auto-configuration for
ClassNameEventTypeResolver
.Base class for an exception thrown from
EsdbClient
.Base class for exceptions related to HTTP status codes returned from an event store.
Exception class thrown for HTTP status codes
4xx
.Exception class thrown for HTTP status codes
5xx
.Exception class representing thread interruption.
Exception class representing errors due to invalid
client API
usage.Exception class thrown by
Marshaller
implementations due to serialization or deserialization errors.Exception class representing network and/or connection errors.
Exception class representing thread interruption signalled by
ClientException.InterruptedException
.Helper class to map errors from
EsdbClient
operations to
CqrsFrameworkException
.Interface to be implemented by commands that can be handled by
CommandHandler
s.The subject condition checked before
CommandHandler
execution.Default implementation of
CommandEventPublisher
used by CommandRouter
to apply events to the
StateRebuildingHandler
s relevant for the Command
being executed.Extension to
EventPublisher
providing additional operations for publishing events relative to the
Command.getSubject()
being handled.Sealed base interface for inherited
FunctionalInterface
variants encapsulating command-handling logic.FunctionalInterface
to be implemented, if only the Command
is needed for execution.FunctionalInterface
to be implemented, if Command
and event-sourced instance are needed for
execution.FunctionalInterface
to be implemented, if Command
, meta-data, and event-sourced instance are
needed for execution.Annotation to be used for
Configuration
s containing CommandHandling
annotated methods,
CommandHandlerDefinition
Bean
s, @StateRebuilding
annotated methods, and StateRebuildingHandlerDefinition
Bean
s
in order to be able to test them using CommandHandlingTest
.CommandHandler
definition suitable for being processed by the CommandRouter
.Annotation to be used in favor of defining
CommandHandlerDefinition
Bean
s.Auto-configuration for
CommandHandlerDefinition
s defined via CommandHandling
annotated bean methods.The pre-defined cache type.
Annotation that can be used for Spring Boot tests that focus only on CQRS
CommandHandlerDefinition
s in favor of initializing CommandHandlingTestFixture
manually.Auto-configuration for
CommandHandlingTestFixture
s.Test support for
CommandHandler
or CommandHandlerDefinition
.Builder for
CommandHandlingTestFixture
.Fluent API helper class for asserting a captured events.
Marker annotation for assertion methods within
CommandHandlingTestFixture.Expect
which proceed
through the captured event stream, if invoked.Fluent API helper class for fine granular specification of a single given event.
Command
router implementation providing CQRS-style command execution.Auto-configuration for
CommandRouter
and StateRebuildingCache
default implementations.Exception thrown if
Command.SubjectCondition.PRISTINE
is violated.Exception thrown if
Command.SubjectCondition
is violated.Exception thrown if
Command.SubjectCondition.EXISTS
is violated.Exception class representing concurrency errors, usually caused by violated preconditions, when publishing events.
Base class for exceptions handled within the framework.
Exception class representing non-recoveralbe errors.
Exception class representing potentially recoverable errors, such as communication or concurrency errors.
Default implementation of
PartitionKeyResolver
which uses CRC32
checksums and modulo operation to
derive partition numbers from event sequence identifiers.Callback interface that needs to be implement for receiving errors from calls to
EsdbClient.query(String, RowHandler, ErrorHandler)
.Client SDK for the EventSourcingDB.
Auto-configuration
for EsdbClient
.Auto-configuration
for EsdbHealthIndicator
.HealthContributor
implementation based on
EsdbClient.health()
.Server configuration settings.
Event data structure retrieved from an event store, conforming to the Cloud Events Specification.
Candidate event for
publication
to a Cloud Events Specification conforming event store.In-memory implementation of
EventPublisher
using CapturedEvent
s.Represents unmarshalled
EventCandidate.data()
or Event.data()
, respectively.Interface implemented for transforming Java event objects and additional meta-data to JSON-like maps, and vice versa.
Sealed base interface for inherited
FunctionalInterface
variants encapsulating encapsulating Event
handling logic.FunctionalInterface
to be implemented, if only the Java event is needed for processing.FunctionalInterface
to be implemented, if the Java event and its meta-data is needed for processing.FunctionalInterface
to be implemented, if the Java event, its meta-data, and the raw event is needed for
processing.EventHandler
definition suitable for being processed by an event processor.Annotation to be used in favor of defining
EventHandlerDefinition
Bean
s.Auto-configuration for
EventHandlerDefinition
s defined via EventHandling
annotated bean methods.Asynchronous event processor
observing an event stream to be
handled by matching
EventHandlerDefinition
s all belonging to the same
processing group and partition with configurable
progress tracking and retry in case of errors.Auto-configuration for
EventHandlingProcessor
and supporting beans.Interface to be implemented by beans responsible for managing the life-cycle of an
EventHandlingProcessor
bean.Interface to be implemented for registering
EventHandlingProcessorLifecycleController
beans.Configuration settings for an instance of
EventHandlingProcessor
.Configures event stream fetching.
Configures life-cycle registration.
The built-in
EventHandlingProcessorLifecycleController
type.Configures which
ProgressTracker
to use.The built-in
ProgressTracker
type.Error handling retry configuration settings.
The back-off policy.
Configures which
EventSequenceResolver
to use.The built-in
EventSequenceResolver
type.Auto-configuration for
EventRepository
and EventSource
.Interface specifying operations for publishing Java event objects.
Interface specifying operations for reading events from an
EsdbClient
.Generically wraps
EsdbClient
calls to consume Event
s.Callback interface specifying operations to deal with an encapsulated raw
Event
.Callback interface specifying operations to deal with an encapsulated upcasted
Event
.Default implementation of
EventReader
and ImmediateEventPublisher
.Sealed base interface for inherited
FunctionalInterface
variants encapsulating the logic to derive a
sequence identifier for an event.FunctionalInterface
to be implemented, if an event's sequence identifier can only be derived from a fully
upcasted and deserialized Java event object.FunctionalInterface
to be implemented, if an event's sequence identifier can be derived from a raw
Event
, that is without any upcasting or Java object deserialization.Encapsulates a configurable
Event.source()
for event publication.CqrsFrameworkException.NonTransientException
exception capturing an EventTypeResolver
resolution
error.Interface implemented for resolving Java
Class
to EventCandidate.type()
or Event.type()
and
vice versa.Interface to be implemented when
Event
s need to be migrated to a new representation, so-called upcasting.Captures upcasted
Event.type()
and Event.data()
.Auto-configuration for
EventUpcasters
.Implementation class delegating to a list of configurable
EventUpcaster
s combining the
EventUpcaster.Result
s appropriately.Represents the current health status of the configured ESDB.
Health status.
Static helper methods related to
Event.id()
.Interface specifying operations for immediate, atomic event publication.
ProgressTracker
implementation using an in-memory Map
.EventDataMarshaller
implementation that uses a configurable ObjectMapper
for marshalling.Auto-configuration for
JacksonEventDataMarshaller
.ObjectMapper
based Marshaller
implementation.Auto-configuration
for JacksonMarshaller
.ProgressTracker
implementation using Spring JdbcOperations
and TransactionOperations
to
persist Progress
.StateRebuildingCache
implementation backed by a synchronized
LinkedHashMap
with configurable
maximum capacity and LRU semantics.Interface specifying operations for HTTP request/response marshalling.
Sealed interface representing a deserialized ND-JSON response line transformed via
Marshaller.fromQueryResponseLine(String)
.Represents an
error
returned from the event store, typically caused by an invalid query or
missing data in the result set.Represents a
row
returned from the event store, which may be processed by the deferred
BiConsumer
.Sealed interface representing a deserialized ND-JSON response line transformed via
Marshaller.fromReadOrObserveResponseLine(String)
.Represents a heart beat returned from the event store to ensure the underlying HTTP connection is kept alive.
EventSequenceResolver.ForRawEvent
implementation to be used if no event sequencing is
required, i.e.StateRebuildingCache
implementation that does not cache anything.Implementation of
TransactionOperationsAdapter
used if Spring TX is not available on the class-path or
EventHandling
methods have not been annotated using
Transactional
.Sealed interface for options used by
EsdbClient
to read or observe events from the underlying event store.Specifies that the list of events is optimized by omitting any event prior to the latest event available
for the subject specified as part of
this
.Specifies the fall-back fetch strategy.
Specifies the lowest exclusive event id to fetch from.
Specifies the lowest inclusive event id to fetch from.
Encapsulates the type of ordering of the fetched events.
Specifies the event order.
Specifies that events shall be fetched recursively, that is including the requested subject (events) and its
hierarchical subject (events).
Specifies the highest exclusive event id to fetch to.
Specifies the highest inclusive event id to fetch to.
Interface for implementations able to derive a consistently derive a numeric partition key from an event sequence
identifier.
EventSequenceResolver.ForRawEvent
implementation which reduced the Event.subject()
path and reduces it to a configurable
level, i.e.EventSequenceResolver.ForRawEvent
implementation which uses Event.subject()
as the event sequence
identifier.Sealed interface for preconditions used for
event publication
to ensure
consistency within the underlying event store.A precondition stating the given subject must have been updated by the given event id.
A precondition stating the given subject must not yet exist within the event store.
EventTypeResolver
implementation that can be pre-configured using a specific mapping between event types and
Java classes.Sealed interface for subclasses representing the progress of event handling the event stream for a processing group.
States no progress for the event processing group is known.
Represents the last
Event.id()
that has been successfully processed by the event
processing group.Interface specifying operations for tracking progress of event processing groups.
Specifies how meta-data is going to be propagated from source (for instance command meta-data) to destination (for
instance published event meta-data).
Util class for meta-data propagation.
Encapsulates a query processing error caused by
EsdbClient.query(String, RowHandler, ErrorHandler)
.Encapsulates a token describing the error position within a malformed or unprocessable query.
Sealed base interface for handlers capable of processing
query result rows.
FunctionalInterface
to be implemented for consuming query result rows as Event
.FunctionalInterface
to be implemented for consuming query result rows as JSON maps.Interface to be implemented for consuming query result rows as JSON objects.
FunctionalInterface
to be implemented for consuming query result rows as scalar data types.The type of sourcing affecting which events will be sourced for
CommandHandler
s.TransactionOperationsAdapter
implementation that uses a TransactionOperations
delegate for
transactional execution of an EventHandling
annotated method according to the
supplied Transactional
configuration.Annotation to be used in favor of defining
StateRebuildingHandlerDefinition
Bean
s.Auto-configuration for
StateRebuildingHandlerDefinition
s defined via StateRebuilding
annotated bean methods.Interface specifying operations to cache event-sourced
instance state to reduce the number of fetched events prior to executing a
CommandHandler
.Represents the cache key, whose
equality
determines, which StateRebuildingCache.CacheValue
to
fetch.Represents the cache value.
Sealed base interface for inherited
FunctionalInterface
variants encapsulating the event-sourcing logic
needed to reconstruct instance state from an event stream.FunctionalInterface
to be implemented, if only the Java event is needed to reconstruct the instance
state.FunctionalInterface
to be implemented, if the Java event and its meta-data is needed to reconstruct the
instance state.FunctionalInterface
to be implemented, if the Java event, its meta-data, and subject is needed to
reconstruct the instance state.FunctionalInterface
to be implemented, if the Java event, its meta-data, subject, and optional raw event
is needed to reconstruct the instance state.FunctionalInterface
to be implemented, if the Java event and the raw Event
is needed to
reconstruct the instance state.StateRebuildingHandler
definition suitable for event-sourcing an instance prior to command handling
.Internal interface encapsulating
Transactional
method execution.EventUpcaster
implementation that changes the Event.type()
to a new type if it matches the configured
source type.