X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fbin%2FConsole.java;h=1bb81622fac7dc1831e426af83d1f2785e7f7fbc;hb=4a28fee3e0c129a01268d26e1396b045bd893fb8;hp=4b18484de686575c3b5f331ac4017ab3b2857eb8;hpb=79456f40b33e73e2fb5420a3287ae80854281ef6;p=jalview.git diff --git a/src/jalview/bin/Console.java b/src/jalview/bin/Console.java index 4b18484..1bb8162 100644 --- a/src/jalview/bin/Console.java +++ b/src/jalview/bin/Console.java @@ -20,10 +20,9 @@ */ package jalview.bin; -import java.util.Locale; +import java.io.PrintStream; import jalview.log.JLogger; -import jalview.log.JLoggerI; import jalview.log.JLoggerI.LogLevel; import jalview.log.JLoggerLog4j; import jalview.util.ChannelProperties; @@ -43,8 +42,8 @@ public class Console } else { - System.out.println(message); - t.printStackTrace(); + outPrintln(message); + Console.printStackTrace(t); } } @@ -57,7 +56,7 @@ public class Console } else { - System.out.println(message); + outPrintln(message); } } @@ -70,8 +69,8 @@ public class Console } else { - System.out.println(message); - t.printStackTrace(); + outPrintln(message); + Console.printStackTrace(t); } } @@ -83,7 +82,7 @@ public class Console } else { - System.out.println(message); + outPrintln(message); } } @@ -96,8 +95,8 @@ public class Console } else { - System.out.println(message); - t.printStackTrace(); + outPrintln(message); + Console.printStackTrace(t); } } @@ -110,7 +109,7 @@ public class Console } else { - System.out.println(message); + outPrintln(message); } } @@ -123,7 +122,7 @@ public class Console } else { - System.out.println(message); + outPrintln(message); } } @@ -135,8 +134,8 @@ public class Console } else { - System.out.println(message); - t.printStackTrace(); + outPrintln(message); + Console.printStackTrace(t); } } @@ -149,7 +148,7 @@ public class Console } else { - System.err.println(message); + jalview.bin.Console.errPrintln(message); } } @@ -162,8 +161,8 @@ public class Console } else { - System.err.println(message); - t.printStackTrace(System.err); + jalview.bin.Console.errPrintln(message); + Console.printStackTrace(t); } } @@ -176,7 +175,7 @@ public class Console } else { - System.err.println(message); + jalview.bin.Console.errPrintln(message); } } @@ -189,8 +188,8 @@ public class Console } else { - System.err.println(message); - t.printStackTrace(System.err); + jalview.bin.Console.errPrintln(message); + Console.printStackTrace(t); } } @@ -220,6 +219,11 @@ public class Console return JLogger.toLevel(level); } + public static JLogger getLogger() + { + return log; + } + public static boolean initLogger() { return initLogger(null); @@ -235,16 +239,20 @@ public class Console { JLogger.LogLevel logLevel = JLogger.LogLevel.INFO; - if (JLogger.isLevel(providedLogLevel)) + if (providedLogLevel != null && JLogger.isLevel(providedLogLevel)) + { logLevel = Console.getLogLevel(providedLogLevel); + } else + { logLevel = getCachedLogLevel(); + } if (!Platform.isJS()) { if (!Jalview.quiet()) { - System.err.println( + jalview.bin.Console.errPrintln( "Setting initial log level to " + logLevel.name()); } Log4j.init(logLevel); @@ -258,8 +266,9 @@ public class Console log = JLoggerLog4j.getLogger(Cache.JALVIEW_LOGGER_NAME, logLevel); } catch (NoClassDefFoundError e) { - System.err.println("Could not initialise the logger framework"); - e.printStackTrace(); + jalview.bin.Console + .errPrintln("Could not initialise the logger framework"); + Console.printStackTrace(e); } // Test message @@ -281,22 +290,116 @@ public class Console public static void setLogLevel(String logLevelString) { - for (LogLevel logLevel : JLoggerI.LogLevel.values()) + LogLevel l = null; + try + { + l = LogLevel.valueOf(logLevelString); + } catch (IllegalArgumentException | NullPointerException e1) { - if (logLevel.toString().toLowerCase(Locale.ROOT) - .equals(logLevelString.toLowerCase(Locale.ROOT))) + Console.debug("Invalid log level '" + logLevelString + "'"); + return; + } + if (l != null) + { + log.setLevel(l); + if (!Platform.isJS()) { - log.setLevel(logLevel); - if (!Platform.isJS()) - { - Log4j.init(logLevel); - } - JLoggerLog4j.getLogger("org.apache.axis", logLevel); - break; + Log4j.init(l); } + JLoggerLog4j.getLogger("org.apache.axis", l); } } + public static void outPrint() + { + outPrint(""); + } + + public static void outPrintln() + { + outPrintln(""); + } + + public static void outPrint(Object message) + { + outPrintMessage(message, false, false); + } + + public static void outPrint(Object message, boolean forceStdout) + { + outPrintMessage(message, false, forceStdout); + } + + public static void outPrintln(Object message) + { + outPrintMessage(message, true, false); + } + + public static PrintStream outputStream(boolean forceStdout) + { + // send message to stderr if an output file to stdout is expected + if (!forceStdout && Jalview.getInstance() != null + && Jalview.getInstance().getBootstrapArgs() != null + && Jalview.getInstance().getBootstrapArgs().outputToStdout()) + { + return System.err; + } + else + { + return System.out; + } + } + + public static void outPrintMessage(Object message, boolean newline, + boolean forceStdout) + { + PrintStream ps = outputStream(forceStdout); + if (newline) + { + ps.println(message); + } + else + { + ps.print(message); + } + } + + public static void errPrint() + { + errPrint(""); + } + + public static void errPrintln() + { + errPrintln(""); + } + + public static void errPrint(Object message) + { + System.err.print(message); + } + + public static void errPrintln(Object message) + { + System.err.println(message); + } + + public static void debugPrintStackTrace(Throwable t) + { + if (!isDebugEnabled()) + { + return; + } + // send message to stderr if output to stdout is expected + printStackTrace(t); + } + + public static void printStackTrace(Throwable t) + { + // send message to stderr if output to stdout is expected + t.printStackTrace(System.err); + } + public final static String LOGGING_TEST_MESSAGE = "Logging to STDERR"; -} +} \ No newline at end of file