|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object net.sourceforge.jtds.jdbc.XASupport
This class contains static utility methods used to implement distributed transactions. For SQL Server 2000 the driver can provide true distributed transactions provided that the external stored procedure in JtdsXA.dll is installed. For other types of server only an emulation is available at this stage.
Field Summary | |
private static java.lang.String |
TM_ID
xa_open login string unique to jTDS. |
private static int |
XA_CLOSE
|
private static int |
XA_COMMIT
|
private static int |
XA_COMPLETE
|
private static int |
XA_END
|
private static int |
XA_FORGET
|
private static int |
XA_OPEN
|
private static int |
XA_PREPARE
|
private static int |
XA_RECOVER
|
private static int |
XA_RMID
The Resource Manager ID allocated by jTDS |
private static int |
XA_ROLLBACK
|
private static int |
XA_START
|
private static int |
XA_TRACE
Set this field to 1 to enable XA tracing. |
Constructor Summary | |
private |
XASupport()
|
Method Summary | |
static void |
raiseXAException(int errorCode)
Construct and throw an XAException with an explanatory message and the XA error code set. |
static void |
raiseXAException(java.sql.SQLException sqle)
Construct and throw an XAException with an explanatory message derived from the
SQLException and the XA error code set to XAER_RMFAIL . |
private static byte[] |
toBytesXid(javax.transaction.xa.Xid xid)
Format an XA transaction ID into a 140 byte array. |
static void |
xa_close(java.sql.Connection connection,
int xaConId)
Invoke the xa_close routine on the SQL Server. |
static void |
xa_commit(java.sql.Connection connection,
int xaConId,
javax.transaction.xa.Xid xid,
boolean onePhase)
Invoke the xa_commit routine on the SQL Server. |
static void |
xa_end(java.sql.Connection connection,
int xaConId,
javax.transaction.xa.Xid xid,
int flags)
Invoke the xa_end routine on the SQL Server. |
static void |
xa_forget(java.sql.Connection connection,
int xaConId,
javax.transaction.xa.Xid xid)
Invoke the xa_forget routine on the SQL Server. |
static int |
xa_open(java.sql.Connection connection)
Invoke the xa_open routine on the SQL Server. |
static int |
xa_prepare(java.sql.Connection connection,
int xaConId,
javax.transaction.xa.Xid xid)
Invoke the xa_prepare routine on the SQL Server. |
static javax.transaction.xa.Xid[] |
xa_recover(java.sql.Connection connection,
int xaConId,
int flags)
Invoke the xa_recover routine on the SQL Server. |
static void |
xa_rollback(java.sql.Connection connection,
int xaConId,
javax.transaction.xa.Xid xid)
Invoke the xa_rollback routine on the SQL Server. |
static void |
xa_start(java.sql.Connection connection,
int xaConId,
javax.transaction.xa.Xid xid,
int flags)
Invoke the xa_start routine on the SQL Server. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
private static final int XA_RMID
private static final java.lang.String TM_ID
private static final int XA_OPEN
private static final int XA_CLOSE
private static final int XA_START
private static final int XA_END
private static final int XA_ROLLBACK
private static final int XA_PREPARE
private static final int XA_COMMIT
private static final int XA_RECOVER
private static final int XA_FORGET
private static final int XA_COMPLETE
private static final int XA_TRACE
Constructor Detail |
private XASupport()
Method Detail |
public static int xa_open(java.sql.Connection connection) throws java.sql.SQLException
connection
- the parent XAConnection object
java.sql.SQLException
public static void xa_close(java.sql.Connection connection, int xaConId) throws java.sql.SQLException
connection
- JDBC Connection to be enlisted in the transactionxaConId
- the connection ID allocated by the server
java.sql.SQLException
public static void xa_start(java.sql.Connection connection, int xaConId, javax.transaction.xa.Xid xid, int flags) throws javax.transaction.xa.XAException
connection
- JDBC Connection to be enlisted in the transactionxaConId
- the connection ID allocated by the serverxid
- the XA Transaction ID objectflags
- XA Flags for start command
javax.transaction.xa.XAException
- if an error condition occurspublic static void xa_end(java.sql.Connection connection, int xaConId, javax.transaction.xa.Xid xid, int flags) throws javax.transaction.xa.XAException
connection
- JDBC Connection enlisted in the transactionxaConId
- the connection ID allocated by the serverxid
- the XA Transaction ID objectflags
- XA Flags for start command
javax.transaction.xa.XAException
- if an error condition occurspublic static int xa_prepare(java.sql.Connection connection, int xaConId, javax.transaction.xa.Xid xid) throws javax.transaction.xa.XAException
connection
- JDBC Connection enlisted in the transaction.xaConId
- The connection ID allocated by the server.xid
- The XA Transaction ID object.
int
.
javax.transaction.xa.XAException
- if an error condition occurspublic static void xa_commit(java.sql.Connection connection, int xaConId, javax.transaction.xa.Xid xid, boolean onePhase) throws javax.transaction.xa.XAException
connection
- JDBC Connection enlisted in the transactionxaConId
- the connection ID allocated by the serverxid
- the XA Transaction ID objectonePhase
- true
if single phase commit required
javax.transaction.xa.XAException
- if an error condition occurspublic static void xa_rollback(java.sql.Connection connection, int xaConId, javax.transaction.xa.Xid xid) throws javax.transaction.xa.XAException
connection
- JDBC Connection enlisted in the transactionxaConId
- the connection ID allocated by the serverxid
- the XA Transaction ID object
javax.transaction.xa.XAException
- if an error condition occurspublic static javax.transaction.xa.Xid[] xa_recover(java.sql.Connection connection, int xaConId, int flags) throws javax.transaction.xa.XAException
connection
- JDBC Connection enlisted in the transactionxaConId
- the connection ID allocated by the serverflags
- XA Flags for start command
Xid[]
javax.transaction.xa.XAException
- if an error condition occurspublic static void xa_forget(java.sql.Connection connection, int xaConId, javax.transaction.xa.Xid xid) throws javax.transaction.xa.XAException
connection
- JDBC Connection enlisted in the transactionxaConId
- the connection ID allocated by the serverxid
- the XA Transaction ID object
javax.transaction.xa.XAException
- if an error condition occurspublic static void raiseXAException(java.sql.SQLException sqle) throws javax.transaction.xa.XAException
XAException
with an explanatory message derived from the
SQLException
and the XA error code set to XAER_RMFAIL
.
sqle
- The SQLException.
javax.transaction.xa.XAException
- exception derived from the code>SQLExceptionpublic static void raiseXAException(int errorCode) throws javax.transaction.xa.XAException
XAException
with an explanatory message and the XA error code set.
errorCode
- the XA Error code
javax.transaction.xa.XAException
- the constructed exceptionprivate static byte[] toBytesXid(javax.transaction.xa.Xid xid)
xid
- the XA transaction ID
byte[]
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |