/*
* Galaxy
* Copyright (c) 2012-2014, Parallel Universe Software Co. All rights reserved.
*
* This program and the accompanying materials are dual-licensed under
* either the terms of the Eclipse Public License v1.0 as published by
* the Eclipse Foundation
*
* or (per the licensee's choosing)
*
* under the terms of the GNU Lesser General Public License version 3.0
* as published by the Free Software Foundation.
*/
package co.paralleluniverse.galaxy.jgroups;
import org.jgroups.logging.CustomLogFactory;
import org.jgroups.logging.Log;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
*
* @author pron
*/
public class SLF4JLogFactory implements CustomLogFactory {
@Override
public Log getLog(Class clazz) {
return new SLF4JLog(LoggerFactory.getLogger(clazz));
}
@Override
public Log getLog(String category) {
return new SLF4JLog(LoggerFactory.getLogger(category));
}
static class SLF4JLog implements Log {
private final Logger logger;
public SLF4JLog(Logger logger) {
this.logger = logger;
}
@Override
public boolean isFatalEnabled() {
return logger.isErrorEnabled();
}
@Override
public boolean isErrorEnabled() {
return logger.isErrorEnabled();
}
@Override
public boolean isWarnEnabled() {
return logger.isWarnEnabled();
}
@Override
public boolean isInfoEnabled() {
return logger.isInfoEnabled();
}
@Override
public boolean isDebugEnabled() {
return logger.isDebugEnabled();
}
@Override
public boolean isTraceEnabled() {
return logger.isTraceEnabled();
}
@Override
public void fatal(String msg) {
logger.error(msg);
}
@Override
public void fatal(String msg, Throwable throwable) {
logger.error(msg, throwable);
}
@Override
public void fatal(String msg, Object... args) {
logger.error(msg, args);
}
@Override
public void error(String msg) {
logger.error(msg);
}
@Override
public void error(String msg, Throwable throwable) {
logger.error(msg, throwable);
}
@Override
public void error(String format, Object... args) {
logger.error(format, args);
}
@Override
public void warn(String msg) {
logger.warn(msg);
}
@Override
public void warn(String msg, Throwable throwable) {
logger.warn(msg, throwable);
}
@Override
public void warn(String msg, Object... args) {
logger.warn(msg, args);
}
@Override
public void info(String msg) {
logger.info(msg);
}
@Override
public void info(String msg, Object... args) {
logger.info(msg, args);
}
@Override
public void debug(String msg) {
logger.debug(msg);
}
@Override
public void debug(String msg, Throwable throwable) {
logger.debug(msg, throwable);
}
@Override
public void debug(String msg, Object... args) {
logger.debug(msg, args);
}
@Override
public void trace(Object msg) {
logger.trace(msg.toString());
}
@Override
public void trace(String msg) {
logger.trace(msg);
}
@Override
public void trace(String msg, Throwable throwable) {
logger.trace(msg, throwable);
}
@Override
public void trace(String msg, Object... args) {
logger.trace(msg, args);
}
@Override
public void setLevel(String level) {
}
@Override
public String getLevel() {
return "";
}
}
}