Connection management service updates to support multiple providers (#9698)

* Connection management service work

* Fix tests

* Change how accounts are deleted

* Be consistent with names

* feedback

* Fix based on feedback

* Change sqltoolsservice version
This commit is contained in:
Amir Omidi
2020-03-25 12:48:01 -07:00
committed by GitHub
parent 74b0dc28c4
commit 176edde2aa
15 changed files with 162 additions and 41 deletions

View File

@@ -11,6 +11,7 @@ import { Registry } from 'vs/platform/registry/common/platform';
import { IConfigurationRegistry, Extensions as ConfigExtensions } from 'vs/platform/configuration/common/configurationRegistry';
new Actions.ConfigureDashboardAction().registerTask();
new Actions.ClearSavedAccountsAction().registerTask();
Registry.as<IConfigurationRegistry>(ConfigExtensions.Configuration).registerConfiguration({
'id': 'previewFeatures',

View File

@@ -17,6 +17,8 @@ import { ServicesAccessor } from 'vs/platform/instantiation/common/instantiation
import { IInsightsConfig } from 'sql/platform/dashboard/browser/insightRegistry';
import { IOpenerService } from 'vs/platform/opener/common/opener';
import { URI } from 'vs/base/common/uri';
import { IAccountManagementService } from 'sql/platform/accounts/common/interfaces';
import { ILogService } from 'vs/platform/log/common/log';
export interface BaseActionContext {
object?: ObjectMetadata;
@@ -88,3 +90,25 @@ export class ConfigureDashboardAction extends Task {
accessor.get(IOpenerService).open(URI.parse(ConfigureDashboardAction.configHelpUri));
}
}
export class ClearSavedAccountsAction extends Task {
public static readonly ID = 'clearSavedAccounts';
public static readonly LABEL = nls.localize('clearSavedAccounts', "Clear all saved accounts");
constructor() {
super({
id: ClearSavedAccountsAction.ID,
title: ClearSavedAccountsAction.LABEL,
iconPath: undefined
});
}
async runTask(accessor: ServicesAccessor): Promise<void> {
const logService = accessor.get(ILogService);
try {
await accessor.get(IAccountManagementService).removeAccounts();
} catch (ex) {
logService.error(ex);
}
}
}