diff --git a/Plan/common/src/main/java/com/djrapitops/plan/system/settings/BukkitConfigSystem.java b/Plan/common/src/main/java/com/djrapitops/plan/system/settings/BukkitConfigSystem.java index f2b725cfa..0e5cd2dad 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/system/settings/BukkitConfigSystem.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/system/settings/BukkitConfigSystem.java @@ -16,10 +16,13 @@ */ package com.djrapitops.plan.system.settings; +import com.djrapitops.plan.api.exceptions.EnableException; import com.djrapitops.plan.system.file.PlanFiles; import com.djrapitops.plan.system.settings.changes.ConfigUpdater; import com.djrapitops.plan.system.settings.config.ConfigReader; import com.djrapitops.plan.system.settings.config.PlanConfig; +import com.djrapitops.plan.system.settings.network.ServerSettingsManager; +import com.djrapitops.plan.system.settings.paths.PluginSettings; import com.djrapitops.plan.system.settings.theme.Theme; import com.djrapitops.plugin.logging.console.PluginLogger; import com.djrapitops.plugin.logging.error.ErrorHandler; @@ -39,18 +42,35 @@ import java.io.IOException; public class BukkitConfigSystem extends ConfigSystem { private final ConfigUpdater configUpdater; + private final ServerSettingsManager serverSettingsManager; @Inject public BukkitConfigSystem( PlanFiles files, PlanConfig config, ConfigUpdater configUpdater, + ServerSettingsManager serverSettingsManager, Theme theme, PluginLogger logger, ErrorHandler errorHandler ) { super(files, config, theme, logger, errorHandler); this.configUpdater = configUpdater; + this.serverSettingsManager = serverSettingsManager; + } + + @Override + public void enable() throws EnableException { + super.enable(); + if (config.isTrue(PluginSettings.BUNGEE_COPY_CONFIG)) { + serverSettingsManager.enable(); + } + } + + @Override + public void disable() { + serverSettingsManager.disable(); + super.disable(); } @Override diff --git a/Plan/common/src/main/java/com/djrapitops/plan/system/settings/ProxyConfigSystem.java b/Plan/common/src/main/java/com/djrapitops/plan/system/settings/ProxyConfigSystem.java index 977552d4c..52fb7db58 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/system/settings/ProxyConfigSystem.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/system/settings/ProxyConfigSystem.java @@ -16,10 +16,12 @@ */ package com.djrapitops.plan.system.settings; +import com.djrapitops.plan.api.exceptions.EnableException; import com.djrapitops.plan.system.file.PlanFiles; import com.djrapitops.plan.system.settings.changes.ConfigUpdater; import com.djrapitops.plan.system.settings.config.ConfigReader; import com.djrapitops.plan.system.settings.config.PlanConfig; +import com.djrapitops.plan.system.settings.network.NetworkSettingManager; import com.djrapitops.plan.system.settings.theme.Theme; import com.djrapitops.plugin.logging.console.PluginLogger; import com.djrapitops.plugin.logging.error.ErrorHandler; @@ -39,18 +41,33 @@ import java.io.IOException; public class ProxyConfigSystem extends ConfigSystem { private final ConfigUpdater configUpdater; + private final NetworkSettingManager networkSettingManager; @Inject public ProxyConfigSystem( PlanFiles files, PlanConfig config, ConfigUpdater configUpdater, + NetworkSettingManager networkSettingManager, Theme theme, PluginLogger logger, ErrorHandler errorHandler ) { super(files, config, theme, logger, errorHandler); this.configUpdater = configUpdater; + this.networkSettingManager = networkSettingManager; + } + + @Override + public void enable() throws EnableException { + super.enable(); + networkSettingManager.enable(); + } + + @Override + public void disable() { + networkSettingManager.disable(); + super.disable(); } @Override diff --git a/Plan/common/src/main/java/com/djrapitops/plan/system/settings/SpongeConfigSystem.java b/Plan/common/src/main/java/com/djrapitops/plan/system/settings/SpongeConfigSystem.java index 04fa6fa95..8ed90a2cc 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/system/settings/SpongeConfigSystem.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/system/settings/SpongeConfigSystem.java @@ -20,6 +20,7 @@ import com.djrapitops.plan.api.exceptions.EnableException; import com.djrapitops.plan.system.file.PlanFiles; import com.djrapitops.plan.system.settings.changes.ConfigUpdater; import com.djrapitops.plan.system.settings.config.PlanConfig; +import com.djrapitops.plan.system.settings.network.ServerSettingsManager; import com.djrapitops.plan.system.settings.paths.DataGatheringSettings; import com.djrapitops.plan.system.settings.paths.WebserverSettings; import com.djrapitops.plan.system.settings.theme.Theme; @@ -45,11 +46,12 @@ public class SpongeConfigSystem extends BukkitConfigSystem { PlanFiles files, PlanConfig config, ConfigUpdater configUpdater, + ServerSettingsManager serverSettingsManager, Theme theme, PluginLogger logger, ErrorHandler errorHandler ) { - super(files, config, configUpdater, theme, logger, errorHandler); + super(files, config, configUpdater, serverSettingsManager, theme, logger, errorHandler); } @Override diff --git a/Plan/common/src/main/java/com/djrapitops/plan/system/settings/network/ServerSettingsManager.java b/Plan/common/src/main/java/com/djrapitops/plan/system/settings/network/ServerSettingsManager.java index 392ba4605..15e27fcd4 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/system/settings/network/ServerSettingsManager.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/system/settings/network/ServerSettingsManager.java @@ -1,6 +1,5 @@ package com.djrapitops.plan.system.settings.network; -import com.djrapitops.plan.api.exceptions.EnableException; import com.djrapitops.plan.system.SubSystem; import com.djrapitops.plan.system.database.DBSystem; import com.djrapitops.plan.system.database.databases.Database; @@ -70,7 +69,7 @@ public class ServerSettingsManager implements SubSystem { } @Override - public void enable() throws EnableException { + public void enable() { watcher = prepareFileWatcher(); scheduleDBCheckTask(); }