package org.robolectric.util; /** * Logger for Robolectric. For now, it simply prints messages to stdout. * * Logging can be enabled by setting the property: {@code robolectric.logging.enabled = true}. */ public class Logger { private static final String LOGGING_ENABLED = "robolectric.logging.enabled"; public static void strict(String message, Throwable e) { if (loggingEnabled()) { System.out.print("WARNING: "); System.out.println(message); e.printStackTrace(); } } public static void strict(String message, Object... args) { if (loggingEnabled()) { System.out.print("WARNING: "); System.out.println(String.format(message, args)); } } /** * Log an info message. * * @param message Message text. * @param args Message arguments. */ public static void info(String message, Object... args) { if (loggingEnabled()) { System.out.print("INFO: "); System.out.println(String.format(message, args)); } } /** * Log an error message. * * @param message Message text. * @param args Message arguments. */ public static void error(String message, Object... args) { System.err.print("ERROR: "); System.err.println(String.format(message, args)); } /** * Log a debug message. * * @param message Message text. * @param args Message arguments. */ public static void debug(String message, Object... args) { if (loggingEnabled()) { System.out.print("DEBUG: "); System.out.println(String.format(message, args)); } } private static boolean loggingEnabled() { return Boolean.getBoolean(LOGGING_ENABLED); } }