# Enum Class TransactionPropagation

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

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

public enum TransactionPropagation extends Enum<TransactionPropagation>
Propagation behavior of transaction

- ## Nested Class Summary

  ### Nested classes/interfaces inherited from class Enum

  `Enum.EnumDesc<E>`

- ## 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

  Modifier and Type
  Method
  Description
  `static TransactionPropagation`
  `valueOf(String name)`
  Returns the enum constant of this class with the specified name.
  `static TransactionPropagation[]`
  `values()`
  Returns an array containing the constants of this enum class, in the order they are declared.

  ### Methods inherited from class Enum

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

  ### Methods inherited from class Object

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

- ## Enum Constant Details

  - ### 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 Details

  - ### values

    public static TransactionPropagation[] values()
    Returns an array containing the constants of this enum class, in the order they are declared.
    Returns:
      an array containing the constants of this enum class, in the order they are declared

  - ### valueOf

    public static TransactionPropagation valueOf(String name)
    Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (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 class has no constant with the specified name
      `NullPointerException` - if the argument is null