Files
azuredatastudio/extensions/datavirtualization/src/extension.ts
Charles Gagnon ad69164f09 Extension telemetry feature cleanup (#21779)
* Extension telemetry feature cleanup

* one more
2023-01-30 13:14:38 -08:00

44 lines
2.1 KiB
TypeScript

/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the Source EULA. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import * as vscode from 'vscode';
import * as azdata from 'azdata';
import * as constants from './constants';
import * as utils from './utils';
import { ApiWrapper } from './apiWrapper';
import { AppContext } from './appContext';
import { DataSourceWizardService } from './services/contracts';
import { managerInstance, ApiType } from './services/serviceApiManager';
import { OpenVirtualizeDataWizardCommand, OpenVirtualizeDataWizardTask, OpenMssqlHdfsTableFromFileWizardCommand } from './wizards/wizardCommands';
import { ServiceClient } from './services/serviceClient';
import { TelemetryReporter } from './services/telemetry';
export function activate(extensionContext: vscode.ExtensionContext): void {
let apiWrapper = new ApiWrapper();
let appContext = new AppContext(extensionContext, apiWrapper);
let wizard = managerInstance.onRegisteredApi<DataSourceWizardService>(ApiType.DataSourceWizard);
wizard((wizardService: DataSourceWizardService) => {
apiWrapper.setCommandContext(constants.CommandContext.WizardServiceEnabled, true);
extensionContext.subscriptions.push(new OpenVirtualizeDataWizardCommand(appContext, wizardService));
apiWrapper.registerTaskHandler(constants.virtualizeDataTask, (profile: azdata.IConnectionProfile) => {
new OpenVirtualizeDataWizardTask(appContext, wizardService).execute(profile);
});
extensionContext.subscriptions.push(new OpenMssqlHdfsTableFromFileWizardCommand(appContext, wizardService));
});
const outputChannel = apiWrapper.createOutputChannel(constants.serviceName);
let serviceClient = new ServiceClient(apiWrapper, outputChannel);
serviceClient.startService(extensionContext).then(success => undefined, err => {
apiWrapper.showErrorMessage(utils.getErrorMessage(err));
});
extensionContext.subscriptions.push(TelemetryReporter);
}