Class IsolationClause

java.lang.Object
org.litebridgedb.orm.api.tx.IsolationClause

public final class IsolationClause extends Object
Represents an isolation clause in the context of transactional operations. Provides methods to configure transaction properties such as isolation level and read-only status, as well as to initialize and execute transactional logic.

This class is immutable and serves as a builder-like abstraction for chaining transactional configurations and operations.

  • Constructor Details

  • Method Details

    • readOnly

      public TransactionContextTerminal readOnly()
      Indicates that the transaction should be read-only.

      Read-only transactions are used when the transaction is intended to only read data and not modify it.

      Returns:
      Available clauses for transaction configuration chaining
    • begin

      public Transaction begin()
      Begins a new transaction for the current thread.

      This method should be called before performing operations that need to be executed within a transactional context. It ensures that subsequent database interactions are part of the same transaction until it is either committed or rolled back.

      This method may be called multiple times (nested).

      Returns:
      a Transaction auto-closeable, suitable for use in a try-with-resources statement.
      Throws:
      TransactionException - if an error occurs during starting the transaction
    • execute

      public void execute(Runnable runnable)
      Executes a given Runnable within the context of a transaction.

      This method begins a new transaction, executes the provided Runnable, and commits the transaction if no exception occurs. In case of an exception, the transaction is rolled back, and a TransactionException is thrown.

      Parameters:
      runnable - the Runnable containing the operations to be executed within the transactional context
      Throws:
      TransactionException - if an error occurs during execution or if the transaction is rolled back due to an exception