Added SettingsManagers to ConfigSystems

This commit is contained in:
Rsl1122 2018-12-24 11:31:26 +02:00
parent 4791657439
commit b827e83dd5
4 changed files with 41 additions and 3 deletions

View File

@ -16,10 +16,13 @@
*/ */
package com.djrapitops.plan.system.settings; 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.file.PlanFiles;
import com.djrapitops.plan.system.settings.changes.ConfigUpdater; import com.djrapitops.plan.system.settings.changes.ConfigUpdater;
import com.djrapitops.plan.system.settings.config.ConfigReader; import com.djrapitops.plan.system.settings.config.ConfigReader;
import com.djrapitops.plan.system.settings.config.PlanConfig; 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.plan.system.settings.theme.Theme;
import com.djrapitops.plugin.logging.console.PluginLogger; import com.djrapitops.plugin.logging.console.PluginLogger;
import com.djrapitops.plugin.logging.error.ErrorHandler; import com.djrapitops.plugin.logging.error.ErrorHandler;
@ -39,18 +42,35 @@ import java.io.IOException;
public class BukkitConfigSystem extends ConfigSystem { public class BukkitConfigSystem extends ConfigSystem {
private final ConfigUpdater configUpdater; private final ConfigUpdater configUpdater;
private final ServerSettingsManager serverSettingsManager;
@Inject @Inject
public BukkitConfigSystem( public BukkitConfigSystem(
PlanFiles files, PlanFiles files,
PlanConfig config, PlanConfig config,
ConfigUpdater configUpdater, ConfigUpdater configUpdater,
ServerSettingsManager serverSettingsManager,
Theme theme, Theme theme,
PluginLogger logger, PluginLogger logger,
ErrorHandler errorHandler ErrorHandler errorHandler
) { ) {
super(files, config, theme, logger, errorHandler); super(files, config, theme, logger, errorHandler);
this.configUpdater = configUpdater; 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 @Override

View File

@ -16,10 +16,12 @@
*/ */
package com.djrapitops.plan.system.settings; 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.file.PlanFiles;
import com.djrapitops.plan.system.settings.changes.ConfigUpdater; import com.djrapitops.plan.system.settings.changes.ConfigUpdater;
import com.djrapitops.plan.system.settings.config.ConfigReader; import com.djrapitops.plan.system.settings.config.ConfigReader;
import com.djrapitops.plan.system.settings.config.PlanConfig; 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.plan.system.settings.theme.Theme;
import com.djrapitops.plugin.logging.console.PluginLogger; import com.djrapitops.plugin.logging.console.PluginLogger;
import com.djrapitops.plugin.logging.error.ErrorHandler; import com.djrapitops.plugin.logging.error.ErrorHandler;
@ -39,18 +41,33 @@ import java.io.IOException;
public class ProxyConfigSystem extends ConfigSystem { public class ProxyConfigSystem extends ConfigSystem {
private final ConfigUpdater configUpdater; private final ConfigUpdater configUpdater;
private final NetworkSettingManager networkSettingManager;
@Inject @Inject
public ProxyConfigSystem( public ProxyConfigSystem(
PlanFiles files, PlanFiles files,
PlanConfig config, PlanConfig config,
ConfigUpdater configUpdater, ConfigUpdater configUpdater,
NetworkSettingManager networkSettingManager,
Theme theme, Theme theme,
PluginLogger logger, PluginLogger logger,
ErrorHandler errorHandler ErrorHandler errorHandler
) { ) {
super(files, config, theme, logger, errorHandler); super(files, config, theme, logger, errorHandler);
this.configUpdater = configUpdater; 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 @Override

View File

@ -20,6 +20,7 @@ import com.djrapitops.plan.api.exceptions.EnableException;
import com.djrapitops.plan.system.file.PlanFiles; import com.djrapitops.plan.system.file.PlanFiles;
import com.djrapitops.plan.system.settings.changes.ConfigUpdater; import com.djrapitops.plan.system.settings.changes.ConfigUpdater;
import com.djrapitops.plan.system.settings.config.PlanConfig; 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.DataGatheringSettings;
import com.djrapitops.plan.system.settings.paths.WebserverSettings; import com.djrapitops.plan.system.settings.paths.WebserverSettings;
import com.djrapitops.plan.system.settings.theme.Theme; import com.djrapitops.plan.system.settings.theme.Theme;
@ -45,11 +46,12 @@ public class SpongeConfigSystem extends BukkitConfigSystem {
PlanFiles files, PlanFiles files,
PlanConfig config, PlanConfig config,
ConfigUpdater configUpdater, ConfigUpdater configUpdater,
ServerSettingsManager serverSettingsManager,
Theme theme, Theme theme,
PluginLogger logger, PluginLogger logger,
ErrorHandler errorHandler ErrorHandler errorHandler
) { ) {
super(files, config, configUpdater, theme, logger, errorHandler); super(files, config, configUpdater, serverSettingsManager, theme, logger, errorHandler);
} }
@Override @Override

View File

@ -1,6 +1,5 @@
package com.djrapitops.plan.system.settings.network; 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.SubSystem;
import com.djrapitops.plan.system.database.DBSystem; import com.djrapitops.plan.system.database.DBSystem;
import com.djrapitops.plan.system.database.databases.Database; import com.djrapitops.plan.system.database.databases.Database;
@ -70,7 +69,7 @@ public class ServerSettingsManager implements SubSystem {
} }
@Override @Override
public void enable() throws EnableException { public void enable() {
watcher = prepareFileWatcher(); watcher = prepareFileWatcher();
scheduleDBCheckTask(); scheduleDBCheckTask();
} }