summaryrefslogtreecommitdiffstats
path: root/src/main/java/net/minecraft/server/ConsoleLogManager.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/net/minecraft/server/ConsoleLogManager.java')
-rw-r--r--src/main/java/net/minecraft/server/ConsoleLogManager.java94
1 files changed, 75 insertions, 19 deletions
diff --git a/src/main/java/net/minecraft/server/ConsoleLogManager.java b/src/main/java/net/minecraft/server/ConsoleLogManager.java
index 3301ec1f..98f9a8b1 100644
--- a/src/main/java/net/minecraft/server/ConsoleLogManager.java
+++ b/src/main/java/net/minecraft/server/ConsoleLogManager.java
@@ -2,24 +2,50 @@ package net.minecraft.server;
import java.util.logging.ConsoleHandler;
import java.util.logging.FileHandler;
+import java.util.logging.Handler;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.io.File; // CraftBukkit
-public class ConsoleLogManager {
+public class ConsoleLogManager implements IConsoleLogManager {
- public static Logger a = Logger.getLogger("Minecraft");
+ private final Logger a;
+ private final String b;
+ private final String c;
+ private final String d;
public static Logger global = Logger.getLogger(""); // CraftBukkit
- // CraftBukkit - change of method signature!
- public static void init(MinecraftServer server) {
- ConsoleLogFormatter consolelogformatter = new ConsoleLogFormatter(server.options.has("log-strip-color")); // CraftBukkit - pass strip color option
+ public ConsoleLogManager(String s, String s1, String s2) {
+ this.a = Logger.getLogger(s);
+ this.c = s;
+ this.d = s1;
+ this.b = s2;
+ this.b();
+ }
+
+ private void b() {
+ this.a.setUseParentHandlers(false);
+ Handler[] ahandler = this.a.getHandlers();
+ int i = ahandler.length;
+
+ for (int j = 0; j < i; ++j) {
+ Handler handler = ahandler[j];
+
+ this.a.removeHandler(handler);
+ }
+
+ ConsoleLogFormatter consolelogformatter = new ConsoleLogFormatter(this, (EmptyClass3) null);
- a.setUseParentHandlers(false);
// CraftBukkit start
+ MinecraftServer server = MinecraftServer.getServer();
ConsoleHandler consolehandler = new org.bukkit.craftbukkit.util.TerminalConsoleHandler(server.reader);
+ // CraftBukkit end
+ consolehandler.setFormatter(consolelogformatter);
+ this.a.addHandler(consolehandler);
+
+ // CraftBukkit start
for (java.util.logging.Handler handler : global.getHandlers()) {
global.removeHandler(handler);
}
@@ -28,8 +54,6 @@ public class ConsoleLogManager {
global.addHandler(consolehandler);
// CraftBukkit end
- a.addHandler(consolehandler);
-
try {
// CraftBukkit start
String pattern = (String) server.options.valueOf("log-pattern");
@@ -49,26 +73,26 @@ public class ConsoleLogManager {
parentPath = parent.getPath();
}
- int i = 0;
- while (i < parentPath.length()) {
- char ch = parentPath.charAt(i);
+ int j = 0;
+ while (j < parentPath.length()) {
+ char ch = parentPath.charAt(j);
char ch2 = 0;
- if (i + 1 < parentPath.length()) {
- ch2 = Character.toLowerCase(pattern.charAt(i + 1));
+ if (j + 1 < parentPath.length()) {
+ ch2 = Character.toLowerCase(pattern.charAt(j + 1));
}
if (ch == '%') {
if (ch2 == 'h') {
- i += 2;
+ j += 2;
fixedPattern.append(homeDir);
continue;
} else if (ch2 == 't') {
- i += 2;
+ j += 2;
fixedPattern.append(tmpDir);
continue;
} else if (ch2 == '%') {
// Even though we don't care about this we have to skip it to avoid matching %%t
- i += 2;
+ j += 2;
fixedPattern.append("%%");
continue;
} else if (ch2 != 0) {
@@ -77,7 +101,7 @@ public class ConsoleLogManager {
}
fixedPattern.append(ch);
- i++;
+ j++;
}
// Try to create needed parent directories
@@ -93,10 +117,42 @@ public class ConsoleLogManager {
// CraftBukkit end
filehandler.setFormatter(consolelogformatter);
- a.addHandler(filehandler);
+ this.a.addHandler(filehandler);
global.addHandler(filehandler); // CraftBukkit
} catch (Exception exception) {
- a.log(Level.WARNING, "Failed to log to server.log", exception);
+ this.a.log(Level.WARNING, "Failed to log " + this.c + " to " + this.b, exception);
}
}
+
+ public Logger getLogger() {
+ return this.a;
+ }
+
+ public void info(String s) {
+ this.a.log(Level.INFO, s);
+ }
+
+ public void warning(String s) {
+ this.a.log(Level.WARNING, s);
+ }
+
+ public void warning(String s, Object... aobject) {
+ this.a.log(Level.WARNING, s, aobject);
+ }
+
+ public void warning(String s, Throwable throwable) {
+ this.a.log(Level.WARNING, s, throwable);
+ }
+
+ public void severe(String s) {
+ this.a.log(Level.SEVERE, s);
+ }
+
+ public void severe(String s, Throwable throwable) {
+ this.a.log(Level.SEVERE, s, throwable);
+ }
+
+ static String a(ConsoleLogManager consolelogmanager) {
+ return consolelogmanager.d;
+ }
}