code: public boolean setTransactionTimeout(int timeout) throws XAException
     {
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.entry(this, tc, "setTransactionTimeout", ""+timeout);
        
        boolean success = false;
              
        try
        {
           CommsByteBuffer request = getCommsByteBuffer();
           request.putInt(getTransactionId());
           request.putInt(timeout);
                
           CommsByteBuffer reply = jfapExchange(request, 
                                                JFapChannelConstants.SEG_XA_SETTXTIMEOUT, 
                                                JFapChannelConstants.PRIORITY_MEDIUM, 
                                                true);
  
           try
           {
              reply.checkXACommandCompletionStatus(JFapChannelConstants.SEG_XA_SETTXTIMEOUT_R, getConversation());
              
              // Get the return code and return that
              if (reply.get() == 1) success = true;
           }
           finally
           {
              if (reply != null) reply.release();
           }
        }
        catch (XAException xa)
        {
           // No FFDC Code needed
           // Simply re-throw...
           throw xa;
        }
        catch (Exception e)
        {
           FFDCFilter.processException(e, CLASS_NAME + ".setTransactionTimeout",
                                       CommsConstants.SIXARESOURCEPROXY_SETTXTIMEOUT_01, this);
           
           if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) SibTr.debug(this, tc, "Caught a comms problem:", e);
           throw new XAException(XAException.XAER_RMFAIL);
        }
           
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(tc, "setTransactionTimeout", ""+success);
        return success;
     }
docs: Sets the transaction timeout for this instance.
  <p>
  Across the wire we will flow:
  <p>
  BIT32    Transaction Id
  BIT32    Timeout
  
  @param timeout The timeout value
  
  @return Returns true if the timeout was set. If the RM does not
  support setting this, it returns false.
  
  @throws XAException if an exception is thrown at the ME. In the
  event of a comms failure, an XAException with XAER_RMFAIL will
  be thrown.