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

@@ -20,7 +20,7 @@ export class AccountPickerViewModel {
public selectedAccount: azdata.Account | undefined;
constructor(
private _providerId: string,
_providerId: string,
@IAccountManagementService private _accountManagementService: IAccountManagementService
) {
// Create our event emitters
@@ -37,7 +37,7 @@ export class AccountPickerViewModel {
*/
public initialize(): Thenable<azdata.Account[]> {
// Load a baseline of the accounts for the provider
return this._accountManagementService.getAccountsForProvider(this._providerId)
return this._accountManagementService.getAccounts()
.then(undefined, () => {
// In the event we failed to lookup accounts for the provider, just send
// back an empty collection

View File

@@ -47,6 +47,7 @@ export default class AccountStore implements IAccountStore {
});
}
public remove(key: azdata.AccountKey): Thenable<boolean> {
return this.doOperation(() => {
return this.readFromMemento()

View File

@@ -20,8 +20,10 @@ export interface IAccountManagementService {
addAccount(providerId: string): Thenable<void>;
getAccountProviderMetadata(): Thenable<azdata.AccountProviderMetadata[]>;
getAccountsForProvider(providerId: string): Thenable<azdata.Account[]>;
getAccounts(): Thenable<azdata.Account[]>;
getSecurityToken(account: azdata.Account, resource: azdata.AzureResource): Thenable<{ [key: string]: { token: string } }>;
removeAccount(accountKey: azdata.AccountKey): Thenable<boolean>;
removeAccounts(): Thenable<boolean>;
refreshAccount(account: azdata.Account): Thenable<azdata.Account>;
// UI METHODS //////////////////////////////////////////////////////////