# Package-level declarations

## Types

R2dbcTransactionInterface
Link copied to clipboard
interface R2dbcTransactionInterface : TransactionInterface

Represents a unit block of work that is performed on a database using an R2DBC driver.

R2dbcTransactionManager
Link copied to clipboard
interface R2dbcTransactionManager : TransactionManagerApi

Interface for R2DBC transaction managers, responsible for creating and managing R2DBC transactions.

TransactionManager
Link copied to clipboard
class TransactionManager(val db: R2dbcDatabase, setupTxConnection: (R2dbcExposedConnection<*>, R2dbcTransactionInterface) -> Unit? = null) : R2dbcTransactionManager

R2dbcTransactionManager implementation registered to the provided database value db.

## Properties

transactionManager
Link copied to clipboard
val R2dbcDatabase.transactionManager: R2dbcTransactionManager

The R2dbcTransactionManager instance that is associated with this R2dbcDatabase.

## Functions

currentOrNull
Link copied to clipboard
fun R2dbcTransactionManager.currentOrNull(): R2dbcTransaction?

Returns the current R2DBC transaction from the thread-local stack for this manager's database, or null if none exists.

inTopLevelSuspendTransaction
Link copied to clipboard
suspend fun <T> inTopLevelSuspendTransaction(db: R2dbcDatabase? = null, transactionIsolation: IsolationLevel? = db?.transactionManager?.defaultIsolationLevel, readOnly: Boolean? = db?.transactionManager?.defaultReadOnly, outerTransaction: R2dbcTransaction? = null, statement: suspend R2dbcTransaction.() -> T): T

Creates a transaction with the specified transactionIsolation and readOnly settings, then calls the statement block with this transaction as its receiver and returns the result.

suspendTransaction
Link copied to clipboard
suspend fun <T> suspendTransaction(db: R2dbcDatabase? = null, transactionIsolation: IsolationLevel? = db?.transactionManager?.defaultIsolationLevel, readOnly: Boolean? = db?.transactionManager?.defaultReadOnly, statement: suspend R2dbcTransaction.() -> T): T

Creates a transaction with the specified transactionIsolation and readOnly settings, then calls the statement block with this transaction as its receiver and returns the result.