From 06ad159adf3256434264ce05e3fd992772d2ff92 Mon Sep 17 00:00:00 2001 From: Carl-Robert Linnupuu Date: Mon, 4 Dec 2023 21:56:51 +0200 Subject: [PATCH] fix: JetBrains internal API usage warnings --- .../ee/carlrobert/codegpt/CodeGPTPlugin.java | 19 ------------- .../codegpt/CodeGPTUpdateStartupActivity.java | 28 +++++++++++-------- 2 files changed, 16 insertions(+), 31 deletions(-) diff --git a/src/main/java/ee/carlrobert/codegpt/CodeGPTPlugin.java b/src/main/java/ee/carlrobert/codegpt/CodeGPTPlugin.java index 43649035..c2486b2a 100644 --- a/src/main/java/ee/carlrobert/codegpt/CodeGPTPlugin.java +++ b/src/main/java/ee/carlrobert/codegpt/CodeGPTPlugin.java @@ -5,15 +5,10 @@ import static java.util.Objects.requireNonNull; import com.intellij.ide.plugins.PluginManagerCore; import com.intellij.openapi.application.PathManager; import com.intellij.openapi.extensions.PluginId; -import com.intellij.openapi.progress.ProgressIndicator; import com.intellij.openapi.project.Project; -import com.intellij.openapi.updateSettings.impl.PluginDownloader; -import com.intellij.openapi.updateSettings.impl.UpdateChecker; import java.io.File; import java.nio.file.Path; import java.nio.file.Paths; -import java.util.Collection; -import java.util.Optional; import org.jetbrains.annotations.NotNull; public final class CodeGPTPlugin { @@ -50,18 +45,4 @@ public final class CodeGPTPlugin { public static @NotNull String getProjectIndexStorePath(@NotNull Project project) { return getIndexStorePath() + File.separator + project.getName(); } - - public static Optional tryFindAvailableUpdate( - @NotNull ProgressIndicator indicator) { - return findAvailableUpdates(indicator).stream() - .filter((update) -> CODEGPT_ID.equals(update.getId())) - .findFirst(); - } - - private static @NotNull Collection findAvailableUpdates( - @NotNull ProgressIndicator indicator) { - return UpdateChecker.getInternalPluginUpdates(null, indicator) - .getPluginUpdates() - .getAllEnabled(); - } } diff --git a/src/main/java/ee/carlrobert/codegpt/CodeGPTUpdateStartupActivity.java b/src/main/java/ee/carlrobert/codegpt/CodeGPTUpdateStartupActivity.java index 7563f918..8094101d 100644 --- a/src/main/java/ee/carlrobert/codegpt/CodeGPTUpdateStartupActivity.java +++ b/src/main/java/ee/carlrobert/codegpt/CodeGPTUpdateStartupActivity.java @@ -1,5 +1,8 @@ package ee.carlrobert.codegpt; +import static ee.carlrobert.codegpt.CodeGPTPlugin.CODEGPT_ID; + +import com.intellij.ide.plugins.InstalledPluginsState; import com.intellij.notification.NotificationAction; import com.intellij.notification.NotificationType; import com.intellij.openapi.application.ApplicationManager; @@ -50,18 +53,19 @@ public class CodeGPTUpdateStartupActivity implements StartupActivity.Background public void run(@NotNull ProgressIndicator indicator) { if (!myProject.isDisposed()) { - CodeGPTPlugin.tryFindAvailableUpdate(indicator) - .ifPresent((update) -> OverlayUtil.getDefaultNotification( - CodeGPTBundle.get("checkForUpdatesTask.notification.message"), - NotificationType.IDE_UPDATE) - .addAction(NotificationAction.createSimpleExpiring( - CodeGPTBundle.get("checkForUpdatesTask.notification.installButton"), - () -> ApplicationManager.getApplication() - .executeOnPooledThread(() -> installCodeGPTUpdate(myProject)))) - .addAction(NotificationAction.createSimpleExpiring( - CodeGPTBundle.get("checkForUpdatesTask.notification.hideButton"), - () -> ConfigurationState.getInstance().setCheckForPluginUpdates(false))) - .notify(myProject)); + if (InstalledPluginsState.getInstance().hasNewerVersion(CODEGPT_ID)) { + OverlayUtil.getDefaultNotification( + CodeGPTBundle.get("checkForUpdatesTask.notification.message"), + NotificationType.IDE_UPDATE) + .addAction(NotificationAction.createSimpleExpiring( + CodeGPTBundle.get("checkForUpdatesTask.notification.installButton"), + () -> ApplicationManager.getApplication() + .executeOnPooledThread(() -> installCodeGPTUpdate(myProject)))) + .addAction(NotificationAction.createSimpleExpiring( + CodeGPTBundle.get("checkForUpdatesTask.notification.hideButton"), + () -> ConfigurationState.getInstance().setCheckForPluginUpdates(false))) + .notify(myProject); + } } } }