Skip to content

Commit

Permalink
fix: Adopt serverReady() API (#1433)
Browse files Browse the repository at this point in the history
Signed-off-by: sheche <sheche@microsoft.com>
  • Loading branch information
jdneo authored Jun 7, 2022
1 parent dd14c48 commit 9ef656a
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 36 deletions.
5 changes: 1 addition & 4 deletions src/controller/testController.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import { instrumentOperation, sendError, sendInfo } from 'vscode-extension-telem
import { refreshExplorer } from '../commands/testExplorerCommands';
import { INVOCATION_PREFIX } from '../constants';
import { IProgressReporter } from '../debugger.api';
import { isStandardServerReady, progressProvider } from '../extension';
import { progressProvider } from '../extension';
import { testSourceProvider } from '../provider/testSourceProvider';
import { IExecutionConfig } from '../runConfigs';
import { BaseRunner } from '../runners/baseRunner/BaseRunner';
Expand All @@ -24,9 +24,6 @@ export const watchers: Disposable[] = [];
export const runnableTag: TestTag = new TestTag('RunnableItem');

export function createTestController(): void {
if (!isStandardServerReady()) {
return;
}
testController?.dispose();
testController = tests.createTestController('javaTestController', 'Java Test');

Expand Down
45 changes: 13 additions & 32 deletions src/extension.ts
Original file line number Diff line number Diff line change
Expand Up @@ -47,17 +47,19 @@ async function doActivate(_operationId: string, context: ExtensionContext): Prom
return;
}

serverMode = extensionApi.serverMode;

if (extensionApi.onDidServerModeChange) {
const onDidServerModeChange: Event<string> = extensionApi.onDidServerModeChange;
context.subscriptions.push(onDidServerModeChange(async (mode: string) => {
serverMode = mode;
if (mode === LanguageServerMode.Standard) {
testSourceProvider.clear();
registerComponents(context);
}
}));
if (extensionApi.serverMode === LanguageServerMode.LightWeight) {
if (extensionApi.onDidServerModeChange) {
const onDidServerModeChange: Event<string> = extensionApi.onDidServerModeChange;
context.subscriptions.push(onDidServerModeChange(async (mode: string) => {
if (mode === LanguageServerMode.Standard) {
testSourceProvider.clear();
registerComponents(context);
}
}));
}
} else {
await extensionApi.serverReady();
registerComponents(context);
}

if (extensionApi.onDidClasspathUpdate) {
Expand All @@ -78,12 +80,6 @@ async function doActivate(_operationId: string, context: ExtensionContext): Prom
refreshExplorer();
}));
}

// in case the extension missed JDT.LS' ready event
if (serverMode === LanguageServerMode.Standard && extensionApi.status === 'Started') {
testSourceProvider.clear();
registerComponents(context);
}
}

const javaDebugger: Extension<any> | undefined = extensions.getExtension(ExtensionName.JAVA_DEBUGGER);
Expand Down Expand Up @@ -162,21 +158,6 @@ export async function showTestItemsInCurrentFile(): Promise<void> {
}
}

export function isStandardServerReady(): boolean {
// undefined serverMode indicates an older version language server
if (serverMode === undefined) {
return true;
}

if (serverMode !== LanguageServerMode.Standard) {
return false;
}

return true;
}

let serverMode: string | undefined;

const enum LanguageServerMode {
LightWeight = 'LightWeight',
Standard = 'Standard',
Expand Down

0 comments on commit 9ef656a

Please sign in to comment.