Package-level declarations

Types

Link copied to clipboard
@MappedSuperclass
abstract class BaseSaga<S : BaseSaga<S>>(var id: String, var type: String, status: SagaStatus, var payload: String, lastError: String? = null, var startedAt: Instant, completedAt: Instant? = null, updatedAt: Instant = Instant.now(), var version: Long? = null) : Saga<S>

JPA-backed base implementation of the Saga port.

Link copied to clipboard
@MappedSuperclass
abstract class BaseSagaStep<T : BaseSagaStep<T>>(var id: Long? = null, var sagaId: String, var stepName: String, status: SagaStepStatus, var payload: String? = null, errorMessage: String? = null, var createdAt: Instant, completedAt: Instant? = null, compensationStepId: Long? = null, var version: Long? = null) : SagaStep<T>

JPA-backed base implementation of the SagaStep port. See BaseSaga for the rationale behind the contract/adapter split — the engine sees an immutable port; this class mutates var fields internally and returns this so Hibernate can dirty-track the update.