java-commons/commons-logging/src/main/java/io/gitlab/jfronny/commons/logging/CompoundLogger.java

177 lines
4.0 KiB
Java

package io.gitlab.jfronny.commons.logging;
import org.jetbrains.annotations.Nullable;
public class CompoundLogger implements Logger {
private final String name;
private final Logger[] loggers;
public CompoundLogger(String name, Logger... loggers) {
this.name = name;
this.loggers = loggers;
}
@Override
public @Nullable String getName() {
return name;
}
@Override
public void trace(String msg) {
for (Logger logger : loggers) {
logger.trace(msg);
}
}
@Override
public void trace(String format, Object arg) {
for (Logger logger : loggers) {
logger.trace(format, arg);
}
}
@Override
public void trace(String format, Object... args) {
for (Logger logger : loggers) {
logger.trace(format, args);
}
}
@Override
public void trace(String msg, Throwable t) {
for (Logger logger : loggers) {
logger.trace(msg, t);
}
}
@Override
public void debug(String msg) {
for (Logger logger : loggers) {
logger.debug(msg);
}
}
@Override
public void debug(String format, Object arg) {
for (Logger logger : loggers) {
logger.debug(format, arg);
}
}
@Override
public void debug(String format, Object... args) {
for (Logger logger : loggers) {
logger.debug(format, args);
}
}
@Override
public void debug(String msg, Throwable t) {
for (Logger logger : loggers) {
logger.debug(msg, t);
}
}
@Override
public void info(String msg) {
for (Logger logger : loggers) {
logger.info(msg);
}
}
@Override
public void info(String format, Object arg) {
for (Logger logger : loggers) {
logger.info(format, arg);
}
}
@Override
public void info(String format, Object... args) {
for (Logger logger : loggers) {
logger.info(format, args);
}
}
@Override
public void info(String msg, Throwable t) {
for (Logger logger : loggers) {
logger.info(msg, t);
}
}
@Override
public void warn(String msg) {
for (Logger logger : loggers) {
logger.warn(msg);
}
}
@Override
public void warn(String format, Object arg) {
for (Logger logger : loggers) {
logger.warn(format, arg);
}
}
@Override
public void warn(String format, Object... args) {
for (Logger logger : loggers) {
logger.warn(format, args);
}
}
@Override
public void warn(String msg, Throwable t) {
for (Logger logger : loggers) {
logger.warn(msg, t);
}
}
@Override
public void error(String msg) {
for (Logger logger : loggers) {
logger.error(msg);
}
}
@Override
public void error(String format, Object arg) {
for (Logger logger : loggers) {
logger.error(format, arg);
}
}
@Override
public void error(String format, Object... args) {
for (Logger logger : loggers) {
logger.error(format, args);
}
}
@Override
public void error(String msg, Throwable t) {
for (Logger logger : loggers) {
logger.error(msg, t);
}
}
@Override
public String format(String format, Object arg) {
if (loggers.length == 0) return Logger.super.format(format, arg);
return loggers[0].format(format, arg);
}
@Override
public String format(String format, Object... args) {
if (loggers.length == 0) return Logger.super.format(format, args);
return loggers[0].format(format, args);
}
@Override
public String format(String msg, Throwable t) {
if (loggers.length == 0) return Logger.super.format(msg, t);
return loggers[0].format(msg, t);
}
}