From 6a586e39d551036ab54b20d6f0957c5d3a204e0d Mon Sep 17 00:00:00 2001 From: Johannes Rieken Date: Tue, 5 Jun 2018 14:53:05 +0200 Subject: [PATCH] debt - don't refer to WinJS.Promise as Promise --- src/vs/base/common/async.ts | 24 +++++++++---------- .../textfile/test/textFileEditorModel.test.ts | 6 ++++- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/src/vs/base/common/async.ts b/src/vs/base/common/async.ts index c1c84d77bd8..7d39986f8dd 100644 --- a/src/vs/base/common/async.ts +++ b/src/vs/base/common/async.ts @@ -6,7 +6,7 @@ 'use strict'; import * as errors from 'vs/base/common/errors'; -import { Promise, TPromise, ValueCallback, ErrorCallback, ProgressCallback } from 'vs/base/common/winjs.base'; +import { TPromise, ValueCallback, ErrorCallback, ProgressCallback } from 'vs/base/common/winjs.base'; import { CancellationToken, CancellationTokenSource } from 'vs/base/common/cancellation'; import { Disposable, IDisposable } from 'vs/base/common/lifecycle'; import { Event, Emitter } from 'vs/base/common/event'; @@ -131,9 +131,9 @@ export interface ITask { */ export class Throttler { - private activePromise: Promise; - private queuedPromise: Promise; - private queuedPromiseFactory: ITask; + private activePromise: TPromise; + private queuedPromise: TPromise; + private queuedPromiseFactory: ITask; constructor() { this.activePromise = null; @@ -221,7 +221,7 @@ export class SimpleThrottler { export class Delayer { private timeout: number; - private completionPromise: Promise; + private completionPromise: TPromise; private onSuccess: ValueCallback; private task: ITask>; @@ -357,10 +357,10 @@ export class ShallowCancelThenPromise extends TPromise { } /** - * Replacement for `WinJS.Promise.timeout`. + * Replacement for `WinJS.TPromise.timeout`. */ -export function timeout(n: number): Promise { - return new Promise(resolve => setTimeout(resolve, n)); +export function timeout(n: number): Thenable { + return new TPromise(resolve => setTimeout(resolve, n)); } function isWinJSPromise(candidate: any): candidate is TPromise { @@ -466,7 +466,7 @@ export function first(promiseFactories: ITask>[], shouldStop: (t: } interface ILimitedTaskFactory { - factory: ITask; + factory: ITask; c: ValueCallback; e: ErrorCallback; p: ProgressCallback; @@ -497,7 +497,7 @@ export class Limiter { return this.runningPromises + this.outstandingPromises.length; } - queue(promiseFactory: ITask): Promise; + queue(promiseFactory: ITask): TPromise; queue(promiseFactory: ITask>): TPromise { return new TPromise((c, e, p) => { this.outstandingPromises.push({ @@ -737,13 +737,13 @@ export class RunOnceWorker extends RunOnceScheduler { } } -export function nfcall(fn: Function, ...args: any[]): Promise; +export function nfcall(fn: Function, ...args: any[]): TPromise; export function nfcall(fn: Function, ...args: any[]): TPromise; export function nfcall(fn: Function, ...args: any[]): any { return new TPromise((c, e) => fn(...args, (err: any, result: any) => err ? e(err) : c(result)), () => null); } -export function ninvoke(thisArg: any, fn: Function, ...args: any[]): Promise; +export function ninvoke(thisArg: any, fn: Function, ...args: any[]): TPromise; export function ninvoke(thisArg: any, fn: Function, ...args: any[]): TPromise; export function ninvoke(thisArg: any, fn: Function, ...args: any[]): any { return new TPromise((c, e) => fn.call(thisArg, ...args, (err: any, result: any) => err ? e(err) : c(result)), () => null); diff --git a/src/vs/workbench/services/textfile/test/textFileEditorModel.test.ts b/src/vs/workbench/services/textfile/test/textFileEditorModel.test.ts index 5eec935b1f3..5c0b1ab4dbe 100644 --- a/src/vs/workbench/services/textfile/test/textFileEditorModel.test.ts +++ b/src/vs/workbench/services/textfile/test/textFileEditorModel.test.ts @@ -16,7 +16,11 @@ import { toResource } from 'vs/base/test/common/utils'; import { TextFileEditorModelManager } from 'vs/workbench/services/textfile/common/textFileEditorModelManager'; import { FileOperationResult, FileOperationError, IFileService, snapshotToString } from 'vs/platform/files/common/files'; import { IModelService } from 'vs/editor/common/services/modelService'; -import { timeout } from 'vs/base/common/async'; +import { timeout as thenableTimeout } from 'vs/base/common/async'; + +function timeout(n: number) { + return TPromise.wrap(thenableTimeout(n)); +} class ServiceAccessor { constructor(@ITextFileService public textFileService: TestTextFileService, @IModelService public modelService: IModelService, @IFileService public fileService: TestFileService) { -- GitLab