public void Begin() { if (transactionId == null) { transactionId = session.Connection.CreateLocalTransactionId(); TransactionInfo info = new TransactionInfo(); info.ConnectionId = session.Connection.ConnectionId; info.TransactionId = transactionId; info.Type = (int) TransactionType.Begin; session.Connection.OneWay(info); } }
public static string ToStomp(TransactionId id) { if (id is LocalTransactionId) { return ToStomp(id as LocalTransactionId); } return id.ToString(); }
public virtual bool Equals(TransactionId that) { return true; }
public void Commit() { foreach (ISynchronization synchronization in synchronizations) { synchronization.BeforeCommit(); } if (transactionId != null) { TransactionInfo info = new TransactionInfo(); info.ConnectionId = session.Connection.ConnectionId; info.TransactionId = transactionId; info.Type = (int) TransactionType.CommitOnePhase; transactionId = null; session.Connection.OneWay(info); } foreach (ISynchronization synchronization in synchronizations) { synchronization.AfterCommit(); } synchronizations.Clear(); }
public void Rollback() { if (transactionId != null) { TransactionInfo info = new TransactionInfo(); info.ConnectionId = session.Connection.ConnectionId; info.TransactionId = transactionId; info.Type = (int) TransactionType.Rollback; transactionId = null; session.Connection.OneWay(info); } foreach (ISynchronization synchronization in synchronizations) { synchronization.AfterRollback(); } synchronizations.Clear(); }
/// <summary> /// Converts the given transaction ID into a String /// </summary> public static String ToString(TransactionId txnId) { if (txnId is LocalTransactionId) { LocalTransactionId ltxnId = (LocalTransactionId) txnId; return "" + ltxnId.Value; } else if (txnId is XATransactionId) { XATransactionId xaTxnId = (XATransactionId) txnId; return "XID:" + xaTxnId.FormatId + ":" + ToHexFromBytes(xaTxnId.GlobalTransactionId) + ":" + ToHexFromBytes(xaTxnId.BranchQualifier); } return null; }
public virtual bool Equals(TransactionId that) { return(true); }