package org.archive.util;
import java.util.logging.LogRecord;
import org.apache.log4j.Layout;
import org.apache.log4j.spi.LoggingEvent;
public class OneLineSimpleLayout extends Layout {
private OneLineSimpleLogger logger = new OneLineSimpleLogger();
@Override
public void activateOptions() {
}
@Override
public String format(LoggingEvent event) {
java.util.logging.Level level = convertLevel(event.getLevel());
LogRecord logRecord = new LogRecord(level, event.getMessage().toString());
logRecord.setLoggerName(event.getLoggerName());
logRecord.setMillis(event.getTimeStamp());
logRecord.setSourceClassName(event.getLoggerName());
logRecord.setSourceMethodName(event.getLocationInformation().getMethodName());
logRecord.setThreadID((int) Thread.currentThread().getId());
return logger.format(logRecord);
}
protected java.util.logging.Level convertLevel(org.apache.log4j.Level log4jLevel) {
switch (log4jLevel.toInt()) {
case org.apache.log4j.Level.TRACE_INT:
return java.util.logging.Level.FINER;
case org.apache.log4j.Level.DEBUG_INT:
return java.util.logging.Level.FINE;
case org.apache.log4j.Level.INFO_INT:
return java.util.logging.Level.INFO;
case org.apache.log4j.Level.WARN_INT:
return java.util.logging.Level.WARNING;
case org.apache.log4j.Level.ERROR_INT:
return java.util.logging.Level.SEVERE;
case org.apache.log4j.Level.FATAL_INT:
return java.util.logging.Level.SEVERE;
default:
return java.util.logging.Level.ALL;
}
}
@Override
public boolean ignoresThrowable() {
return true;
}
}