/// <summary> /// TODO: Support other types of transactions /// </summary> /// <param name="transaction"></param> public void ShareTransaction(IMessagingTransaction transaction) { if(transaction is MSMQMessagingTransaction) this.currentTransaction = new MSMQMessagingTransaction( ((MSMQMessagingTransaction) transaction).Transaction ); }
public void CommitTransaction() { if(!currentTransaction.Shared) currentTransaction.Transaction.Commit(); this.currentTransaction = null; }
public void RollbackTransaction() { if(!currentTransaction.Shared) currentTransaction.Transaction.Abort(); this.currentTransaction = null; }
public IMessagingTransaction BeginTransaction() { currentTransaction = new MSMQMessagingTransaction(); currentTransaction.Transaction.Begin(); return currentTransaction; }