org.jboss.wst.xts.impl
Class BridgeXAResourceAT

java.lang.Object
  extended by org.jboss.wst.xts.impl.BridgeXAResourceAT
All Implemented Interfaces:
java.io.Serializable, javax.transaction.xa.XAResource

public class BridgeXAResourceAT
extends java.lang.Object
implements javax.transaction.xa.XAResource, java.io.Serializable

Author:
wklaczynski@sabaservice.pl, 2007-04-30
See Also:
Serialized Form

Field Summary
private  javax.transaction.xa.Xid committed
           
private  com.arjuna.mwlabs.wst.at.context.TxContextImple context
           
private  com.arjuna.mwlabs.wscf.model.twophase.arjunacore.subordinate.SubordinateCoordinator coordinator
           
private  java.lang.String coordinatorId
           
private  javax.transaction.xa.Xid currentXid
           
private  java.util.Set knownXids
           
private static org.apache.log4j.Logger log
           
private  javax.transaction.xa.Xid prepared
           
private  boolean recovered
           
private  javax.transaction.xa.Xid rolledback
           
private static long serialVersionUID
           
private  java.util.Set successfulXids
           
private  int transactionTimeoutSeconds
           
 
Fields inherited from interface javax.transaction.xa.XAResource
TMENDRSCAN, TMFAIL, TMJOIN, TMNOFLAGS, TMONEPHASE, TMRESUME, TMSTARTRSCAN, TMSUCCESS, TMSUSPEND, XA_OK, XA_RDONLY
 
Constructor Summary
BridgeXAResourceAT()
           
 
Method Summary
 void clear()
           
 void commit(javax.transaction.xa.Xid xid, boolean onePhase)
           
private  com.arjuna.mwlabs.wscf.model.twophase.arjunacore.subordinate.SubordinateCoordinator createSubordinateTransaction()
           
 void end(javax.transaction.xa.Xid xid, int flags)
           
 void forget(javax.transaction.xa.Xid xid)
           
 com.arjuna.mwlabs.wscf.model.twophase.arjunacore.subordinate.SubordinateCoordinator getCoordinator(javax.transaction.xa.Xid xid)
           
 javax.transaction.xa.Xid getCurrentXid()
           
 com.arjuna.mwlabs.wst.at.context.TxContextImple getTransactionContext()
           
 int getTransactionTimeout()
           
 boolean isRecovered()
           
 boolean isSameRM(javax.transaction.xa.XAResource xaResource)
           
 int prepare(javax.transaction.xa.Xid xid)
           
private  void readObject(java.io.ObjectInputStream aInputStream)
           
 javax.transaction.xa.Xid[] recover(int flag)
           
 void rollback(javax.transaction.xa.Xid xid)
           
 boolean setTransactionTimeout(int seconds)
           
 void start(javax.transaction.xa.Xid xid, int flags)
           
private  void writeObject(java.io.ObjectOutputStream aOutputStream)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

log

private static org.apache.log4j.Logger log

currentXid

private javax.transaction.xa.Xid currentXid

prepared

private javax.transaction.xa.Xid prepared

committed

private javax.transaction.xa.Xid committed

rolledback

private javax.transaction.xa.Xid rolledback

transactionTimeoutSeconds

private int transactionTimeoutSeconds

knownXids

private final java.util.Set knownXids

successfulXids

private final java.util.Set successfulXids

coordinatorId

private java.lang.String coordinatorId

recovered

private transient boolean recovered

coordinator

private transient com.arjuna.mwlabs.wscf.model.twophase.arjunacore.subordinate.SubordinateCoordinator coordinator

context

private transient com.arjuna.mwlabs.wst.at.context.TxContextImple context
Constructor Detail

BridgeXAResourceAT

public BridgeXAResourceAT()
Method Detail

start

public void start(javax.transaction.xa.Xid xid,
                  int flags)
           throws javax.transaction.xa.XAException
Specified by:
start in interface javax.transaction.xa.XAResource
Parameters:
xid -
flags -
Throws:
javax.transaction.xa.XAException

end

public void end(javax.transaction.xa.Xid xid,
                int flags)
         throws javax.transaction.xa.XAException
Specified by:
end in interface javax.transaction.xa.XAResource
Parameters:
xid -
flags -
Throws:
javax.transaction.xa.XAException

prepare

public int prepare(javax.transaction.xa.Xid xid)
            throws javax.transaction.xa.XAException
Specified by:
prepare in interface javax.transaction.xa.XAResource
Parameters:
xid -
Returns:
Prepare result
Throws:
javax.transaction.xa.XAException

commit

public void commit(javax.transaction.xa.Xid xid,
                   boolean onePhase)
            throws javax.transaction.xa.XAException
Specified by:
commit in interface javax.transaction.xa.XAResource
Parameters:
xid -
onePhase -
Throws:
javax.transaction.xa.XAException

rollback

public void rollback(javax.transaction.xa.Xid xid)
              throws javax.transaction.xa.XAException
Specified by:
rollback in interface javax.transaction.xa.XAResource
Parameters:
xid -
Throws:
javax.transaction.xa.XAException

forget

public void forget(javax.transaction.xa.Xid xid)
            throws javax.transaction.xa.XAException
Specified by:
forget in interface javax.transaction.xa.XAResource
Parameters:
xid -
Throws:
javax.transaction.xa.XAException

recover

public javax.transaction.xa.Xid[] recover(int flag)
                                   throws javax.transaction.xa.XAException
Specified by:
recover in interface javax.transaction.xa.XAResource
Parameters:
flag -
Returns:
Successful xids array
Throws:
javax.transaction.xa.XAException

isSameRM

public boolean isSameRM(javax.transaction.xa.XAResource xaResource)
Specified by:
isSameRM in interface javax.transaction.xa.XAResource
Parameters:
xaResource -
Returns:
Result of the test xa resouces

getTransactionTimeout

public int getTransactionTimeout()
                          throws javax.transaction.xa.XAException
Specified by:
getTransactionTimeout in interface javax.transaction.xa.XAResource
Returns:
Transaction timeout in milis
Throws:
javax.transaction.xa.XAException

setTransactionTimeout

public boolean setTransactionTimeout(int seconds)
                              throws javax.transaction.xa.XAException
Specified by:
setTransactionTimeout in interface javax.transaction.xa.XAResource
Parameters:
seconds -
Returns:
Get result of the set of the transaction timeouts
Throws:
javax.transaction.xa.XAException

getCurrentXid

public javax.transaction.xa.Xid getCurrentXid()
Returns:
Current xid

clear

public void clear()

isRecovered

public boolean isRecovered()
Returns:
Get recover state

getCoordinator

public com.arjuna.mwlabs.wscf.model.twophase.arjunacore.subordinate.SubordinateCoordinator getCoordinator(javax.transaction.xa.Xid xid)
                                                                                                   throws javax.transaction.xa.XAException
Parameters:
xid -
Returns:
new created subordinate coordinator
Throws:
javax.transaction.xa.XAException

getTransactionContext

public com.arjuna.mwlabs.wst.at.context.TxContextImple getTransactionContext()
                                                                      throws javax.transaction.xa.XAException
Returns:
Create, recovery or get subordinate xts transaction
Throws:
javax.transaction.xa.XAException

createSubordinateTransaction

private com.arjuna.mwlabs.wscf.model.twophase.arjunacore.subordinate.SubordinateCoordinator createSubordinateTransaction()
                                                                                                                  throws com.arjuna.mw.wsas.exceptions.NoActivityException,
                                                                                                                         com.arjuna.wsc.InvalidProtocolException,
                                                                                                                         com.arjuna.mw.wsas.exceptions.SystemException
Throws:
com.arjuna.mw.wsas.exceptions.NoActivityException
com.arjuna.wsc.InvalidProtocolException
com.arjuna.mw.wsas.exceptions.SystemException

readObject

private void readObject(java.io.ObjectInputStream aInputStream)
                 throws java.lang.ClassNotFoundException,
                        java.io.IOException
Throws:
java.lang.ClassNotFoundException
java.io.IOException

writeObject

private void writeObject(java.io.ObjectOutputStream aOutputStream)
                  throws java.io.IOException
Throws:
java.io.IOException