Mercurial > pub > ImplabNet
comparison Implab/Promise.cs @ 112:38d6a4db35d7 v2
fixed Promise.Error handler
| author | cin |
|---|---|
| date | Wed, 19 Nov 2014 13:34:09 +0300 |
| parents | f5220e5472ef |
| children | 2573b562e328 |
comparison
equal
deleted
inserted
replaced
| 110:1a8426e6e895 | 112:38d6a4db35d7 |
|---|---|
| 176 public Promise() { | 176 public Promise() { |
| 177 } | 177 } |
| 178 | 178 |
| 179 public Promise(IPromise parent) { | 179 public Promise(IPromise parent) { |
| 180 if (parent != null) | 180 if (parent != null) |
| 181 AddMappers<T>( | 181 AddHandler( |
| 182 null, | 182 null, |
| 183 null, | 183 null, |
| 184 () => { | 184 () => { |
| 185 if (parent.IsExclusive) | 185 if (parent.IsExclusive) |
| 186 parent.Cancel(); | 186 parent.Cancel(); |
| 333 return this; | 333 return this; |
| 334 | 334 |
| 335 var medium = new Promise<T>(this); | 335 var medium = new Promise<T>(this); |
| 336 | 336 |
| 337 AddMappers( | 337 AddMappers( |
| 338 null, | 338 x => x, |
| 339 e => { | 339 e => { |
| 340 error(e); | 340 error(e); |
| 341 return default(T); | 341 return default(T); |
| 342 }, | 342 }, |
| 343 null, | 343 null, |
| 360 if (handler == null) | 360 if (handler == null) |
| 361 return this; | 361 return this; |
| 362 | 362 |
| 363 var medium = new Promise<T>(this); | 363 var medium = new Promise<T>(this); |
| 364 | 364 |
| 365 AddMappers(null, handler, null, medium, true); | 365 AddMappers(x => x, handler, null, medium, true); |
| 366 | 366 |
| 367 return medium; | 367 return medium; |
| 368 } | 368 } |
| 369 | 369 |
| 370 /// <summary> | 370 /// <summary> |
