Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ EnlistDurable() [2/2]

Enlistment System.Transactions.Transaction.EnlistDurable ( Guid resourceManagerIdentifier,
ISinglePhaseNotification singlePhaseNotification,
EnlistmentOptions enlistmentOptions )
inlineinherited

Definition at line 362 of file Transaction.cs.

363 {
364 TransactionsEtwProvider log = TransactionsEtwProvider.Log;
365 if (log.IsEnabled())
366 {
367 log.MethodEnter(TraceSourceType.TraceSourceLtm, this, "EnlistDurable");
368 }
369 if (Disposed)
370 {
371 throw new ObjectDisposedException("Transaction");
372 }
373 if (resourceManagerIdentifier == Guid.Empty)
374 {
375 throw new ArgumentException(System.SR.BadResourceManagerId, "resourceManagerIdentifier");
376 }
377 if (singlePhaseNotification == null)
378 {
379 throw new ArgumentNullException("singlePhaseNotification");
380 }
381 if (enlistmentOptions != 0 && enlistmentOptions != EnlistmentOptions.EnlistDuringPrepareRequired)
382 {
383 throw new ArgumentOutOfRangeException("enlistmentOptions");
384 }
385 if (_complete)
386 {
387 throw TransactionException.CreateTransactionCompletedException(DistributedTxId);
388 }
390 {
392 if (log.IsEnabled())
393 {
394 log.MethodExit(TraceSourceType.TraceSourceLtm, this, "EnlistDurable");
395 }
396 return result;
397 }
398 }
static string BadResourceManagerId
Definition SR.cs:18
Definition SR.cs:7
virtual Enlistment EnlistDurable(InternalTransaction tx, Guid resourceManagerIdentifier, IEnlistmentNotification enlistmentNotification, EnlistmentOptions enlistmentOptions, Transaction atomicTransaction)
InternalTransaction _internalTransaction

References System.Transactions.Transaction._complete, System.Transactions.Transaction._internalTransaction, System.SR.BadResourceManagerId, System.Transactions.TransactionException.CreateTransactionCompletedException(), System.Runtime.Serialization.Dictionary, System.Transactions.Transaction.Disposed, System.Transactions.Transaction.DistributedTxId, System.Guid.Empty, System.Transactions.TransactionState.EnlistDurable(), System.Transactions.TransactionsEtwProvider.Log, and System.Transactions.InternalTransaction.State.