diff --git a/extensions/import/src/services/serviceClient.ts b/extensions/import/src/services/serviceClient.ts index 7e343692b9..6fd2f09802 100644 --- a/extensions/import/src/services/serviceClient.ts +++ b/extensions/import/src/services/serviceClient.ts @@ -49,7 +49,7 @@ export class ServiceClient { const processStart = Date.now(); client.onReady().then(() => { const processEnd = Date.now(); - this.statusView.text = localize('serviceStarted', 'Service Started'); + this.statusView.text = localize('serviceStarted', "{0} Started", Constants.serviceName); setTimeout(() => { this.statusView.hide(); }, 1500); @@ -61,13 +61,13 @@ export class ServiceClient { }); }); this.statusView.show(); - this.statusView.text = localize('serviceStarting', 'Starting service'); + this.statusView.text = localize('serviceStarting', "Starting {0}", Constants.serviceName); let disposable = client.start(); context.subscriptions.push(disposable); resolve(client); }, e => { Telemetry.sendTelemetryEvent('ServiceInitializingFailed'); - vscode.window.showErrorMessage(localize('flatFileImport.serviceStartFailed', 'Failed to start Import service{0}', e)); + vscode.window.showErrorMessage(localize('flatFileImport.serviceStartFailed', "Failed to start {0}: {1}", Constants.serviceName, e)); // Just resolve to avoid unhandled promise. We show the error to the user. resolve(undefined); }); @@ -113,16 +113,16 @@ export class ServiceClient { case Events.INSTALL_START: this.outputChannel.show(true); this.statusView.show(); - this.outputChannel.appendLine(localize('installingServiceDetailed', 'Installing {0} service to {1}', Constants.serviceName, args[0])); - this.statusView.text = localize('installingService', 'Installing Service'); + this.outputChannel.appendLine(localize('installingServiceDetailed', "Installing {0} to {1}", Constants.serviceName, args[0])); + this.statusView.text = localize('installingService', "Installing {0} Service", Constants.serviceName); break; case Events.INSTALL_END: - this.outputChannel.appendLine(localize('serviceInstalled', 'Installed')); + this.outputChannel.appendLine(localize('serviceInstalled', "Installed {0}", Constants.serviceName)); break; case Events.DOWNLOAD_START: - this.outputChannel.appendLine(localize('downloadingService', 'Downloading {0}', args[0])); - this.outputChannel.append(localize('downloadingServiceSize', '({0} KB)', Math.ceil(args[1] / 1024).toLocaleString(vscode.env.language))); - this.statusView.text = localize('downloadingServiceStatus', 'Downloading Service'); + this.outputChannel.appendLine(localize('downloadingService', "Downloading {0}", args[0])); + this.outputChannel.append(localize('downloadingServiceSize', "({0} KB)", Math.ceil(args[1] / 1024).toLocaleString(vscode.env.language))); + this.statusView.text = localize('downloadingServiceStatus', "Downloading {0}", Constants.serviceName); break; case Events.DOWNLOAD_PROGRESS: let newDots = Math.ceil(args[0] / 5); @@ -132,7 +132,7 @@ export class ServiceClient { } break; case Events.DOWNLOAD_END: - this.outputChannel.appendLine(localize('downloadingServiceComplete', 'Done!')); + this.outputChannel.appendLine(localize('downloadingServiceComplete', "Done downloading {0}", Constants.serviceName)); break; default: console.error(`Unknown event from Server Provider ${e}`); diff --git a/extensions/mssql/src/constants.ts b/extensions/mssql/src/constants.ts index de551c9944..11ce3a92e7 100644 --- a/extensions/mssql/src/constants.ts +++ b/extensions/mssql/src/constants.ts @@ -4,10 +4,8 @@ *--------------------------------------------------------------------------------------------*/ 'use strict'; -export const serviceName = 'SqlToolsService'; +export const serviceName = 'SQL Tools Service'; export const providerId = 'MSSQL'; -export const serviceCrashMessage = 'SQL Tools Service component exited unexpectedly. Please restart Azure Data Studio.'; -export const serviceCrashButton = 'View Known Issues'; export const serviceCrashLink = 'https://github.com/Microsoft/vscode-mssql/wiki/SqlToolsService-Known-Issues'; export const extensionConfigSectionName = 'mssql'; diff --git a/extensions/mssql/src/sqlToolsServer.ts b/extensions/mssql/src/sqlToolsServer.ts index b877bc94b1..e5a4505277 100644 --- a/extensions/mssql/src/sqlToolsServer.ts +++ b/extensions/mssql/src/sqlToolsServer.ts @@ -43,7 +43,7 @@ export class SqlToolsServer { const processStart = Date.now(); this.client.onReady().then(() => { const processEnd = Date.now(); - statusView.text = 'Service Started'; + statusView.text = localize('serviceStartedStatusMsg', "{0} Started", Constants.serviceName); setTimeout(() => { statusView.hide(); }, 1500); @@ -58,13 +58,13 @@ export class SqlToolsServer { }); }); statusView.show(); - statusView.text = 'Starting service'; + statusView.text = localize('startingServiceStatusMsg', "Starting {0}", Constants.serviceName); this.client.start(); await this.activateFeatures(context); return this.client; } catch (e) { Telemetry.sendTelemetryEvent('ServiceInitializingFailed'); - vscode.window.showErrorMessage('Failed to start Sql tools service'); + vscode.window.showErrorMessage(localize('failedToStartServiceErrorMsg', "Failed to start {0}", Constants.serviceName)); throw e; } } @@ -108,16 +108,16 @@ function generateHandleServerProviderEvent() { case Events.INSTALL_START: outputChannel.show(true); statusView.show(); - outputChannel.appendLine(localize('installingServiceChannelMsg', 'Installing {0} service to {1}', Constants.serviceName, args[0])); - statusView.text = localize('installingServiceStatusMsg', 'Installing Service'); + outputChannel.appendLine(localize('installingServiceChannelMsg', "Installing {0} to {1}", Constants.serviceName, args[0])); + statusView.text = localize('installingServiceStatusMsg', "Installing {0}", Constants.serviceName); break; case Events.INSTALL_END: - outputChannel.appendLine(localize('installedServiceChannelMsg', 'Installed')); + outputChannel.appendLine(localize('installedServiceChannelMsg', "Installed {0}", Constants.serviceName)); break; case Events.DOWNLOAD_START: - outputChannel.appendLine(localize('downloadingServiceChannelMsg', 'Downloading {0}', args[0])); - outputChannel.append(localize('downloadingServiceSizeChannelMsg', '({0} KB)', Math.ceil(args[1] / 1024).toLocaleString(vscode.env.language))); - statusView.text = localize('downloadingServiceStatusMsg', 'Downloading Service'); + outputChannel.appendLine(localize('downloadingServiceChannelMsg', "Downloading {0}", args[0])); + outputChannel.append(localize('downloadingServiceSizeChannelMsg', "({0} KB)", Math.ceil(args[1] / 1024).toLocaleString(vscode.env.language))); + statusView.text = localize('downloadingServiceStatusMsg', "Downloading {0}", Constants.serviceName); break; case Events.DOWNLOAD_PROGRESS: let newDots = Math.ceil(args[0] / 5); @@ -127,7 +127,7 @@ function generateHandleServerProviderEvent() { } break; case Events.DOWNLOAD_END: - outputChannel.appendLine(localize('downloadServiceDoneChannelMsg', 'Done!')); + outputChannel.appendLine(localize('downloadServiceDoneChannelMsg', "Done installing {0}", Constants.serviceName)); break; default: console.error(`Unknown event from Server Provider ${e}`); diff --git a/extensions/mssql/src/telemetry.ts b/extensions/mssql/src/telemetry.ts index 7c11848608..50637ec2ab 100644 --- a/extensions/mssql/src/telemetry.ts +++ b/extensions/mssql/src/telemetry.ts @@ -9,8 +9,10 @@ import { ErrorAction, ErrorHandler, Message, CloseAction } from 'vscode-language import * as Utils from './utils'; import * as Constants from './constants'; +import { localize } from './localize'; const packageJson = require('../package.json'); +const viewKnownIssuesAction = localize('viewKnownIssuesText', "View Known Issues"); export interface ITelemetryEventProperties { [key: string]: string; @@ -125,9 +127,9 @@ export class LanguageClientErrorHandler implements ErrorHandler { showOnErrorPrompt(): void { Telemetry.sendTelemetryEvent(Constants.serviceName + 'Crash'); vscode.window.showErrorMessage( - Constants.serviceCrashMessage, - Constants.serviceCrashButton).then(action => { - if (action && action === Constants.serviceCrashButton) { + localize('serviceCrashMessage', "{0} component exited unexpectedly. Please restart Azure Data Studio.", Constants.serviceName), + viewKnownIssuesAction).then(action => { + if (action && action === viewKnownIssuesAction) { vscode.env.openExternal(vscode.Uri.parse(Constants.serviceCrashLink)); } });