From afeaef843ad168d577f9413da8edc7e663eb3e31 Mon Sep 17 00:00:00 2001 From: Lansana DIOMANDE <ldiomande@takima.fr> Date: Tue, 26 Apr 2022 11:21:14 +0200 Subject: [PATCH] refactor: change extension store initialisation --- .../deadlock-extension/src/core/controller.ts | 3 ++- .../deadlock-extension/src/core/extensionStore.ts | 12 +++--------- deadlock-plugins/deadlock-extension/src/extension.ts | 1 - 3 files changed, 5 insertions(+), 11 deletions(-) diff --git a/deadlock-plugins/deadlock-extension/src/core/controller.ts b/deadlock-plugins/deadlock-extension/src/core/controller.ts index da3c8b38..7d7d3bb1 100644 --- a/deadlock-plugins/deadlock-extension/src/core/controller.ts +++ b/deadlock-plugins/deadlock-extension/src/core/controller.ts @@ -13,7 +13,9 @@ export default class Controller { private briefingView: BriefingView; private quickSetupView: QuickSetupView; private extensionStore: ExtensionStore; + constructor(private context: vscode.ExtensionContext) { + this.extensionStore = ExtensionStore.getInstance(context); this.briefingView = new BriefingView(); this.quickSetupView = new QuickSetupView(context.extensionUri); this.commandHandler = new CommandHandler(this); @@ -22,7 +24,6 @@ export default class Controller { KEYCLOAK_TOKEN_CREATE_URL, KEYCLOAK_USER_INFO_URL, ); - this.extensionStore = ExtensionStore.getInstance(); this.init(); } diff --git a/deadlock-plugins/deadlock-extension/src/core/extensionStore.ts b/deadlock-plugins/deadlock-extension/src/core/extensionStore.ts index cabc1475..5d4497c9 100644 --- a/deadlock-plugins/deadlock-extension/src/core/extensionStore.ts +++ b/deadlock-plugins/deadlock-extension/src/core/extensionStore.ts @@ -24,18 +24,12 @@ export default class ExtensionStore { if (await this.secretStorage.get(StoreKey.RefreshTokenKey)) this.secretStorage.delete(StoreKey.RefreshTokenKey); } - public static getInstance(): ExtensionStore { - if (!ExtensionStore.instance) { - throw new Error('ExtensionStore should be initiate with a storage first time'); - } - - return ExtensionStore.instance; - } - - public static createInstance(context: ExtensionContext) { + public static getInstance(context?: ExtensionContext): ExtensionStore { if (!ExtensionStore.instance) { + if (!context) throw new Error('ExtensionStore should be initiate with a storage first time'); ExtensionStore.instance = new ExtensionStore(context); } + return ExtensionStore.instance; } diff --git a/deadlock-plugins/deadlock-extension/src/extension.ts b/deadlock-plugins/deadlock-extension/src/extension.ts index c9f74cbe..1cd5c99a 100644 --- a/deadlock-plugins/deadlock-extension/src/extension.ts +++ b/deadlock-plugins/deadlock-extension/src/extension.ts @@ -11,7 +11,6 @@ export const userConfig = new UserConfigTheia(); export async function activate(context: vscode.ExtensionContext) { vscode.window.showInformationMessage('Bienvenue sur Deadlock!'); - ExtensionStore.createInstance(context); const controller = new Controller(context); -- GitLab