From 6f21d6e27ed27cad9375dddf9839dcce971e8730 Mon Sep 17 00:00:00 2001 From: Anthony Dresser Date: Mon, 12 Feb 2018 17:40:26 -0800 Subject: [PATCH] Output undefined channel for client (#675) * added null output channel to the client * potential fix the yarn problems --- build/yarn.lock | 2 +- dataprotocol-client/package.json | 1 + dataprotocol-client/src/main.ts | 1 + extensions-modules/package.json | 2 +- .../src/languageservice/serviceClient.ts | 17 ++++++++++++++++- .../client/src/controllers/mainController.ts | 10 +++++----- .../src/credentialstore/credentialstore.ts | 4 ++-- .../src/resourceprovider/resourceprovider.ts | 6 +++--- .../mssql/client/src/serialize/serialization.ts | 4 ++-- extensions/yarn.lock | 2 +- 10 files changed, 33 insertions(+), 16 deletions(-) diff --git a/build/yarn.lock b/build/yarn.lock index 5491ba8e28..faebab31b9 100644 --- a/build/yarn.lock +++ b/build/yarn.lock @@ -569,7 +569,7 @@ extend@~1.2.1: "extensions-modules@file:../extensions-modules": version "0.1.0" dependencies: - dataprotocol-client "file:../../Library/Caches/Yarn/v1/dataprotocol-client" + dataprotocol-client "file:C:/Users/andresse/AppData/Local/Yarn/cache/v1/dataprotocol-client" decompress "^4.2.0" fs-extra-promise "^1.0.1" http-proxy-agent "^2.0.0" diff --git a/dataprotocol-client/package.json b/dataprotocol-client/package.json index 17a3d9fd7a..7510f28284 100644 --- a/dataprotocol-client/package.json +++ b/dataprotocol-client/package.json @@ -3,6 +3,7 @@ "version": "1.0.0", "description": "SQL Operations Studio studio implementation of vscode-language-client", "main": "lib/main.js", + "typings": "./lib/main", "scripts": { "prepare": "node ./node_modules/vscode/bin/install && tsc -p ./src", "compile": "tsc -p ./src", diff --git a/dataprotocol-client/src/main.ts b/dataprotocol-client/src/main.ts index 9975976393..73e69f89ba 100644 --- a/dataprotocol-client/src/main.ts +++ b/dataprotocol-client/src/main.ts @@ -23,6 +23,7 @@ function ensure(target: T, key: K): T[K] { export interface LanguageClientOptions extends VSLanguageClientOptions { providerId: string; + serverConnectionMetadata: any; } /** diff --git a/extensions-modules/package.json b/extensions-modules/package.json index 54617af96f..0440e8be36 100644 --- a/extensions-modules/package.json +++ b/extensions-modules/package.json @@ -3,7 +3,7 @@ "version": "0.1.0", "description": "Shared modules for Carbon extensions", "dependencies": { - "dataprotocol-client": "file:./../dataprotocol-client", + "dataprotocol-client": "file:../dataprotocol-client", "decompress": "^4.2.0", "fs-extra-promise": "^1.0.1", "http-proxy-agent": "^2.0.0", diff --git a/extensions-modules/src/languageservice/serviceClient.ts b/extensions-modules/src/languageservice/serviceClient.ts index b43821e7cd..612a588db5 100644 --- a/extensions-modules/src/languageservice/serviceClient.ts +++ b/extensions-modules/src/languageservice/serviceClient.ts @@ -336,7 +336,22 @@ export class SqlToolsServiceClient { configurationSection: SqlToolsServiceClient._constants.extensionConfigSectionName }, errorHandler: new LanguageClientErrorHandler(SqlToolsServiceClient._constants), - serverConnectionMetadata: this._config.getConfigValue(Constants.serverConnectionMetadata) + serverConnectionMetadata: this._config.getConfigValue(Constants.serverConnectionMetadata), + outputChannel: { + append: () => { + }, + appendLine: () => { + }, + dispose: () => { + }, + clear: () => { + }, + hide: () => { + }, + name: '', + show: () => { + } + } }; this._serviceStatus.showServiceLoading(); // cache the client instance for later use diff --git a/extensions/mssql/client/src/controllers/mainController.ts b/extensions/mssql/client/src/controllers/mainController.ts index 40dc884682..0cb901caa9 100644 --- a/extensions/mssql/client/src/controllers/mainController.ts +++ b/extensions/mssql/client/src/controllers/mainController.ts @@ -11,7 +11,7 @@ import { Serialization } from '../serialize/serialization'; import { AzureResourceProvider } from '../resourceProvider/resourceProvider'; import { CredentialStore } from '../credentialstore/credentialstore'; import { IExtensionConstants, Telemetry, Constants as SharedConstants, SqlToolsServiceClient, VscodeWrapper, Utils, PlatformInformation } from 'extensions-modules'; -import { LanguageClient } from 'dataprotocol-client'; +import { SqlOpsDataClient } from 'dataprotocol-client'; import * as path from 'path'; /** @@ -67,17 +67,17 @@ export default class MainController implements vscode.Disposable { return this._initialized; } - private createClient(executableFiles: string[]): Promise { + private createClient(executableFiles: string[]): Promise { return PlatformInformation.getCurrent(SqlToolsServiceClient.constants.getRuntimeId, SqlToolsServiceClient.constants.extensionName).then(platformInfo => { return SqlToolsServiceClient.getInstance(path.join(__dirname, '../config.json')).createClient(this._context, platformInfo.runtimeId, undefined, executableFiles); }); } - private createCredentialClient(): Promise { + private createCredentialClient(): Promise { return this.createClient(['MicrosoftSqlToolsCredentials.exe', 'MicrosoftSqlToolsCredentials']); } - private createResourceProviderClient(): Promise { + private createResourceProviderClient(): Promise { return this.createClient(['SqlToolsResourceProviderService.exe', 'SqlToolsResourceProviderService']); } @@ -115,7 +115,7 @@ export default class MainController implements vscode.Disposable { self.createCredentialClient().then(credentialClient => { self._credentialStore.languageClient = credentialClient; - (credentialClient).onReady().then(() => { + credentialClient.onReady().then(() => { let credentialProvider: data.CredentialProvider = { handle: 0, saveCredential(credentialId: string, password: string): Thenable { diff --git a/extensions/mssql/client/src/credentialstore/credentialstore.ts b/extensions/mssql/client/src/credentialstore/credentialstore.ts index ccda034b2f..201705c909 100644 --- a/extensions/mssql/client/src/credentialstore/credentialstore.ts +++ b/extensions/mssql/client/src/credentialstore/credentialstore.ts @@ -7,7 +7,7 @@ import * as Contracts from '../models/contracts'; import { ICredentialStore } from './icredentialstore'; import { SqlToolsServiceClient, Utils } from 'extensions-modules'; -import { LanguageClient } from 'dataprotocol-client'; +import { SqlOpsDataClient } from 'dataprotocol-client'; import * as path from 'path'; /** @@ -17,7 +17,7 @@ import * as path from 'path'; */ export class CredentialStore implements ICredentialStore { - public languageClient: LanguageClient; + public languageClient: SqlOpsDataClient; constructor(private _client?: SqlToolsServiceClient) { if (!this._client) { diff --git a/extensions/mssql/client/src/resourceprovider/resourceprovider.ts b/extensions/mssql/client/src/resourceprovider/resourceprovider.ts index 9954480676..28b210a81a 100644 --- a/extensions/mssql/client/src/resourceprovider/resourceprovider.ts +++ b/extensions/mssql/client/src/resourceprovider/resourceprovider.ts @@ -6,7 +6,7 @@ import * as Contracts from '../models/contracts'; import { SqlToolsServiceClient } from 'extensions-modules'; -import { LanguageClient } from 'dataprotocol-client'; +import { SqlOpsDataClient } from 'dataprotocol-client'; import * as data from 'data'; import * as path from 'path'; @@ -18,9 +18,9 @@ import * as path from 'path'; */ export class AzureResourceProvider implements data.ResourceProvider { - public languageClient: LanguageClient; + public languageClient: SqlOpsDataClient; - constructor(private _client?: SqlToolsServiceClient, langClient?: LanguageClient) { + constructor(private _client?: SqlToolsServiceClient, langClient?: SqlOpsDataClient) { if (!this._client) { this._client = SqlToolsServiceClient.getInstance(path.join(__dirname, '../config.json')); } diff --git a/extensions/mssql/client/src/serialize/serialization.ts b/extensions/mssql/client/src/serialize/serialization.ts index 6a9a353b23..b89e9a2156 100644 --- a/extensions/mssql/client/src/serialize/serialization.ts +++ b/extensions/mssql/client/src/serialize/serialization.ts @@ -8,7 +8,7 @@ import * as Contracts from '../models/contracts'; import { ISerialization } from './iserialization'; import { SqlToolsServiceClient } from 'extensions-modules'; import * as data from 'data'; -import { LanguageClient } from 'dataprotocol-client'; +import { SqlOpsDataClient } from 'dataprotocol-client'; import * as path from 'path'; /** @@ -16,7 +16,7 @@ import * as path from 'path'; */ export class Serialization implements ISerialization { - constructor(private _client?: SqlToolsServiceClient, private _languageClient?: LanguageClient) { + constructor(private _client?: SqlToolsServiceClient, private _languageClient?: SqlOpsDataClient) { if (!this._client) { this._client = SqlToolsServiceClient.getInstance(path.join(__dirname, '../config.json')); } diff --git a/extensions/yarn.lock b/extensions/yarn.lock index 1dac39c10a..e5b188723d 100644 --- a/extensions/yarn.lock +++ b/extensions/yarn.lock @@ -133,7 +133,7 @@ es6-promisify@^5.0.0: "extensions-modules@file:../extensions-modules": version "0.1.0" dependencies: - dataprotocol-client "file:../../Library/Caches/Yarn/v1/dataprotocol-client" + dataprotocol-client "file:C:/Users/andresse/AppData/Local/Yarn/cache/v1/dataprotocol-client" decompress "^4.2.0" fs-extra-promise "^1.0.1" http-proxy-agent "^2.0.0"