Cleaned up TelnetLogger

This commit is contained in:
unknown 2014-03-20 18:08:27 +01:00
parent c7cf109425
commit 0316e52260
2 changed files with 46 additions and 64 deletions

View file

@ -1,12 +1,12 @@
package me.StevenLawson.BukkitTelnet; package me.StevenLawson.BukkitTelnet;
import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
import org.apache.commons.lang.exception.ExceptionUtils;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
import org.bukkit.plugin.Plugin;
public final class TelnetLogger public final class TelnetLogger
{ {
private static final Logger FALLBACK_LOGGER = Bukkit.getLogger();
private static Logger serverLogger = null; private static Logger serverLogger = null;
private static Logger pluginLogger = null; private static Logger pluginLogger = null;
@ -15,84 +15,65 @@ public final class TelnetLogger
throw new AssertionError(); 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) 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) 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) if (message instanceof Throwable)
{
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)
{ {
return (serverLogger != null ? serverLogger : FALLBACK_LOGGER); line = ExceptionUtils.getStackTrace((Throwable) message);
} }
else 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);
} }
} }

View file

@ -33,7 +33,7 @@ public final class ClientSession extends Thread
// //
private final SessionCommandSender commandSender; private final SessionCommandSender commandSender;
private final SessionLogAppender logAppender; private final SessionLogAppender logAppender;
private FilterMode filterMode = FilterMode.FULL; private FilterMode filterMode;
// //
private BufferedWriter writer; private BufferedWriter writer;
private BufferedReader reader; private BufferedReader reader;
@ -47,6 +47,7 @@ public final class ClientSession extends Thread
this.username = ""; this.username = "";
this.commandSender = new SessionCommandSender(this); this.commandSender = new SessionCommandSender(this);
this.logAppender = new SessionLogAppender(this); this.logAppender = new SessionLogAppender(this);
this.filterMode = FilterMode.FULL;
this.hasTerminated = false; this.hasTerminated = false;
TelnetLogger.info("Client connected: " + clientAddress); TelnetLogger.info("Client connected: " + clientAddress);