public override TransactionInfo ReadTransaction(Message message) { OleTxTransactionHeader header = OleTxTransactionHeader.ReadFrom(message); if (header == null) { return(null); } return(new OleTxTransactionInfo(header)); }
public override void WriteTransaction(Transaction transaction, Message message) { WsatExtendedInformation information; byte[] transmitterPropagationToken = TransactionInterop.GetTransmitterPropagationToken(transaction); if (!TransactionCache<Transaction, WsatExtendedInformation>.Find(transaction, out information)) { uint timeoutFromTransaction = GetTimeoutFromTransaction(transaction); information = (timeoutFromTransaction != 0) ? new WsatExtendedInformation(null, timeoutFromTransaction) : null; } OleTxTransactionHeader header = new OleTxTransactionHeader(transmitterPropagationToken, information); message.Headers.Add(header); }
public override void WriteTransaction(Transaction transaction, Message message) { WsatExtendedInformation information; byte[] transmitterPropagationToken = TransactionInterop.GetTransmitterPropagationToken(transaction); if (!TransactionCache <Transaction, WsatExtendedInformation> .Find(transaction, out information)) { uint timeoutFromTransaction = GetTimeoutFromTransaction(transaction); information = (timeoutFromTransaction != 0) ? new WsatExtendedInformation(null, timeoutFromTransaction) : null; } OleTxTransactionHeader header = new OleTxTransactionHeader(transmitterPropagationToken, information); message.Headers.Add(header); }
public override void WriteTransaction(Transaction transaction, Message message) { byte[] propToken = TransactionInterop.GetTransmitterPropagationToken(transaction); // Find or compute extended information for the transaction WsatExtendedInformation info; if (!WsatExtendedInformationCache.Find(transaction, out info)) { uint timeout = GetTimeoutFromTransaction(transaction); info = (timeout != 0) ? new WsatExtendedInformation(null, timeout) : null; } OleTxTransactionHeader header = new OleTxTransactionHeader(propToken, info); message.Headers.Add(header); }
public OleTxTransactionInfo(OleTxTransactionHeader header) { this.header = header; }