Package org.axonframework.modelling.saga.repository.jdbc
SagaStore, together with the SQL dialects it can
speak.
SagaSqlSchema supplies the statements and
SagaSchema the table and column names, so both the dialect
and the naming can be swapped without touching the store. Implementations are provided for generic databases, HSQLDB,
PostgreSQL and Oracle 11.
The table and column layout is that of Axon Framework 4, so an existing saga table can be read and updated without
migration, provided its saga type column holds saga class names. See
JdbcSagaStore for when it might not.
These types carry the Axon Framework 4 API, to ease migration of projects that cannot move off it in one go. The
departures are those Axon Framework 5 forced by removing the Serializer:
JdbcSagaStore.Builder#serializer became converter, JdbcSagaStore#setSerializer is gone,
SagaSqlSchema.readSerializedSaga(java.sql.ResultSet) returns the raw bytes
rather than a serialized object, and sql_updateSaga no longer takes a revision. Gone with them is
JdbcSagaStore.Builder#dataSource, which built a connection provider that is not bound to the ambient
transaction; supply a ConnectionProvider instead.
-
ClassDescriptionGeneric SagaSqlSchema implementation, for use in most databases.Specialization of the GenericSagaSqlSchema for use in the HSQL database.A
SagaStoreimplementation that uses JDBC to store and find Saga instances.Builder class to instantiate aJdbcSagaStore.Oracle 11 does not support AUTO_INCREMENT.SQL schema supporting PostgreSQL databases.SagaSchema allows specification of custom storage locations for the saga repositories.Builder for anSagaSchemathat gets initialized with default values.Interface describing the SQL statements that the JdbcSagaRepository needs to execute against the underlying database.