Merge branch 'BigIntegerParse'
[mono.git] / mcs / class / System.Transactions / System.Transactions / PreparingEnlistment.cs
index 843d298ec99c0a40eb65bab389673393fa92cb98..eaaa277c422aa69f6dc1429c5a940067a22c885c 100644 (file)
@@ -21,6 +21,7 @@ namespace System.Transactions
                Transaction tx;
                IEnlistmentNotification enlisted;
                WaitHandle waitHandle;
+               Exception ex;
 
                internal PreparingEnlistment (Transaction tx, IEnlistmentNotification enlisted)
                {
@@ -34,6 +35,11 @@ namespace System.Transactions
                        ForceRollback (null);
                }
 
+               internal override void InternalOnDone ()
+               {
+                       this.Prepared();                        
+               }
+
                [MonoTODO]
                public void ForceRollback (Exception ex)
                {
@@ -68,6 +74,14 @@ namespace System.Transactions
                {
                        get { return enlisted; }
                }
+
+               // Uncatched exceptions thrown during prepare will
+               // be saved here so they can be retrieved by TM.
+               internal Exception Exception
+               {
+                       get { return ex; }
+                       set { ex = value; }
+               }
        }
 }