public int getTransactionTimeout ( ) throws XAException { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . entry ( this , tc , "getTransactionTimeout" ) ; int timeout = 0 ; try { CommsByteBuffer request = getCommsByteBuffer ( ) ; request . putInt ( getTransactionId ( ) ) ; CommsByteBuffer reply = jfapExchange ( request , JFapChannelConstants . SEG_XA_GETTXTIMEOUT , JFapChannelConstants . PRIORITY_MEDIUM , true ) ; try { reply . checkXACommandCompletionStatus ( JFapChannelConstants . SEG_XA_GETTXTIMEOUT_R , getConversation ( ) ) ; timeout = reply . getInt ( ) ; } 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 + ".getTransactionTimeout" , CommsConstants . SIXARESOURCEPROXY_GETTXTIMEOUT_01 , this ) ; if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isDebugEnabled ( ) ) SibTr . debug ( tc , "Caught a comms problem:" , e ) ; throw new XAException ( XAException . XAER_RMFAIL ) ; } if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( this , tc , "getTransactionTimeout" , "" + timeout ) ; return timeout ; }
Returns the transaction timeout for this XAResource instance .