Class 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 Jakarta Connectors specification compliant application servers, 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 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.