mirror of
https://github.com/asofold/CompatNoCheatPlus.git
synced 2024-11-28 12:55:25 +01:00
Add AbstractConfigurableHook.
This commit is contained in:
parent
e26e9d1407
commit
d93c7d1166
@ -0,0 +1,56 @@
|
|||||||
|
package me.asofold.bpl.cncp.hooks;
|
||||||
|
|
||||||
|
import me.asofold.bpl.cncp.config.compatlayer.CompatConfig;
|
||||||
|
import me.asofold.bpl.cncp.config.compatlayer.CompatConfigFactory;
|
||||||
|
import me.asofold.bpl.cncp.config.compatlayer.ConfigUtil;
|
||||||
|
import me.asofold.bpl.cncp.hooks.generic.ConfigurableHook;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reads an enabled flag from the config (true by default). The prefix given will be something like "hooks.", so add your hook name to the path like:<br>
|
||||||
|
* prefix + "myhook.extra-config"
|
||||||
|
* @author mc_dev
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class AbstractConfigurableHook extends AbstractHook implements
|
||||||
|
ConfigurableHook {
|
||||||
|
|
||||||
|
protected final String configPrefix;
|
||||||
|
protected final String hookName, hookVersion;
|
||||||
|
|
||||||
|
protected boolean enabled = true;
|
||||||
|
|
||||||
|
public AbstractConfigurableHook(String hookName, String hookVersion, String configPrefix){
|
||||||
|
this.configPrefix = configPrefix;
|
||||||
|
this.hookName = hookName;
|
||||||
|
this.hookVersion = hookVersion;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getHookName() {
|
||||||
|
return hookName;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getHookVersion() {
|
||||||
|
return hookVersion;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void applyConfig(CompatConfig cfg, String prefix) {
|
||||||
|
enabled = cfg.getBoolean(prefix + configPrefix + "enabled", true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean updateConfig(CompatConfig cfg, String prefix) {
|
||||||
|
CompatConfig defaults = CompatConfigFactory.getConfig(null);
|
||||||
|
defaults.set(prefix + configPrefix + "enabled", true);
|
||||||
|
return ConfigUtil.forceDefaults(defaults, cfg);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isEnabled() {
|
||||||
|
return enabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user