
com.star.log.dialect.commons.ApacheCommonsLog4JLog Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of utils Show documentation
Show all versions of utils Show documentation
some utility class for java develop
The newest version!
package com.star.log.dialect.commons;
import com.star.log.AbstractLocationAwareLog;
import com.star.string.StringUtil;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.commons.logging.impl.Log4JLogger;
import org.apache.log4j.Level;
/**
* Apache Commons Logging for Log4j
*
* @author Looly
*/
public class ApacheCommonsLog4JLog extends AbstractLocationAwareLog {
private static final long serialVersionUID = -6843151523380063975L;
private static final String FQCN = ApacheCommonsLog4JLog.class.getName();
private final transient Log4JLogger logger;
private final String name;
// ------------------------------------------------------------------------- Constructor
public ApacheCommonsLog4JLog(Log logger, String name) {
this.logger = (Log4JLogger) logger;
this.name = name;
}
public ApacheCommonsLog4JLog(Class> clazz) {
this(LogFactory.getLog(clazz), clazz.getName());
}
public ApacheCommonsLog4JLog(String name) {
this(LogFactory.getLog(name), name);
}
@Override
public String getName() {
return this.name;
}
// ------------------------------------------------------------------------- Trace
@Override
public boolean isTraceEnabled() {
return logger.isTraceEnabled();
}
@Override
public void trace(String format, Object... arguments) {
trace(null, format, arguments);
}
@Override
public void trace(Throwable t, String format, Object... arguments) {
logger.getLogger().log(FQCN, Level.TRACE, StringUtil.format(format, arguments), t);
}
// ------------------------------------------------------------------------- Debug
@Override
public boolean isDebugEnabled() {
return logger.isDebugEnabled();
}
@Override
public void debug(String format, Object... arguments) {
debug(null, format, arguments);
}
@Override
public void debug(Throwable t, String format, Object... arguments) {
logger.getLogger().log(FQCN, Level.DEBUG, StringUtil.format(format, arguments), t);
}
// ------------------------------------------------------------------------- Info
@Override
public boolean isInfoEnabled() {
return logger.isInfoEnabled();
}
@Override
public void info(String format, Object... arguments) {
info(null, format, arguments);
}
@Override
public void info(Throwable t, String format, Object... arguments) {
logger.getLogger().log(FQCN, Level.INFO, StringUtil.format(format, arguments), t);
}
// ------------------------------------------------------------------------- Warn
@Override
public boolean isWarnEnabled() {
return logger.isWarnEnabled();
}
@Override
public void warn(String format, Object... arguments) {
warn(null, format, arguments);
}
@Override
public void warn(Throwable t, String format, Object... arguments) {
logger.getLogger().log(FQCN, Level.WARN, StringUtil.format(format, arguments), t);
}
// ------------------------------------------------------------------------- Error
@Override
public boolean isErrorEnabled() {
return logger.isErrorEnabled();
}
@Override
public void error(String format, Object... arguments) {
error(null, format, arguments);
}
@Override
public void error(Throwable t, String format, Object... arguments) {
logger.getLogger().log(FQCN, Level.ERROR, StringUtil.format(format, arguments), t);
}
// ------------------------------------------------------------------------- Log
@Override
public void log(com.star.log.level.Level level, String format, Object... arguments) {
this.log(level, null, format, arguments);
}
@Override
public void log(com.star.log.level.Level level, Throwable t, String format, Object... arguments) {
this.log(FQCN, level, t, format, arguments);
}
@Override
public void log(String fqcn, com.star.log.level.Level level, Throwable t, String format, Object... arguments) {
Level log4jLevel;
switch (level) {
case TRACE:
log4jLevel = Level.TRACE;
break;
case DEBUG:
log4jLevel = Level.DEBUG;
break;
case INFO:
log4jLevel = Level.INFO;
break;
case WARN:
log4jLevel = Level.WARN;
break;
case ERROR:
log4jLevel = Level.ERROR;
break;
default:
throw new Error(StringUtil.format("Can not identify level: {}", level));
}
logger.getLogger().log(FQCN, log4jLevel, StringUtil.format(format, arguments), t);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy