From 602da92a2850e174206ef35f9e6bc84419ef2fb6 Mon Sep 17 00:00:00 2001 From: Vladimir Krivosheev Date: Wed, 22 Apr 2020 18:25:52 +0200 Subject: [PATCH] migrate PasswordConversionEnforcer to PreloadingActivity to support dynamic plugin reloading GitOrigin-RevId: 8f8d0bd4dd398736e2116ae78dcf43f49912cd3a --- .../tasks-core/resources/META-INF/plugin.xml | 2 +- .../config/PasswordConversionEnforcer.java | 20 +++++++++---------- 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/plugins/tasks/tasks-core/resources/META-INF/plugin.xml b/plugins/tasks/tasks-core/resources/META-INF/plugin.xml index d6c207a47f3c..314d9be415af 100644 --- a/plugins/tasks/tasks-core/resources/META-INF/plugin.xml +++ b/plugins/tasks/tasks-core/resources/META-INF/plugin.xml @@ -110,7 +110,7 @@ - + diff --git a/plugins/tasks/tasks-core/src/com/intellij/tasks/config/PasswordConversionEnforcer.java b/plugins/tasks/tasks-core/src/com/intellij/tasks/config/PasswordConversionEnforcer.java index 762fd5cf3ec5..41cfb859a740 100644 --- a/plugins/tasks/tasks-core/src/com/intellij/tasks/config/PasswordConversionEnforcer.java +++ b/plugins/tasks/tasks-core/src/com/intellij/tasks/config/PasswordConversionEnforcer.java @@ -1,22 +1,20 @@ -// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. +// Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. package com.intellij.tasks.config; -import com.intellij.ide.ApplicationInitializedListener; import com.intellij.ide.util.PropertiesComponent; -import com.intellij.openapi.application.ApplicationManager; +import com.intellij.openapi.application.PreloadingActivity; +import com.intellij.openapi.progress.ProgressIndicator; +import org.jetbrains.annotations.NotNull; -final class PasswordConversionEnforcer implements ApplicationInitializedListener { +final class PasswordConversionEnforcer extends PreloadingActivity { private static final String ENFORCED = "tasks.pass.word.conversion.enforced"; @Override - public void componentsInitialized() { - if (ApplicationManager.getApplication().isUnitTestMode()) { - return; - } - - if (!PropertiesComponent.getInstance().isValueSet(ENFORCED)) { + public void preload(@NotNull ProgressIndicator indicator) { + PropertiesComponent propertyComponent = PropertiesComponent.getInstance(); + if (!propertyComponent.isValueSet(ENFORCED)) { RecentTaskRepositories.getInstance().getState(); - PropertiesComponent.getInstance().setValue(ENFORCED, true); + propertyComponent.setValue(ENFORCED, true); } } }