/*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the Source EULA. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ import { Emitter, Event } from 'vs/base/common/event'; import { Disposable } from 'vs/base/common/lifecycle'; import { IUserDataAuthTokenService } from 'vs/platform/userDataSync/common/userDataSync'; export class UserDataAuthTokenService extends Disposable implements IUserDataAuthTokenService { _serviceBrand: any; private _onDidChangeToken: Emitter = this._register(new Emitter()); readonly onDidChangeToken: Event = this._onDidChangeToken.event; private _token: string | undefined; constructor() { super(); } async getToken(): Promise { return this._token; } async setToken(token: string | undefined): Promise { if (token !== this._token) { this._token = token; this._onDidChangeToken.fire(token); } } }