Skip to content

Commit 3474b30

Browse files
protect languageClient
1 parent 45dd6b7 commit 3474b30

File tree

1 file changed

+14
-1
lines changed

1 file changed

+14
-1
lines changed

src/features/PowerShellNotebooks.ts

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -248,13 +248,26 @@ class PowerShellNotebookContentProvider implements vscode.NotebookContentProvide
248248
}
249249

250250
class PowerShellNotebookKernel implements vscode.NotebookKernel, vscode.NotebookKernelProvider {
251+
private static informationMessage = "PowerShell extension has not finished starting up yet. Please try again in a few moments.";
252+
251253
public id?: string;
252254
public label: string = "PowerShell";
253255
public description?: string = "The PowerShell Notebook Mode kernel that runs commands in the PowerShell Integrated Console.";
254256
public isPreferred?: boolean;
255257
public preloads?: vscode.Uri[];
256258

257-
private languageClient: LanguageClient;
259+
private _languageClient: LanguageClient;
260+
private get languageClient(): LanguageClient {
261+
if (!this._languageClient) {
262+
vscode.window.showInformationMessage(
263+
PowerShellNotebookKernel.informationMessage);
264+
}
265+
return this._languageClient;
266+
}
267+
268+
private set languageClient(value: LanguageClient) {
269+
this._languageClient = value;
270+
}
258271

259272
public async executeAllCells(document: vscode.NotebookDocument): Promise<void> {
260273
for (const cell of document.cells) {

0 commit comments

Comments
 (0)