diff Implab/IPromise.cs @ 75:4439140706d0 v2

major refactoring, added tasks support
author cin
date Wed, 10 Sep 2014 11:17:37 +0400
parents c4140283575c
children c761fc982e1d
line wrap: on
line diff
--- a/Implab/IPromise.cs	Mon Sep 08 17:40:46 2014 +0400
+++ b/Implab/IPromise.cs	Wed Sep 10 11:17:37 2014 +0400
@@ -27,16 +27,26 @@
         /// </summary>
         bool IsCancelled { get; }
 
-        IPromise Then(Action success,ErrorHandler error);
+        IPromise Then(Action success, ErrorHandler error, Action cancel);
+        IPromise Then(Action success, ErrorHandler error);
         IPromise Then(Action success);
+
+        /// <summary>
+        /// Добавляет последнй обработчик в цепочку обещаний, не создает промежуточных обещаний.
+        /// </summary>
+        /// <param name="success">Success.</param>
+        /// <param name="error">Error.</param>
+        /// <param name="cancel">Cancel.</param>
+        void Last(Action success, ErrorHandler error, Action cancel);
+        void Last(Action success, ErrorHandler error);
+        void Last(Action success);
+
         IPromise Error(ErrorHandler error);
         /// <summary>
         /// Обрабатывает либо ошибку, либо результат. Событие отмены не обрабатывается.
         /// </summary>
         /// <param name="handler">Обработчик.</param>
         /// <remarks>После обработке ошибки, она передается дальше.</remarks>
-        IPromise Anyway(Action handler);
-
         /// <summary>
         /// Обрабатывает либо ошибку, либо результат, либо отмену обещания.
         /// </summary>