2015-02-11 19:40:29 +00:00
|
|
|
import {int, global} from 'angular2/src/facade/lang';
|
2015-02-05 21:08:05 +00:00
|
|
|
import {List} from 'angular2/src/facade/collection';
|
2015-02-11 19:40:29 +00:00
|
|
|
|
|
|
|
|
export var Promise = global.Promise;
|
2014-09-30 18:56:33 +00:00
|
|
|
|
2014-10-10 19:44:56 +00:00
|
|
|
export class PromiseWrapper {
|
|
|
|
|
static resolve(obj):Promise {
|
|
|
|
|
return Promise.resolve(obj);
|
2014-09-30 18:56:33 +00:00
|
|
|
}
|
|
|
|
|
|
2014-10-10 19:44:56 +00:00
|
|
|
static reject(obj):Promise {
|
|
|
|
|
return Promise.reject(obj);
|
2014-10-07 13:04:11 +00:00
|
|
|
}
|
|
|
|
|
|
2015-02-26 01:43:33 +00:00
|
|
|
// Note: We can't rename this method into `catch`, as this is not a valid
|
|
|
|
|
// method name in Dart.
|
|
|
|
|
static catchError(promise:Promise, onError:Function):Promise {
|
|
|
|
|
return promise.catch(onError);
|
|
|
|
|
}
|
|
|
|
|
|
2015-01-04 08:38:24 +00:00
|
|
|
static all(promises:List):Promise {
|
2014-10-10 19:44:56 +00:00
|
|
|
if (promises.length == 0) return Promise.resolve([]);
|
|
|
|
|
return Promise.all(promises);
|
2014-09-30 18:56:33 +00:00
|
|
|
}
|
2014-10-07 13:04:11 +00:00
|
|
|
|
2014-10-10 19:44:56 +00:00
|
|
|
static then(promise:Promise, success:Function, rejection:Function):Promise {
|
|
|
|
|
return promise.then(success, rejection);
|
2014-10-07 13:04:11 +00:00
|
|
|
}
|
2014-12-06 02:30:45 +00:00
|
|
|
|
|
|
|
|
static completer() {
|
|
|
|
|
var resolve;
|
|
|
|
|
var reject;
|
|
|
|
|
|
|
|
|
|
var p = new Promise(function(res, rej) {
|
|
|
|
|
resolve = res;
|
|
|
|
|
reject = rej;
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
return {
|
|
|
|
|
promise: p,
|
2015-02-25 11:46:50 +00:00
|
|
|
resolve: resolve,
|
2014-12-06 02:30:45 +00:00
|
|
|
reject: reject
|
|
|
|
|
};
|
|
|
|
|
}
|
2014-12-11 19:36:05 +00:00
|
|
|
|
2015-01-04 08:38:24 +00:00
|
|
|
static setTimeout(fn:Function, millis:int) {
|
2015-02-11 19:40:29 +00:00
|
|
|
global.setTimeout(fn, millis);
|
2014-12-11 19:36:05 +00:00
|
|
|
}
|
2015-02-06 07:57:49 +00:00
|
|
|
|
|
|
|
|
static isPromise(maybePromise):boolean {
|
|
|
|
|
return maybePromise instanceof Promise;
|
|
|
|
|
}
|
2015-01-04 08:38:24 +00:00
|
|
|
}
|