提交 414ab4f7 编写于 作者: A Alex Dima

Remove decoratePromise

上级 07607511
......@@ -43,9 +43,6 @@ export declare class Promise {
public cancel():void;
}
export declare function decoratePromise(promise:Promise, successCallback?:ValueCallback, errorCallback?:ErrorCallback):Promise;
export declare function decoratePromise<T>(promise:TPromise<T>, successCallback?:TValueCallback<T>, errorCallback?:ErrorCallback):TPromise<T>;
// --- Generic promise
export interface TValueCallback<T> {
(value:T):void;
......
......@@ -3,11 +3,9 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
define(['./winjs.base.raw', 'vs/base/common/errors'], function (raw, __Errors__) {
define(['./winjs.base.raw', 'vs/base/common/errors'], function (winjs, __Errors__) {
'use strict';
var winjs = raw;
var outstandingPromiseErrors = {};
function promiseErrorHandler(e) {
......@@ -56,42 +54,9 @@ define(['./winjs.base.raw', 'vs/base/common/errors'], function (raw, __Errors__)
winjs.Promise.addEventListener("error", promiseErrorHandler);
function decoratePromise(promise, completeCallback, errorCallback) {
var pc, pe, pp;
var resultPromise = new winjs.Promise(
function (c, e, p) {
pc = c;
pe = e;
pp = p;
}, function () {
promise.cancel();
}
);
promise.then(function (r) {
if (completeCallback) {
completeCallback(r);
}
pc(r);
}, function (e) {
if (errorCallback) {
errorCallback(e);
}
pe(e);
}, pp);
return resultPromise;
}
return {
decoratePromise: decoratePromise,
Class: winjs.Class,
xhr: winjs.xhr,
Promise: winjs.Promise,
TPromise: winjs.Promise,
PPromise: winjs.Promise,
Utilities: winjs.Utilities
PPromise: winjs.Promise
};
});
\ No newline at end of file
......@@ -4,12 +4,11 @@
*--------------------------------------------------------------------------------------------*/
'use strict';
import {TPromise, decoratePromise} from 'vs/base/common/winjs.base';
import {TPromise} from 'vs/base/common/winjs.base';
import Worker = require('vs/base/common/worker/workerClient');
import abstractThreadService = require('vs/platform/thread/common/abstractThreadService');
import Env = require('vs/base/common/flags');
import Platform = require('vs/base/common/platform');
import Timer = require('vs/base/common/timer');
import remote = require('vs/base/common/remote');
import {SyncDescriptor0} from 'vs/platform/instantiation/common/descriptors';
import {IThreadService, IThreadSynchronizableObject, ThreadAffinity} from 'vs/platform/thread/common/thread';
......@@ -191,17 +190,7 @@ export class MainThreadService extends abstractThreadService.AbstractThreadServi
if (!id) {
throw new Error('Synchronizable Objects must have an identifier');
}
let timerEvent = Timer.start(Timer.Topic.LANGUAGES, this._shortName(id, methodName));
let stopTimer = () => {
timerEvent.stop();
// console.log(timerEvent.timeTaken(), this._workerPool.indexOf(worker), obj.getId() + ' >>> ' + methodName + ': ', params);
};
let r = decoratePromise(worker.request('threadService', [id, methodName, params]), stopTimer, stopTimer);
return r;
return worker.request('threadService', [id, methodName, params]);
}
protected _registerAndInstantiateMainProcessActor<T>(id: string, descriptor: SyncDescriptor0<T>): T {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册