executeTransactionPlan

abstract fun executeTransactionPlan(plan: TransactionPlan, propagation: TransactionPropagation = TransactionPropagation.REQUIRED, isolation: IsolationLevel = IsolationLevel.DEFAULT, readOnly: Boolean = false, timeoutSeconds: Int? = null): DataResult<TransactionPlanResult>

Executes a pre-configured TransactionPlan as a single, atomic transaction.

Transaction Plans are specifically designed for scenarios where the sequence of operations is determined dynamically (e.g., at the service or UI layer) and steps may depend on results from previous operations (via StepHandle).

Return

DataResult containing the results of all steps in the plan on success, or a DatabaseException on failure.

Parameters

plan

The pre-built plan containing steps to be executed.

propagation

Specifies how this transaction should behave if another transaction is already active. Defaults to TransactionPropagation.REQUIRED.