org.apache.cayenne.tx

## Interface Transaction

- All Known Implementing Classes:
    BaseTransaction, CayenneTransaction, ExternalTransaction

      public interface Transaction

  Cayenne Transaction interface.
  Since:
    4.0

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addListener(TransactionListener listener)`
    `void` | `begin()` Starts a Transaction.
    `void` | `commit()`
    `Map<String,Connection>` | `getConnections()` Returns all connections associated with the transaction.
    `Connection` | `getOrCreateConnection(String connectionName, DataSource dataSource)` Retrieves a connection for the given symbolic name.
    `boolean` | `isExternal()` Is this transaction managed by external transaction manager
    `boolean` | `isRollbackOnly()`
    `void` | `rollback()`
    `void` | `setRollbackOnly()`

- - ### Method Detail

    - #### begin

          void begin()

      Starts a Transaction. If Transaction is not started explicitly, it will be started when the first connection is added.

    - #### commit

          void commit()

    - #### rollback

          void rollback()

    - #### setRollbackOnly

          void setRollbackOnly()

    - #### isRollbackOnly

          boolean isRollbackOnly()

    - #### getOrCreateConnection

          Connection getOrCreateConnection(String connectionName,
                                           DataSource dataSource)
                                    throws SQLException

      Retrieves a connection for the given symbolic name. If it does not exists, creates a new connection using provided DataSource, and registers it internally.
      Parameters:
        `connectionName` - a symbolic name of the connection. Cayenne DataNodes generate a name in the form of "DataNode.Connection.nodename".
        `dataSource` - DataSource that provides new connections.
      Returns:
        a connection that participates in the current transaction.
      Throws:
        `SQLException`

    - #### getConnections

          Map<String,Connection> getConnections()

      Returns all connections associated with the transaction.
      Returns:
        connections associated with the transaction.

    - #### addListener

          void addListener(TransactionListener listener)

    - #### isExternal

          boolean isExternal()

      Is this transaction managed by external transaction manager

Copyright © 2001–2021 Apache Cayenne. All rights reserved.