mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-03-22 04:40:30 -04:00
* Added Azure Log Analytics resource for generating AAD Token. * Fixed AzureResource * Removed debug code from connectionManagementService * Moved AzureLogAnalytics from AzureResource enum in azdata.d.ts to azdata.proposed.d.ts. Added azureLogAnalyticsResource to all azureSettings in providerSettings.ts * Updated endpoint for generating AAD Token for LogAnalytics for UsGov, UsNat, and China * Initial Commit of Azure Monitor Extension * Added extension name to azuremonitor package strings * Removed azureMonitor resource from germanyCloud in providerSettings * Added logic to exclude menuItems in object explorer for LogAnalytics * Changed exe from AzureMonitor to Kusto * Added if clause for queryName for new queries * Changed queryWindow name from KustoQuery to KQLQuery for Kusto and LogAnalytics. * Added LogAnalytics for setTaskBarContent * Added serialization and telemetry feature classes to AzureMonitor. Added references for azdata and vscode. * Added azure monitor light and dark icons * Added config for Dashboard in package.json * Added workspace information to dashboard * Added language support for LogAnalytics * Added Notebook support * Added Hide flag to package.json for databaseName * Changed providerId from LogAnalytics to LOGANALYTICS * Changed Workspace to Workspace ID in package.nls.json * Added support for Azure Widget browser * Changed fullName to use workspaceId when connecting * Changed providerId from alertsManagement to azureMonitor * Added .gitignore and *.vsix to vscodeignore. * Removed unused devDependencies * Code Review Feedback * Changed tsconfig.json to match Kusto and Sql * Changed package.json to match kusto package. * Changed tsconfig to validate unused params and implictAny. Changed existing code to satisfy build. * Fixed tsconfig to use the correct base class. * Added objectExplorerNodeProvider and all related classes. * Removed unused tmLanguage file * Added logic to to download extension from toolservice * Fixed launchArgs. Removed commented code from extension.ts. Changed config.json to use net5.0 * Added displayName to package.nls.json. Removed hide flag from databaseName. Other code review feedback. * Added readme info to AzureMonitor * Removed unused client-error-handler and ui-references files. Combined outputChannel in azuremonitorServer. Removed TODO from contextProvider. Renamed function in extension.ts. Removed unneeded 'use strict' from cancelableStream.ts. Removed second outputChannel from objectExplorerNodeProvider. * Removed unused files
69 lines
2.1 KiB
TypeScript
69 lines
2.1 KiB
TypeScript
import { SqlOpsDataClient, SqlOpsFeature } from 'dataprotocol-client';
|
|
import { ClientCapabilities, RPCMessageType, ServerCapabilities } from 'vscode-languageclient';
|
|
import { Disposable } from 'vscode';
|
|
import * as contracts from './contracts';
|
|
import * as azdata from 'azdata';
|
|
import * as Utils from '../utils';
|
|
import * as UUID from 'vscode-languageclient/lib/utils/uuid';
|
|
|
|
export class SerializationFeature extends SqlOpsFeature<undefined> {
|
|
private static readonly messageTypes: RPCMessageType[] = [
|
|
contracts.SerializeDataStartRequest.type,
|
|
contracts.SerializeDataContinueRequest.type,
|
|
];
|
|
|
|
constructor(client: SqlOpsDataClient) {
|
|
super(client, SerializationFeature.messageTypes);
|
|
}
|
|
|
|
public fillClientCapabilities(_capabilities: ClientCapabilities): void {
|
|
}
|
|
|
|
public initialize(_capabilities: ServerCapabilities): void {
|
|
this.register(this.messages, {
|
|
id: UUID.generateUuid(),
|
|
registerOptions: undefined
|
|
});
|
|
}
|
|
|
|
protected registerProvider(_options: undefined): Disposable {
|
|
const client = this._client;
|
|
|
|
let startSerialization = (requestParams: azdata.SerializeDataStartRequestParams): Thenable<azdata.SerializeDataResult> => {
|
|
return client.sendRequest(contracts.SerializeDataStartRequest.type, requestParams).then(
|
|
r => {
|
|
return r;
|
|
},
|
|
e => {
|
|
client.logFailedRequest(contracts.SerializeDataStartRequest.type, e);
|
|
return Promise.resolve(<azdata.SerializeDataResult>{
|
|
succeeded: false,
|
|
messages: Utils.getErrorMessage(e)
|
|
});
|
|
}
|
|
);
|
|
};
|
|
|
|
let continueSerialization = (requestParams: azdata.SerializeDataContinueRequestParams): Thenable<azdata.SerializeDataResult> => {
|
|
return client.sendRequest(contracts.SerializeDataContinueRequest.type, requestParams).then(
|
|
r => {
|
|
return r;
|
|
},
|
|
e => {
|
|
client.logFailedRequest(contracts.SerializeDataContinueRequest.type, e);
|
|
return Promise.resolve(<azdata.SerializeDataResult>{
|
|
succeeded: false,
|
|
messages: Utils.getErrorMessage(e)
|
|
});
|
|
}
|
|
);
|
|
};
|
|
|
|
return azdata.dataprotocol.registerSerializationProvider({
|
|
providerId: client.providerId,
|
|
startSerialization,
|
|
continueSerialization
|
|
});
|
|
}
|
|
}
|