71 lines
1.7 KiB
Java
71 lines
1.7 KiB
Java
package com.minster586.devmode;
|
|
|
|
import org.bukkit.plugin.Plugin;
|
|
|
|
public class DevModeManager {
|
|
|
|
public enum LogLevel {
|
|
MINIMAL,
|
|
VERBOSE,
|
|
FULL
|
|
}
|
|
|
|
private final Plugin plugin;
|
|
private final LogWriter logWriter;
|
|
|
|
private boolean devModeEnabled = false;
|
|
private LogLevel currentLogLevel = LogLevel.MINIMAL;
|
|
|
|
private boolean chatLoggingEnabled = true;
|
|
private boolean eventLoggingEnabled = true;
|
|
|
|
public DevModeManager(Plugin plugin, LogWriter logWriter) {
|
|
this.plugin = plugin;
|
|
this.logWriter = logWriter;
|
|
}
|
|
|
|
public Plugin getPlugin() {
|
|
return plugin;
|
|
}
|
|
|
|
public LogWriter getLogWriter() {
|
|
return logWriter;
|
|
}
|
|
|
|
public void setDevModeEnabled(boolean enabled) {
|
|
this.devModeEnabled = enabled;
|
|
plugin.getLogger().info("Dev Mode " + (enabled ? "enabled" : "disabled"));
|
|
}
|
|
|
|
public boolean isDevModeEnabled() {
|
|
return devModeEnabled;
|
|
}
|
|
|
|
public void setLogLevel(LogLevel level) {
|
|
this.currentLogLevel = level;
|
|
plugin.getLogger().info("Log level set to: " + level.name());
|
|
}
|
|
|
|
public LogLevel getLogLevel() {
|
|
return currentLogLevel;
|
|
}
|
|
|
|
public void setChatLoggingEnabled(boolean enabled) {
|
|
this.chatLoggingEnabled = enabled;
|
|
plugin.getLogger().info("Chat logging " + (enabled ? "enabled" : "disabled"));
|
|
}
|
|
|
|
public boolean isChatLoggingEnabled() {
|
|
return chatLoggingEnabled;
|
|
}
|
|
|
|
public void setEventLoggingEnabled(boolean enabled) {
|
|
this.eventLoggingEnabled = enabled;
|
|
plugin.getLogger().info("Event tracing " + (enabled ? "enabled" : "disabled"));
|
|
}
|
|
|
|
public boolean isEventLoggingEnabled() {
|
|
return eventLoggingEnabled;
|
|
}
|
|
}
|