Package com.microsoft.sqlserver.jdbc
Class SQLServerXAResource
- java.lang.Object
-
- com.microsoft.sqlserver.jdbc.SQLServerXAResource
-
- All Implemented Interfaces:
javax.transaction.xa.XAResource
public final class SQLServerXAResource extends java.lang.Object implements javax.transaction.xa.XAResourceProvides an XAResource for XA distributed transaction management. XA transactions are implemented over SQL Server using Microsoft Distributed Transaction Manager (DTC). SQLServerXAResource makes calls to a SQL Server extended dll called SQLServer_XA.dll which interfaces with DTC. XA calls received by SQLServerXAResource (XA_START, XA_END, XA_PREPARE etc) are mapped to the corresponding calls to DTC functions. SQLServerXAResource may also be configured not to use DTC. In this case distributed transactions are simply implemented as local transactions.
-
-
Field Summary
Fields Modifier and Type Field Description static intSSTRANSTIGHTLYCPLD
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcommit(javax.transaction.xa.Xid xid, boolean onePhase)voidend(javax.transaction.xa.Xid xid, int flags)voidforget(javax.transaction.xa.Xid xid)intgetTransactionTimeout()booleanisSameRM(javax.transaction.xa.XAResource xares)intprepare(javax.transaction.xa.Xid xid)javax.transaction.xa.Xid[]recover(int flags)voidrollback(javax.transaction.xa.Xid xid)booleansetTransactionTimeout(int seconds)voidstart(javax.transaction.xa.Xid xid, int flags)java.lang.StringtoString()
-
-
-
Field Detail
-
SSTRANSTIGHTLYCPLD
public static final int SSTRANSTIGHTLYCPLD
- See Also:
- Constant Field Values
-
-
Method Detail
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
start
public void start(javax.transaction.xa.Xid xid, int flags) throws javax.transaction.xa.XAException- Specified by:
startin interfacejavax.transaction.xa.XAResource- Throws:
javax.transaction.xa.XAException
-
end
public void end(javax.transaction.xa.Xid xid, int flags) throws javax.transaction.xa.XAException- Specified by:
endin interfacejavax.transaction.xa.XAResource- Throws:
javax.transaction.xa.XAException
-
prepare
public int prepare(javax.transaction.xa.Xid xid) throws javax.transaction.xa.XAException- Specified by:
preparein interfacejavax.transaction.xa.XAResource- Throws:
javax.transaction.xa.XAException
-
commit
public void commit(javax.transaction.xa.Xid xid, boolean onePhase) throws javax.transaction.xa.XAException- Specified by:
commitin interfacejavax.transaction.xa.XAResource- Throws:
javax.transaction.xa.XAException
-
rollback
public void rollback(javax.transaction.xa.Xid xid) throws javax.transaction.xa.XAException- Specified by:
rollbackin interfacejavax.transaction.xa.XAResource- Throws:
javax.transaction.xa.XAException
-
forget
public void forget(javax.transaction.xa.Xid xid) throws javax.transaction.xa.XAException- Specified by:
forgetin interfacejavax.transaction.xa.XAResource- Throws:
javax.transaction.xa.XAException
-
recover
public javax.transaction.xa.Xid[] recover(int flags) throws javax.transaction.xa.XAException- Specified by:
recoverin interfacejavax.transaction.xa.XAResource- Throws:
javax.transaction.xa.XAException
-
isSameRM
public boolean isSameRM(javax.transaction.xa.XAResource xares) throws javax.transaction.xa.XAException- Specified by:
isSameRMin interfacejavax.transaction.xa.XAResource- Throws:
javax.transaction.xa.XAException
-
setTransactionTimeout
public boolean setTransactionTimeout(int seconds) throws javax.transaction.xa.XAException- Specified by:
setTransactionTimeoutin interfacejavax.transaction.xa.XAResource- Throws:
javax.transaction.xa.XAException
-
getTransactionTimeout
public int getTransactionTimeout() throws javax.transaction.xa.XAException- Specified by:
getTransactionTimeoutin interfacejavax.transaction.xa.XAResource- Throws:
javax.transaction.xa.XAException
-
-