mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-01-21 01:25:37 -05:00
ML - dashboard icons and links (#10153)
* ML - dashboard icons and links
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
/*---------------------------------------------------------------------------------------------
|
||||
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
* Licensed under the Source EULA. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
|
||||
import * as azdata from 'azdata';
|
||||
import * as mssql from '../../../mssql';
|
||||
import { ApiWrapper } from '../common/apiWrapper';
|
||||
|
||||
/**
|
||||
* Manage package dialog model
|
||||
*/
|
||||
export class LanguageService {
|
||||
|
||||
public connection: azdata.connection.ConnectionProfile | undefined;
|
||||
public connectionUrl: string = '';
|
||||
|
||||
constructor(
|
||||
private _apiWrapper: ApiWrapper,
|
||||
private _languageExtensionService: mssql.ILanguageExtensionService) {
|
||||
}
|
||||
|
||||
public async load() {
|
||||
this.connection = await this.getCurrentConnection();
|
||||
this.connectionUrl = await this.getCurrentConnectionUrl();
|
||||
}
|
||||
|
||||
public async getLanguageList(): Promise<mssql.ExternalLanguage[]> {
|
||||
if (this.connectionUrl) {
|
||||
return await this._languageExtensionService.listLanguages(this.connectionUrl);
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
public async deleteLanguage(languageName: string): Promise<void> {
|
||||
if (this.connectionUrl) {
|
||||
await this._languageExtensionService.deleteLanguage(this.connectionUrl, languageName);
|
||||
}
|
||||
}
|
||||
|
||||
public async updateLanguage(language: mssql.ExternalLanguage): Promise<void> {
|
||||
if (this.connectionUrl) {
|
||||
await this._languageExtensionService.updateLanguage(this.connectionUrl, language);
|
||||
}
|
||||
}
|
||||
|
||||
private async getCurrentConnectionUrl(): Promise<string> {
|
||||
let connection = await this.getCurrentConnection();
|
||||
if (connection) {
|
||||
return await this._apiWrapper.getUriForConnection(connection.connectionId);
|
||||
}
|
||||
return '';
|
||||
}
|
||||
|
||||
private async getCurrentConnection(): Promise<azdata.connection.ConnectionProfile> {
|
||||
return await this._apiWrapper.getCurrentConnection();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user