Package-level declarations

Types

Link copied to clipboard
class AfterEachScope<C, R, S>(val step: TypedValue, val state: S)

Receiver scope for after.each(step) { } lambdas.

Link copied to clipboard

Sentinel providing halt because "reason" inside after.each(step) { }.

Link copied to clipboard
class AfterPhase<C, R>(builder: SagaBuilder<C, R>)

Intermediate produced by val SagaBuilder.after.

Link copied to clipboard

Intermediate value produced by saga audit "id".

Link copied to clipboard
class AuditConfigurer<C, R>(builder: SagaBuilder<C, R>)

Entry point for the keep audit in journal DSL.

Link copied to clipboard
class AuditKeyword<C, R>(builder: SagaBuilder<C, R>)

Intermediate DSL node representing the audit keyword.

Link copied to clipboard

Intermediate value produced by (saga audit "id").from(a).

Link copied to clipboard
sealed interface AuditResult

DSL-layer view of ca.acendas.kstate.saga.journal.VerifyResult returned by the saga audit "id" DSL.

Link copied to clipboard
class BeforePhase<C, R>(builder: SagaBuilder<C, R>)

Intermediate produced by val SagaBuilder.before.

Link copied to clipboard
Link copied to clipboard

Singleton object that provides the because infix syntax.

Link copied to clipboard
class HaltScope<C, R, S>(val step: TypedValue, val context: C, val state: S, val effectKey: String?)

Receiver scope for before.each(step) { } lambdas.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Unprefixed alias for AuditResult.Intact.

Link copied to clipboard

Unprefixed alias for ResumeOutcome.NotFound.

Link copied to clipboard
object per

Sentinel object that enables the once per { ctx -> key } infix syntax.

Link copied to clipboard
class PerKey<C>(val block: suspend (C) -> String)

Captures an effect-key lambda for use with the once per { } DSL syntax.

Link copied to clipboard
class ProtectConfigurer<C, R>(builder: SagaBuilder<C, R>)

Intermediate receiver returned by the protect DSL property.

Link copied to clipboard

Unprefixed alias for ResumeOutcome.Resumed.

Link copied to clipboard
class ResumeId<C, R, S : Any>(executor: StatefulSagaExecutor<C, R, S>, id: String)

Intermediate value produced by saga resume "id".

Link copied to clipboard
object step

Sentinel that marks the each(step, …) position in the interceptor DSL chain.

Link copied to clipboard

Unprefixed alias for AuditResult.Tampered.

Link copied to clipboard

Singleton verb object that reads as natural English: protect with tamperEvidence.

Link copied to clipboard
sealed interface TamperEvidenceScheme

Sealed marker for tamper-evidence schemes.

Link copied to clipboard

Properties

Link copied to clipboard

Entry point for after.each(step) { … } on SagaBuilder.

Link copied to clipboard

Entry point for before.each(step) { … } on SagaBuilder.

Link copied to clipboard

Entry point for the keep audit in journal conversational DSL (F006 AC1).

Link copied to clipboard

Entry point for tamper-evidence configuration.

Functions

Link copied to clipboard
infix fun SagaExecutor<*, *>.audit(id: String): AuditCommand

Entry point for all audit DSL forms.

Link copied to clipboard
fun <C, R> AfterPhase<C, R>.each(keyword: step, block: suspend AfterEachScope<C, R, Unit>.(R) -> Unit)

Registers a SagaInterceptor for after.each(step) { … } usage.

fun <C, R> BeforePhase<C, R>.each(keyword: step, block: suspend HaltScope<C, R, Unit>.(StepPhase.Before<C, R, Unit>) -> Unit)

Registers a SagaInterceptor for before.each(step) { … } usage.

Link copied to clipboard

Executes the full-chain audit (seq 0 to Long.MAX_VALUE) for the run identified in this AuditCommand.

Link copied to clipboard
infix fun AuditCommand.from(seq: Long): AuditRange

First half of the saga audit "id" from a to b ranged form.

Link copied to clipboard
infix inline fun <C, R, P : Any> AuditKeyword<C, R>.in(journal: SagaJournal<P>)

Supplies the journal and resolves the codec for the keep audit in journal chain.

Link copied to clipboard

Declares the F004 effect-key on a step using the conversational once per { } syntax.

Link copied to clipboard
infix fun <C, R, S : Any> StatefulSagaExecutor<C, R, S>.resume(id: String): ResumeId<C, R, S>

First half of the saga resume "id" with ctx DSL chain.

Link copied to clipboard
infix suspend fun AuditRange.to(toSeq: Long): AuditResult

Second half of the saga audit "id" from a to b ranged form.

Link copied to clipboard
infix suspend fun <C, R, S : Any> ResumeId<C, R, S>.with(ctx: C): ResumeOutcome<R, S>

Second half of the saga resume "id" with ctx DSL chain.