Package org.apache.cayenne.tx

## Enum TransactionPropagation

- java.lang.Object
- - java.lang.Enum<TransactionPropagation>
  - - org.apache.cayenne.tx.TransactionPropagation

- All Implemented Interfaces:
    `Serializable`, `Comparable<TransactionPropagation>`

      public enum TransactionPropagation
      extends Enum<TransactionPropagation>

  Propagation behaviour of transaction

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant | Description
    --- | ---
    `MANDATORY` | Support a current transaction, throw an exception if none exists.
    `NESTED` | Execute within a nested transaction if a current transaction exists, create a new one if none exists.
    `REQUIRES_NEW` | Create a new transaction, and suspend the current transaction if one exists.

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static TransactionPropagation` | `valueOf​(String name)` | Returns the enum constant of this type with the specified name.
    `static TransactionPropagation[]` | `values()` | Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### MANDATORY

          public static final TransactionPropagation MANDATORY

      Support a current transaction, throw an exception if none exists.

    - #### NESTED

          public static final TransactionPropagation NESTED

      Execute within a nested transaction if a current transaction exists, create a new one if none exists.

    - #### REQUIRES_NEW

          public static final TransactionPropagation REQUIRES_NEW

      Create a new transaction, and suspend the current transaction if one exists.

  - ### Method Detail

    - #### values

          public static TransactionPropagation[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (TransactionPropagation c : TransactionPropagation.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static TransactionPropagation valueOf​(String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `IllegalArgumentException` - if this enum type has no constant with the specified name
        `NullPointerException` - if the argument is null