java-commons/commons-logger/src/main/java/io/gitlab/jfronny/commons/logger/CompactLogger.java

356 lines
8.6 KiB
Java

package io.gitlab.jfronny.commons.logger;
import io.gitlab.jfronny.commons.StringFormatter;
import org.slf4j.Logger;
import org.slf4j.Marker;
import org.slf4j.event.Level;
import org.slf4j.helpers.MessageFormatter;
public interface CompactLogger extends Logger {
Level getLevel();
@Override
default boolean isTraceEnabled() {
return getLevel().compareTo(Level.TRACE) >= 0;
}
@Override
default void trace(String msg) {
if (isTraceEnabled()) {
if (isDebugEnabled()) {
debug(msg);
} else {
info(msg);
}
}
}
@Override
default void trace(String format, Object arg) {
trace(format(format, arg));
}
@Override
default void trace(String format, Object arg1, Object arg2) {
trace(format(format, arg1, arg2));
}
@Override
default void trace(String format, Object... arguments) {
trace(format(format, arguments));
}
@Override
default void trace(String msg, Throwable t) {
trace(format(msg, t));
}
@Override
default boolean isTraceEnabled(Marker marker) {
return getLevel().compareTo(Level.TRACE) >= 0;
}
@Override
default void trace(Marker marker, String msg) {
trace(format(marker, msg));
}
@Override
default void trace(Marker marker, String format, Object arg) {
trace(marker, format(format, arg));
}
@Override
default void trace(Marker marker, String format, Object arg1, Object arg2) {
trace(marker, format(format, arg1, arg2));
}
@Override
default void trace(Marker marker, String format, Object... argArray) {
trace(marker, format(format, argArray));
}
@Override
default void trace(Marker marker, String msg, Throwable t) {
trace(marker, format(msg, t));
}
@Override
default boolean isDebugEnabled() {
return getLevel().compareTo(Level.DEBUG) >= 0;
}
@Override
default void debug(String msg) {
if (isDebugEnabled()) {
info(msg);
}
}
@Override
default void debug(String format, Object arg) {
debug(format(format, arg));
}
@Override
default void debug(String format, Object arg1, Object arg2) {
debug(format(format, arg1, arg2));
}
@Override
default void debug(String format, Object... arguments) {
debug(format(format, arguments));
}
@Override
default void debug(String msg, Throwable t) {
debug(format(msg, t));
}
@Override
default boolean isDebugEnabled(Marker marker) {
return getLevel().compareTo(Level.DEBUG) >= 0;
}
@Override
default void debug(Marker marker, String msg) {
debug(format(marker, msg));
}
@Override
default void debug(Marker marker, String format, Object arg) {
debug(marker, format(format, arg));
}
@Override
default void debug(Marker marker, String format, Object arg1, Object arg2) {
debug(marker, format(format, arg1, arg2));
}
@Override
default void debug(Marker marker, String format, Object... arguments) {
debug(marker, format(format, arguments));
}
@Override
default void debug(Marker marker, String msg, Throwable t) {
debug(marker, format(msg, t));
}
@Override
default boolean isInfoEnabled() {
return getLevel().compareTo(Level.INFO) >= 0;
}
@Override
void info(String msg);
@Override
default void info(String format, Object arg) {
info(format(format, arg));
}
@Override
default void info(String format, Object arg1, Object arg2) {
info(format(format, arg1, arg2));
}
@Override
default void info(String format, Object... arguments) {
info(format(format, arguments));
}
@Override
default void info(String msg, Throwable t) {
info(format(msg, t));
}
@Override
default boolean isInfoEnabled(Marker marker) {
return getLevel().compareTo(Level.INFO) >= 0;
}
@Override
default void info(Marker marker, String msg) {
info(format(marker, msg));
}
@Override
default void info(Marker marker, String format, Object arg) {
info(marker, format(format, arg));
}
@Override
default void info(Marker marker, String format, Object arg1, Object arg2) {
info(marker, format(format, arg1, arg2));
}
@Override
default void info(Marker marker, String format, Object... arguments) {
info(marker, format(format, arguments));
}
@Override
default void info(Marker marker, String msg, Throwable t) {
info(marker, format(msg, t));
}
@Override
default boolean isWarnEnabled() {
return getLevel().compareTo(Level.WARN) >= 0;
}
@Override
default void warn(String msg) {
if (isWarnEnabled()) {
info(msg);
}
}
@Override
default void warn(String format, Object arg) {
warn(format(format, arg));
}
@Override
default void warn(String format, Object... arguments) {
warn(format(format, arguments));
}
@Override
default void warn(String format, Object arg1, Object arg2) {
warn(format(format, arg1, arg2));
}
@Override
default void warn(String msg, Throwable t) {
warn(format(msg, t));
}
@Override
default boolean isWarnEnabled(Marker marker) {
return getLevel().compareTo(Level.WARN) >= 0;
}
@Override
default void warn(Marker marker, String msg) {
warn(format(marker, msg));
}
@Override
default void warn(Marker marker, String format, Object arg) {
warn(marker, format(format, arg));
}
@Override
default void warn(Marker marker, String format, Object arg1, Object arg2) {
warn(marker, format(format, arg1, arg2));
}
@Override
default void warn(Marker marker, String format, Object... arguments) {
warn(marker, format(format, arguments));
}
@Override
default void warn(Marker marker, String msg, Throwable t) {
warn(marker, format(msg, t));
}
@Override
default boolean isErrorEnabled() {
return getLevel().compareTo(Level.ERROR) >= 0;
}
@Override
default void error(String msg) {
if (isErrorEnabled()) {
if (isWarnEnabled()) {
warn(msg);
} else {
info(msg);
}
}
}
@Override
default void error(String format, Object arg) {
error(format(format, arg));
}
@Override
default void error(String format, Object arg1, Object arg2) {
error(format(format, arg1, arg2));
}
@Override
default void error(String format, Object... arguments) {
error(format(format, arguments));
}
@Override
default void error(String msg, Throwable t) {
error(format(msg, t));
}
@Override
default boolean isErrorEnabled(Marker marker) {
return getLevel().compareTo(Level.ERROR) >= 0;
}
@Override
default void error(Marker marker, String msg) {
error(format(marker, msg));
}
@Override
default void error(Marker marker, String format, Object arg) {
error(marker, format(format, arg));
}
@Override
default void error(Marker marker, String format, Object arg1, Object arg2) {
error(marker, format(format, arg1, arg2));
}
@Override
default void error(Marker marker, String format, Object... arguments) {
error(marker, format(format, arguments));
}
@Override
default void error(Marker marker, String msg, Throwable t) {
error(marker, format(msg, t));
}
default String format(Marker marker, String msg) {
return msg;
}
default String format(String format, Object arg) {
return MessageFormatter.basicArrayFormat(format, new Object[] {
StringFormatter.toString(arg)
});
}
default String format(String format, Object arg1, Object arg2) {
return MessageFormatter.basicArrayFormat(format, new Object[] {
StringFormatter.toString(arg1),
StringFormatter.toString(arg2)
});
}
default String format(String format, Object[] args) {
String[] strings = new String[args.length];
for (int i = 0; i < args.length; i++) {
strings[i] = StringFormatter.toString(args[i]);
}
return MessageFormatter.basicArrayFormat(format, strings);
}
default String format(String msg, Throwable t) {
if (t == null) return msg;
return msg + System.lineSeparator() + StringFormatter.toString(t);
}
}