diff --git a/Plan/src/main/java/com/djrapitops/plan/PlanBungee.java b/Plan/src/main/java/com/djrapitops/plan/PlanBungee.java index d62d2a273..4f8820276 100644 --- a/Plan/src/main/java/com/djrapitops/plan/PlanBungee.java +++ b/Plan/src/main/java/com/djrapitops/plan/PlanBungee.java @@ -6,6 +6,7 @@ package main.java.com.djrapitops.plan; import com.djrapitops.plugin.BungeePlugin; import com.djrapitops.plugin.settings.ColorScheme; +import com.djrapitops.plugin.task.AbsRunnable; import main.java.com.djrapitops.plan.api.IPlan; import main.java.com.djrapitops.plan.api.exceptions.DatabaseInitException; import main.java.com.djrapitops.plan.command.commands.ReloadCommand; @@ -38,7 +39,7 @@ public class PlanBungee extends BungeePlugin implements IPlan { private WebServer webServer; private Database db; private BungeeServerInfoManager serverInfoManager; - private InformationManager infoManager; + private BungeeInformationManager infoManager; private ServerVariableHolder variableHolder; private ProcessingQueue processingQueue; @@ -81,14 +82,20 @@ public class PlanBungee extends BungeePlugin implements IPlan { webServer.initServer(); - infoManager.attemptConnection(); - if (!webServer.isEnabled()) { Log.error("WebServer was not successfully initialized."); disablePlugin(); return; } + getRunnableFactory().createNew("Enable Bukkit Connection Task", new AbsRunnable() { + @Override + public void run() { + infoManager.attemptConnection(); + infoManager.sendConfigSettings(); + } + }).runTaskAsynchronously(); + getProxy().registerChannel("Plan"); registerListener(new BungeePluginChannelListener(this)); diff --git a/Plan/src/main/java/com/djrapitops/plan/systems/info/BungeeInformationManager.java b/Plan/src/main/java/com/djrapitops/plan/systems/info/BungeeInformationManager.java index 5ba8b0c17..1a9dfd748 100644 --- a/Plan/src/main/java/com/djrapitops/plan/systems/info/BungeeInformationManager.java +++ b/Plan/src/main/java/com/djrapitops/plan/systems/info/BungeeInformationManager.java @@ -353,8 +353,13 @@ public class BungeeInformationManager extends InformationManager { @Override public void updateNetworkPageContent() { Collection online = serverInfoManager.getOnlineBukkitServers(); - bukkitServers.values().stream() - .filter(s -> !online.contains(s)).map(ServerInfo::getUuid) + online.stream().map(ServerInfo::getUuid) .forEach(this::removeNetworkPageContent); } + + public void sendConfigSettings() { + Collection online = serverInfoManager.getOnlineBukkitServers(); + online.stream().map(ServerInfo::getUuid) + .forEach(serverInfoManager::sendConfigSettings); + } } diff --git a/Plan/src/main/java/com/djrapitops/plan/systems/info/server/BungeeServerInfoManager.java b/Plan/src/main/java/com/djrapitops/plan/systems/info/server/BungeeServerInfoManager.java index 26d8dc81c..2817fea6d 100644 --- a/Plan/src/main/java/com/djrapitops/plan/systems/info/server/BungeeServerInfoManager.java +++ b/Plan/src/main/java/com/djrapitops/plan/systems/info/server/BungeeServerInfoManager.java @@ -97,7 +97,7 @@ public class BungeeServerInfoManager { } } - private void sendConfigSettings(UUID serverUUID) { + public void sendConfigSettings(UUID serverUUID) { try { ServerInfo server = bukkitServers.get(serverUUID); if (server == null) {