Class ExecutionContext

  • Direct Known Subclasses:
    TransactionContext


    public class ExecutionContext
    extends java.lang.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.
    • Constructor Summary

      Constructors 
      Constructor Description
      ExecutionContext​()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method 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.