javax.resource.spi.work

## Class ExecutionContext

- java.lang.Object
- - javax.resource.spi.work.ExecutionContext

- Direct Known Subclasses:
    TransactionContext

      public class ExecutionContext
      extends Object

  This class models an execution context (transaction, security, etc) with which the `Work` instance must be executed. This class is provided as a convenience for easily creating `ExecutionContext` instances by extending this class and overriding only those methods of interest.

  Some reasons why it is better for `ExecutionContext` to be a class rather than an interface:

  - There is no need for a resource adapter to implement this class. It only needs to implement the context information like transaction, etc.
  - The resource adapter code does not have to change when the `ExecutionContext` class evolves. For example, more context types could be added to the `ExecutionContext` class (in the future) without forcing resource adapter implementations to change.
  Note: Resource adapters that are developed for Connectors 1.6 specification compliant application servers and above, are recommended to use the `TransactionContext` interface instead of this class. See Chapter.11 Generic Work Context in the Connectors 1.6 specification for more details.
  Version:
    1.0
  Author:
    Ram Jeyaraman

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ExecutionContext()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `long` | `getTransactionTimeout()` Get the transaction timeout value for a imported transaction.
    `Xid` | `getXid()`
    `void` | `setTransactionTimeout(long timeout)` Set the transaction timeout value for a imported transaction.
    `void` | `setXid(Xid xid)` set a transaction context.

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

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ExecutionContext

          public ExecutionContext()

  - ### Method Detail

    - #### setXid

          public void setXid(Xid xid)

      set a transaction context.
      Parameters:
        `xid` - transaction context.

    - #### getXid

          public Xid getXid()

      Returns:
        an Xid object carrying a transaction context, if any.

    - #### setTransactionTimeout

          public void setTransactionTimeout(long timeout)
                                     throws NotSupportedException

      Set the transaction timeout value for a imported transaction.
      Parameters:
        `timeout` - transaction timeout value in seconds. Only positive non-zero values are accepted. Other values are illegal and are rejected with a `NotSupportedException`.
      Throws:
        `NotSupportedException` - thrown to indicate an illegal timeout value.

    - #### getTransactionTimeout

          public long getTransactionTimeout()

      Get the transaction timeout value for a imported transaction.
      Returns:
        the specified transaction timeout value in seconds. When no timeout value or an illegal timeout value had been specified, a value of -1 (`WorkManager.UNKNOWN`) is returned; the timeout processing of such a transaction depends on the application server implementation.

Copyright © 1996-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.