Mercurial > pub > ImplabNet
comparison Implab/SuccessPromiseT.cs @ 203:4d9830a9bbb8 v2
Added 'Fail' method to RunnableComponent which allows component to move from
Running to Failed state.
Added PollingComponent a timer based runnable component
More tests
Added FailPromise a thin class to wrap exceptions
Fixed error handling in SuccessPromise classes.
author | cin |
---|---|
date | Tue, 18 Oct 2016 17:49:54 +0300 |
parents | 706fccb85524 |
children | cbe10ac0731e |
comparison
equal
deleted
inserted
replaced
202:2651cb9a4250 | 203:4d9830a9bbb8 |
---|---|
10 | 10 |
11 public IPromise<T> On(Action<T> success, Action<Exception> error, Action<Exception> cancel) { | 11 public IPromise<T> On(Action<T> success, Action<Exception> error, Action<Exception> cancel) { |
12 if (success != null) { | 12 if (success != null) { |
13 try { | 13 try { |
14 success(m_value); | 14 success(m_value); |
15 } catch(Exception err) { | 15 // Analysis disable once EmptyGeneralCatchClause |
16 if (error != null) { | 16 } catch { |
17 try { | |
18 error(err); | |
19 // Analysis disable once EmptyGeneralCatchClause | |
20 } catch { | |
21 } | |
22 } | |
23 } | 17 } |
24 } | 18 } |
25 return this; | 19 return this; |
26 } | 20 } |
27 | 21 |
28 public IPromise<T> On(Action<T> success, Action<Exception> error) { | 22 public IPromise<T> On(Action<T> success, Action<Exception> error) { |
29 if (success != null) { | 23 if (success != null) { |
30 try { | 24 try { |
31 success(m_value); | 25 success(m_value); |
32 } catch(Exception err) { | 26 // Analysis disable once EmptyGeneralCatchClause |
33 if (error != null) { | 27 } catch { |
34 try { | |
35 error(err); | |
36 // Analysis disable once EmptyGeneralCatchClause | |
37 } catch { | |
38 } | |
39 } | |
40 } | 28 } |
41 } | 29 } |
42 return this; | 30 return this; |
43 } | 31 } |
44 | 32 |
63 | 51 |
64 public IPromise<T> On(Action success, Action<Exception> error, Action<Exception> cancel) { | 52 public IPromise<T> On(Action success, Action<Exception> error, Action<Exception> cancel) { |
65 if (success != null) { | 53 if (success != null) { |
66 try { | 54 try { |
67 success(); | 55 success(); |
68 } catch(Exception err) { | 56 // Analysis disable once EmptyGeneralCatchClause |
69 if (error != null) { | 57 } catch { |
70 try { | |
71 error(err); | |
72 // Analysis disable once EmptyGeneralCatchClause | |
73 } catch { | |
74 } | |
75 } | |
76 } | 58 } |
77 } | 59 } |
78 return this; | 60 return this; |
79 } | 61 } |
80 | 62 |
81 public IPromise<T> On(Action success, Action<Exception> error) { | 63 public IPromise<T> On(Action success, Action<Exception> error) { |
82 if (success != null) { | 64 if (success != null) { |
83 try { | 65 try { |
84 success(); | 66 success(); |
85 } catch(Exception err) { | 67 // Analysis disable once EmptyGeneralCatchClause |
86 if (error != null) { | 68 } catch { |
87 try { | |
88 error(err); | |
89 // Analysis disable once EmptyGeneralCatchClause | |
90 } catch { | |
91 } | |
92 } | |
93 } | 69 } |
94 } | 70 } |
95 return this; | 71 return this; |
96 } | 72 } |
97 | 73 |