diff --git a/src/me/StevenLawson/BukkitTelnet/TelnetLogger.java b/src/me/StevenLawson/BukkitTelnet/TelnetLogger.java index 78a5df0..ca2c994 100644 --- a/src/me/StevenLawson/BukkitTelnet/TelnetLogger.java +++ b/src/me/StevenLawson/BukkitTelnet/TelnetLogger.java @@ -1,12 +1,12 @@ package me.StevenLawson.BukkitTelnet; -import java.util.logging.Level; import java.util.logging.Logger; +import org.apache.commons.lang.exception.ExceptionUtils; import org.bukkit.Bukkit; +import org.bukkit.plugin.Plugin; public final class TelnetLogger { - private static final Logger FALLBACK_LOGGER = Bukkit.getLogger(); private static Logger serverLogger = null; private static Logger pluginLogger = null; @@ -15,84 +15,65 @@ public final class TelnetLogger throw new AssertionError(); } - // Level.INFO: + public static void setServerLogger(Logger serverLogger) + { + TelnetLogger.serverLogger = serverLogger; + } + + public static void setPluginLogger(Logger pluginLogger) + { + TelnetLogger.pluginLogger = pluginLogger; + } + + public static void rawInfo(String message) + { + serverLogger.info(message); + } + public static void info(String message) { - info(message, false); + pluginLogger.info(message); } - public static void info(String message, boolean raw) + public static void rawWarning(String message) { - log(Level.INFO, message, raw); + serverLogger.warning(message); } - public static void info(Throwable ex) - { - log(Level.INFO, ex); - } - - // Level.WARNING: public static void warning(String message) { - info(message, false); + pluginLogger.warning(message); } - public static void warning(String message, boolean raw) + public static void rawSevere(Object message) { - log(Level.WARNING, message, raw); - } + final String line; - public static void warning(Throwable ex) - { - log(Level.WARNING, ex); - } - - // Level.SEVERE: - public static void severe(String message) - { - info(message, false); - } - - public static void severe(String message, boolean raw) - { - log(Level.SEVERE, message, raw); - } - - public static void severe(Throwable ex) - { - log(Level.SEVERE, ex); - } - - // Utility - private static void log(Level level, String message, boolean raw) - { - getLogger(raw).log(level, message); - } - - private static void log(Level level, Throwable throwable) - { - getLogger(false).log(level, null, throwable); - } - - public static void setServerLogger(Logger logger) - { - serverLogger = logger; - } - - public static void setPluginLogger(Logger logger) - { - pluginLogger = logger; - } - - public static Logger getLogger(boolean raw) - { - if (raw || pluginLogger == null) + if (message instanceof Throwable) { - return (serverLogger != null ? serverLogger : FALLBACK_LOGGER); + line = ExceptionUtils.getStackTrace((Throwable) message); } else { - return pluginLogger; + line = String.valueOf(message); } + + serverLogger.severe(line); + } + + public static void severe(Object message) + { + final String line; + + if (message instanceof Throwable) + { + line = ExceptionUtils.getStackTrace((Throwable) message); + } + else + { + line = String.valueOf(message); + } + + pluginLogger.severe(line); } } diff --git a/src/me/StevenLawson/BukkitTelnet/session/ClientSession.java b/src/me/StevenLawson/BukkitTelnet/session/ClientSession.java index d0b9ada..86cc101 100644 --- a/src/me/StevenLawson/BukkitTelnet/session/ClientSession.java +++ b/src/me/StevenLawson/BukkitTelnet/session/ClientSession.java @@ -33,7 +33,7 @@ public final class ClientSession extends Thread // private final SessionCommandSender commandSender; private final SessionLogAppender logAppender; - private FilterMode filterMode = FilterMode.FULL; + private FilterMode filterMode; // private BufferedWriter writer; private BufferedReader reader; @@ -47,6 +47,7 @@ public final class ClientSession extends Thread this.username = ""; this.commandSender = new SessionCommandSender(this); this.logAppender = new SessionLogAppender(this); + this.filterMode = FilterMode.FULL; this.hasTerminated = false; TelnetLogger.info("Client connected: " + clientAddress);