*/
private void validateAndSaveXidTransactionID(Xid foreignXid, long transactionId) {
assert transactionId != 0L;
if ((this.mTransactionId == 0L) && (this.mXid == null)) {
this.mTransactionId = transactionId;
this.mXid = new XidImpl(foreignXid); // mqxid;
} else {
if (this.mXid.equals(foreignXid)) {
if (this.mTransactionId != transactionId) {
System.out.println("DXAR:start():Warning:" + "Received diff txId for same Xid:"
+ "switching transactionId:" + "\nDXAR TXid=" + this.mTransactionId + "\ngot TXid="
+ transactionId + "\nFor Xid=" + printXid(mXid));
this.mTransactionId = transactionId;
}
} else {
System.out
.println("DXAR:start():Warning:" + "Received diff Xid for open txnId:"
+ "switching transactionId:" + "\nDXAR Xid=" + printXid(mXid) + "\nDXAR TXid="
+ this.mTransactionId + "\ngot Xid=" + printXid(foreignXid) + "\ngot TXid="
+ transactionId);
// remove transactionId and xid as it will be wrong if used
this.mTransactionId = transactionId;
this.mXid = new XidImpl(foreignXid); // mqxid;
}
}
}