mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-16 10:58:30 -05:00
Fix arc node info updating (#12007)
* Fix arc node info updating * Missed await
This commit is contained in:
@@ -65,21 +65,27 @@ export class AzureArcTreeDataProvider implements vscode.TreeDataProvider<TreeNod
|
||||
}
|
||||
|
||||
public getControllerNode(model: ControllerModel): ControllerTreeNode | undefined {
|
||||
return this._controllerNodes.find(node => model.equals(node.model));
|
||||
return this._controllerNodes.find(node => model.info.id === node.model.info.id);
|
||||
}
|
||||
|
||||
public async removeController(controllerNode: ControllerTreeNode): Promise<void> {
|
||||
this._controllerNodes = this._controllerNodes.filter(node => node !== controllerNode);
|
||||
await this.deletePassword(controllerNode.model.info);
|
||||
this._onDidChangeTreeData.fire(undefined);
|
||||
await this.saveControllers();
|
||||
}
|
||||
|
||||
public async getPassword(info: ControllerInfo): Promise<string> {
|
||||
const provider = await this._credentialsProvider;
|
||||
const credential = await provider.readCredential(getCredentialId(info));
|
||||
const credential = await provider.readCredential(info.id);
|
||||
return credential.password;
|
||||
}
|
||||
|
||||
private async deletePassword(info: ControllerInfo): Promise<void> {
|
||||
const provider = await this._credentialsProvider;
|
||||
await provider.deleteCredential(info.id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Refreshes the specified node, or the entire tree if node is undefined
|
||||
* @param node The node to refresh, or undefined for the whole tree
|
||||
@@ -91,9 +97,9 @@ export class AzureArcTreeDataProvider implements vscode.TreeDataProvider<TreeNod
|
||||
private async updatePassword(model: ControllerModel, password: string): Promise<void> {
|
||||
const provider = await this._credentialsProvider;
|
||||
if (model.info.rememberPassword) {
|
||||
provider.saveCredential(getCredentialId(model.info), password);
|
||||
await provider.saveCredential(model.info.id, password);
|
||||
} else {
|
||||
provider.deleteCredential(getCredentialId(model.info));
|
||||
await provider.deleteCredential(model.info.id);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -136,7 +142,3 @@ export class AzureArcTreeDataProvider implements vscode.TreeDataProvider<TreeNod
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function getCredentialId(info: ControllerInfo): string {
|
||||
return `${info.url}::${info.username}`;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user