Skip to content

Commit 8bf2ae1

Browse files
committed
Export RequestCancellerFactory implementations as constants
1 parent 538ff07 commit 8bf2ae1

4 files changed

Lines changed: 19 additions & 11 deletions

File tree

extensions/typescript-language-features/src/extension.browser.ts

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import { LanguageConfigurationManager } from './features/languageConfiguration';
1111
import { createLazyClientHost, lazilyActivateClient } from './lazyClientHost';
1212
import { CommandManager } from './utils/commandManager';
1313
import { PluginManager } from './utils/plugins';
14-
import { noopRequestCanceller } from './tsServer/cancellation';
14+
import { noopRequestCancellerFactory } from './tsServer/cancellation';
1515

1616
export function activate(
1717
context: vscode.ExtensionContext
@@ -25,10 +25,7 @@ export function activate(
2525
const onCompletionAccepted = new vscode.EventEmitter<vscode.CompletionItem>();
2626
context.subscriptions.push(onCompletionAccepted);
2727

28-
const lazyClientHost = createLazyClientHost(context, pluginManager, commandManager, noopLogDirectoryProvider, {
29-
create: () => noopRequestCanceller
30-
31-
}, item => {
28+
const lazyClientHost = createLazyClientHost(context, pluginManager, commandManager, noopLogDirectoryProvider, noopRequestCancellerFactory, item => {
3229
onCompletionAccepted.fire(item);
3330
});
3431

extensions/typescript-language-features/src/extension.ts

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import { registerCommands } from './commands/index';
1111
import { LanguageConfigurationManager } from './features/languageConfiguration';
1212
import * as task from './features/task';
1313
import { createLazyClientHost, lazilyActivateClient } from './lazyClientHost';
14-
import { NodeRequestCanceller } from './tsServer/cancellation.electron';
14+
import { nodeRequestCancellerFactory } from './tsServer/cancellation.electron';
1515
import { CommandManager } from './utils/commandManager';
1616
import * as electron from './utils/electron';
1717
import { PluginManager } from './utils/plugins';
@@ -30,9 +30,7 @@ export function activate(
3030

3131
const logDirectoryProvider = new NodeLogDirectoryProvider(context);
3232

33-
const lazyClientHost = createLazyClientHost(context, pluginManager, commandManager, logDirectoryProvider, {
34-
create: (kind, tracer) => new NodeRequestCanceller(kind, tracer)
35-
}, item => {
33+
const lazyClientHost = createLazyClientHost(context, pluginManager, commandManager, logDirectoryProvider, nodeRequestCancellerFactory, item => {
3634
onCompletionAccepted.fire(item);
3735
});
3836

extensions/typescript-language-features/src/tsServer/cancellation.electron.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
*--------------------------------------------------------------------------------------------*/
55

66
import * as fs from 'fs';
7-
import { OngoingRequestCanceller } from './cancellation';
7+
import { OngoingRequestCanceller, OngoingRequestCancellerFactory } from './cancellation';
88
import { getTempFile } from '../utils/electron';
99
import Tracer from '../utils/tracer';
1010

@@ -31,3 +31,10 @@ export class NodeRequestCanceller implements OngoingRequestCanceller {
3131
return true;
3232
}
3333
}
34+
35+
36+
export const nodeRequestCancellerFactory = new class implements OngoingRequestCancellerFactory {
37+
create(serverId: string, tracer: Tracer): OngoingRequestCanceller {
38+
return new NodeRequestCanceller(serverId, tracer);
39+
}
40+
};

extensions/typescript-language-features/src/tsServer/cancellation.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,16 @@ export interface OngoingRequestCancellerFactory {
1414
create(serverId: string, tracer: Tracer): OngoingRequestCanceller;
1515
}
1616

17-
export const noopRequestCanceller = new class implements OngoingRequestCanceller {
17+
const noopRequestCanceller = new class implements OngoingRequestCanceller {
1818
public readonly cancellationPipeName = undefined;
1919

2020
public tryCancelOngoingRequest(_seq: number): boolean {
2121
return false;
2222
}
2323
};
24+
25+
export const noopRequestCancellerFactory = new class implements OngoingRequestCancellerFactory {
26+
create(_serverId: string, _tracer: Tracer): OngoingRequestCanceller {
27+
return noopRequestCanceller;
28+
}
29+
};

0 commit comments

Comments
 (0)