From 4d695a1d7d4c4fb8a6634e0196e6b46b2f9aed22 Mon Sep 17 00:00:00 2001 From: Reinhard Pointner Date: Thu, 10 Mar 2016 14:38:34 +0000 Subject: [PATCH] Refactor logging --- source/net/filebot/Logging.java | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/source/net/filebot/Logging.java b/source/net/filebot/Logging.java index 91fcfa58..dfaade7f 100644 --- a/source/net/filebot/Logging.java +++ b/source/net/filebot/Logging.java @@ -14,23 +14,23 @@ import java.util.logging.SimpleFormatter; import java.util.logging.StreamHandler; import java.util.regex.Pattern; -import net.filebot.util.SystemProperty; - import org.codehaus.groovy.runtime.StackTraceUtils; +import net.filebot.util.SystemProperty; + public final class Logging { private static final SystemProperty anonymizePattern = SystemProperty.of("net.filebot.logging.anonymize", Pattern::compile); private static final SystemProperty debugLevel = SystemProperty.of("net.filebot.logging.debug", Level::parse, Level.CONFIG); - public static final Logger log = getConsoleLogger("net.filebot.console", Level.ALL, new ConsoleFormatter(anonymizePattern.get())); - public static final Logger debug = getConsoleLogger("net.filebot.debug", debugLevel.get(), new ConsoleFormatter(anonymizePattern.get())); + public static final Logger log = createConsoleLogger("net.filebot.console", Level.ALL); + public static final Logger debug = createConsoleLogger("net.filebot.debug", debugLevel.get()); - public static Logger getConsoleLogger(String name, Level level, Formatter formatter) { + public static Logger createConsoleLogger(String name, Level level) { Logger log = Logger.getLogger(name); - log.setLevel(level); log.setUseParentHandlers(false); - log.addHandler(new ConsoleHandler(level, formatter)); + log.setLevel(level); + log.addHandler(createConsoleHandler(level)); return log; } @@ -40,17 +40,19 @@ public final class Logging { return handler; } + public static ConsoleHandler createConsoleHandler(Level level) { + ConsoleHandler handler = new ConsoleHandler(); + handler.setLevel(level); + handler.setFormatter(new ConsoleFormatter(anonymizePattern.get())); + return handler; + } + public static Supplier format(String format, Object... args) { return () -> String.format(format, args); } public static class ConsoleHandler extends Handler { - public ConsoleHandler(Level level, Formatter formatter) { - setLevel(level); - setFormatter(formatter); - } - @Override public void publish(LogRecord record) { // use either System.out or System.err depending on the severity of the error