()
| 2495 | } |
| 2496 | |
| 2497 | public start(): Disposable { |
| 2498 | this._listeners = []; |
| 2499 | this._providers = []; |
| 2500 | // If we restart then the diagnostics collection is reused. |
| 2501 | if (!this._diagnostics) { |
| 2502 | this._diagnostics = this._clientOptions.diagnosticCollectionName |
| 2503 | ? Languages.createDiagnosticCollection(this._clientOptions.diagnosticCollectionName) |
| 2504 | : Languages.createDiagnosticCollection(); |
| 2505 | } |
| 2506 | |
| 2507 | this.state = ClientState.Starting; |
| 2508 | this.resolveConnection().then((connection) => { |
| 2509 | connection.onLogMessage((message) => { |
| 2510 | switch (message.type) { |
| 2511 | case MessageType.Error: |
| 2512 | this.error(message.message); |
| 2513 | break; |
| 2514 | case MessageType.Warning: |
| 2515 | this.warn(message.message); |
| 2516 | break; |
| 2517 | case MessageType.Info: |
| 2518 | this.info(message.message); |
| 2519 | break; |
| 2520 | default: |
| 2521 | this.outputChannel.appendLine(message.message); |
| 2522 | } |
| 2523 | }); |
| 2524 | connection.onShowMessage((message) => { |
| 2525 | switch (message.type) { |
| 2526 | case MessageType.Error: |
| 2527 | Window.showErrorMessage(message.message); |
| 2528 | break; |
| 2529 | case MessageType.Warning: |
| 2530 | Window.showWarningMessage(message.message); |
| 2531 | break; |
| 2532 | case MessageType.Info: |
| 2533 | Window.showInformationMessage(message.message); |
| 2534 | break; |
| 2535 | default: |
| 2536 | Window.showInformationMessage(message.message); |
| 2537 | } |
| 2538 | }); |
| 2539 | connection.onRequest(ShowMessageRequest.type, (params) => { |
| 2540 | let messageFunc: <T extends MessageItem>(message: string, ...items: T[]) => Thenable<T>; |
| 2541 | switch (params.type) { |
| 2542 | case MessageType.Error: |
| 2543 | messageFunc = Window.showErrorMessage; |
| 2544 | break; |
| 2545 | case MessageType.Warning: |
| 2546 | messageFunc = Window.showWarningMessage; |
| 2547 | break; |
| 2548 | case MessageType.Info: |
| 2549 | messageFunc = Window.showInformationMessage; |
| 2550 | break; |
| 2551 | default: |
| 2552 | messageFunc = Window.showInformationMessage; |
| 2553 | } |
| 2554 | let actions = params.actions || []; |
nothing calls this directly
no test coverage detected