11 if (
null == transaction)
24 if (distributedTransaction ==
null)
28 return distributedTransaction;
33 if (
null == transaction)
37 if (whereabouts ==
null)
46 byte[]
array =
new byte[whereabouts.Length];
63 if (cookie.Length < 32)
72 byte[]
array =
new byte[cookie.Length];
75 Guid guid =
new Guid(cookie.AsSpan(16, 16));
77 if (transaction !=
null)
96 if (
null == transaction)
111 return transmitterPropagationToken;
116 if (propagationToken ==
null)
120 if (propagationToken.Length < 24)
129 Guid transactionIdentifier =
new Guid(propagationToken.AsSpan(8, 16));
131 if (
null != transaction)
135 log.
MethodExit(
TraceSourceType.TraceSourceDistributed,
"TransactionInterop.GetTransactionFromTransmitterPropagationToken");
143 log.
MethodExit(
TraceSourceType.TraceSourceDistributed,
"TransactionInterop.GetTransactionFromTransmitterPropagationToken");
150 if (
null == transaction)
165 return dtcTransaction;
170 if (transactionNative ==
null)
184 return transactionFromDtcTransaction;
195 byte[] whereabouts = distributedTransactionManager.
GetWhereabouts();
205 if (propagationToken ==
null)
209 if (propagationToken.Length < 24)
213 byte[]
array =
new byte[propagationToken.Length];
static unsafe void Copy(Array sourceArray, Array destinationArray, int length)
static void BlockCopy(Array src, int srcOffset, Array dst, int dstOffset, int count)
static string InvalidArgument
static Transaction GetTransactionFromDtcTransaction(IDtcTransaction transactionNative)
static DistributedTransaction GetTransactionFromExportCookie(byte[] cookie, Guid txId)
static DistributedTransaction GetDistributedTransactionFromTransmitterPropagationToken(byte[] propagationToken)
static Exception NotSupported()
byte[] GetTransmitterPropagationToken()
byte[] GetExportCookie(byte[] whereaboutsCopy)
IDtcTransaction GetDtcTransaction()
static Exception CreateTransactionCompletedException(Guid distributedTxId)
static Transaction GetTransactionFromDtcTransaction(IDtcTransaction transactionNative)
static Transaction GetTransactionFromTransmitterPropagationToken(byte[] propagationToken)
static readonly Guid PromoterTypeDtc
static byte[] GetExportCookie(Transaction transaction, byte[] whereabouts)
static DistributedTransaction ConvertToDistributedTransaction(Transaction transaction)
static byte[] GetWhereabouts()
static byte[] GetTransmitterPropagationToken(Transaction transaction)
static Transaction GetTransactionFromExportCookie(byte[] cookie)
static DistributedTransaction GetDistributedTransactionFromTransmitterPropagationToken(byte[] propagationToken)
static IDtcTransaction GetDtcTransaction(Transaction transaction)
static Transaction FindPromotedTransaction(Guid transactionIdentifier)
static DistributedTransactionManager DistributedTransactionManager
static Transaction FindOrCreatePromotedTransaction(Guid transactionIdentifier, DistributedTransaction dtx)
DistributedTransaction Promote()
void MethodExit(TraceSourceType traceSource, object thisOrContextObject, [CallerMemberName] string methodname=null)
static readonly TransactionsEtwProvider Log
void MethodEnter(TraceSourceType traceSource, object thisOrContextObject, [CallerMemberName] string methodname=null)