From 6c8a93dc1becfa1119b511cfbb71602be5d60bf0 Mon Sep 17 00:00:00 2001 From: Frank van der Heijden Date: Mon, 20 Jul 2020 02:06:28 +0200 Subject: [PATCH] Update on sync thread where possible --- .../bukkit/managers/BukkitTaskManager.java | 5 +++++ .../bungee/managers/BungeeTaskManager.java | 5 +++++ .../common/managers/AbstractTaskManager.java | 2 ++ .../common/tasks/UpdateCheckerTask.java | 18 ++++++++++-------- 4 files changed, 22 insertions(+), 8 deletions(-) diff --git a/Bukkit/src/main/java/net/frankheijden/serverutils/bukkit/managers/BukkitTaskManager.java b/Bukkit/src/main/java/net/frankheijden/serverutils/bukkit/managers/BukkitTaskManager.java index f6a3513..3438ea8 100644 --- a/Bukkit/src/main/java/net/frankheijden/serverutils/bukkit/managers/BukkitTaskManager.java +++ b/Bukkit/src/main/java/net/frankheijden/serverutils/bukkit/managers/BukkitTaskManager.java @@ -6,6 +6,11 @@ import org.bukkit.Bukkit; public class BukkitTaskManager extends AbstractTaskManager { + @Override + public void runTask(Runnable runnable) { + Bukkit.getScheduler().runTask(ServerUtils.getInstance(), runnable); + } + @Override public void runTaskAsynchronously(Runnable runnable) { Bukkit.getScheduler().runTaskAsynchronously(ServerUtils.getInstance(), runnable); diff --git a/Bungee/src/main/java/net/frankheijden/serverutils/bungee/managers/BungeeTaskManager.java b/Bungee/src/main/java/net/frankheijden/serverutils/bungee/managers/BungeeTaskManager.java index f21a09b..b4ee301 100644 --- a/Bungee/src/main/java/net/frankheijden/serverutils/bungee/managers/BungeeTaskManager.java +++ b/Bungee/src/main/java/net/frankheijden/serverutils/bungee/managers/BungeeTaskManager.java @@ -6,6 +6,11 @@ import net.md_5.bungee.api.ProxyServer; public class BungeeTaskManager extends AbstractTaskManager { + @Override + public void runTask(Runnable runnable) { + runTaskAsynchronously(runnable); + } + @Override public void runTaskAsynchronously(Runnable runnable) { ProxyServer.getInstance().getScheduler().runAsync(ServerUtils.getInstance(), runnable); diff --git a/Common/src/main/java/net/frankheijden/serverutils/common/managers/AbstractTaskManager.java b/Common/src/main/java/net/frankheijden/serverutils/common/managers/AbstractTaskManager.java index 7844677..533d0de 100644 --- a/Common/src/main/java/net/frankheijden/serverutils/common/managers/AbstractTaskManager.java +++ b/Common/src/main/java/net/frankheijden/serverutils/common/managers/AbstractTaskManager.java @@ -2,5 +2,7 @@ package net.frankheijden.serverutils.common.managers; public abstract class AbstractTaskManager { + public abstract void runTask(Runnable runnable); + public abstract void runTaskAsynchronously(Runnable runnable); } diff --git a/Common/src/main/java/net/frankheijden/serverutils/common/tasks/UpdateCheckerTask.java b/Common/src/main/java/net/frankheijden/serverutils/common/tasks/UpdateCheckerTask.java index 46f4ba8..b5ef68c 100644 --- a/Common/src/main/java/net/frankheijden/serverutils/common/tasks/UpdateCheckerTask.java +++ b/Common/src/main/java/net/frankheijden/serverutils/common/tasks/UpdateCheckerTask.java @@ -176,15 +176,17 @@ public class UpdateCheckerTask implements Runnable { } private void tryReloadPlugin() { - String downloadedVersion = versionManager.getDownloadedVersion(); + plugin.getTaskManager().runTask(() -> { + String downloadedVersion = versionManager.getDownloadedVersion(); - if (isStartupCheck()) { - plugin.getLogger().info(String.format(DOWNLOADED_RESTART, downloadedVersion)); - plugin.getPluginManager().reloadPlugin((Object)ServerUtilsApp.getPlatformPlugin()); - plugin.getLogger().info(String.format(UPGRADE_SUCCESS, downloadedVersion)); - } else { - broadcastDownloadStatus(downloadedVersion, false); - } + if (isStartupCheck()) { + plugin.getLogger().info(String.format(DOWNLOADED_RESTART, downloadedVersion)); + plugin.getPluginManager().reloadPlugin((Object)ServerUtilsApp.getPlatformPlugin()); + plugin.getLogger().info(String.format(UPGRADE_SUCCESS, downloadedVersion)); + } else { + broadcastDownloadStatus(downloadedVersion, false); + } + }); } private void broadcastDownloadStatus(String githubVersion, boolean isError) {