simplified the Logger interface

master
Stefan Dollase 2016-11-21 02:28:32 +01:00
parent 38f367327d
commit da8c8e3913
5 changed files with 24 additions and 98 deletions

View File

@ -8,6 +8,12 @@ import amidst.documentation.ThreadSafe;
// TODO: switch to standard logging framework like slf4j + log4j?
@ThreadSafe
public class AmidstLogger {
private static final String DEBUG_TAG = "debug";
private static final String INFO_TAG = "info";
private static final String WARNING_TAG = "warning";
private static final String ERROR_TAG = "error";
private static final String CRASH_TAG = "crash";
private static final ConsoleLogger CONSOLE_LOGGER = new ConsoleLogger();
private static final InMemoryLogger IN_MEMORY_LOGGER = new InMemoryLogger();
@ -36,28 +42,28 @@ public class AmidstLogger {
}
}
public static void info(String message) {
synchronized (LOG_LOCK) {
for (Logger listener : LOGGER.values()) {
listener.info(message);
}
}
}
public static void debug(String message) {
if (IS_SHOWING_DEBUG) {
synchronized (LOG_LOCK) {
for (Logger listener : LOGGER.values()) {
listener.debug(message);
listener.log(DEBUG_TAG, message);
}
}
}
}
public static void info(String message) {
synchronized (LOG_LOCK) {
for (Logger listener : LOGGER.values()) {
listener.log(INFO_TAG, message);
}
}
}
public static void warn(String message) {
synchronized (LOG_LOCK) {
for (Logger listener : LOGGER.values()) {
listener.warning(message);
listener.log(WARNING_TAG, message);
}
}
}
@ -72,7 +78,7 @@ public class AmidstLogger {
AmidstMessageBox.displayError("Error", message);
}
for (Logger listener : LOGGER.values()) {
listener.error(message);
listener.log(ERROR_TAG, message);
}
}
}
@ -81,9 +87,9 @@ public class AmidstLogger {
synchronized (LOG_LOCK) {
String exceptionText = MessageFormatter.format(e);
for (Logger listener : LOGGER.values()) {
listener.crash(message);
listener.log(CRASH_TAG, message);
if (e != null) {
listener.crash(exceptionText);
listener.log(CRASH_TAG, exceptionText);
}
}
}

View File

@ -5,31 +5,7 @@ import amidst.documentation.NotThreadSafe;
@NotThreadSafe
public class ConsoleLogger implements Logger {
@Override
public void debug(String message) {
printWithTag("debug", message);
}
@Override
public void info(String message) {
printWithTag("info", message);
}
@Override
public void warning(String message) {
printWithTag("warning", message);
}
@Override
public void error(String message) {
printWithTag("error", message);
}
@Override
public void crash(String message) {
printWithTag("crash", message);
}
private void printWithTag(String tag, String message) {
public void log(String tag, String message) {
System.out.println("[" + tag + "] " + message);
}
}

View File

@ -82,7 +82,7 @@ public class FileLogger implements Logger {
@CalledOnlyBy(AmidstThread.STARTUP)
private void writeWelcomeMessageToFile() {
write("log", "New FileLogger started.");
log("log", "New FileLogger started.");
}
@CalledOnlyBy(AmidstThread.STARTUP)
@ -123,31 +123,7 @@ public class FileLogger implements Logger {
}
@Override
public void debug(String message) {
write("debug", message);
}
@Override
public void info(String message) {
write("info", message);
}
@Override
public void warning(String message) {
write("warning", message);
}
@Override
public void error(String message) {
write("error", message);
}
@Override
public void crash(String message) {
write("crash", message);
}
private void write(String tag, String message) {
public void log(String tag, String message) {
String currentTime = new Timestamp(new Date().getTime()).toString();
StringBuilder builder = new StringBuilder()
.append(currentTime)

View File

@ -7,31 +7,7 @@ public class InMemoryLogger implements Logger {
private StringBuffer buffer = new StringBuffer();
@Override
public void debug(String message) {
write("debug", message);
}
@Override
public void info(String message) {
write("info", message);
}
@Override
public void warning(String message) {
write("warning", message);
}
@Override
public void error(String message) {
write("error", message);
}
@Override
public void crash(String message) {
write("crash", message);
}
private void write(String tag, String message) {
public void log(String tag, String message) {
buffer.append("[").append(tag).append("] ").append(message).append("\n");
}

View File

@ -1,13 +1,5 @@
package amidst.logging;
public interface Logger {
public void debug(String messages);
public void info(String messages);
public void warning(String messages);
public void error(String messages);
public void crash(String message);
void log(String tag, String message);
}