mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-04 09:35:38 -05:00
Refresh master with initial release/0.24 snapshot (#332)
* Initial port of release/0.24 source code * Fix additional headers * Fix a typo in launch.json
This commit is contained in:
@@ -6,22 +6,29 @@
|
||||
|
||||
import { TPromise } from 'vs/base/common/winjs.base';
|
||||
import { ICredentialsService } from 'vs/platform/credentials/common/credentials';
|
||||
import * as keytar from 'keytar';
|
||||
|
||||
export class CredentialsService implements ICredentialsService {
|
||||
|
||||
_serviceBrand: any;
|
||||
|
||||
readSecret(service: string, account: string): TPromise<string | undefined> {
|
||||
return TPromise.wrap(keytar.getPassword(service, account))
|
||||
return this.getKeytar()
|
||||
.then(keytar => TPromise.wrap(keytar.getPassword(service, account)))
|
||||
.then(result => result === null ? undefined : result);
|
||||
}
|
||||
|
||||
writeSecret(service: string, account: string, secret: string): TPromise<void> {
|
||||
return TPromise.wrap(keytar.setPassword(service, account, secret));
|
||||
return this.getKeytar()
|
||||
.then(keytar => TPromise.wrap(keytar.setPassword(service, account, secret)));
|
||||
}
|
||||
|
||||
deleteSecret(service: string, account: string): TPromise<boolean> {
|
||||
return TPromise.wrap(keytar.deletePassword(service, account));
|
||||
return this.getKeytar()
|
||||
.then(keytar => TPromise.wrap(keytar.deletePassword(service, account)));
|
||||
}
|
||||
|
||||
private getKeytar() {
|
||||
// Avoids https://github.com/Microsoft/vscode/issues/33998
|
||||
return TPromise.wrap(import('keytar'));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user