All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.hasor.cobble.logging.slf4j.Slf4jImpl Maven / Gradle / Ivy

/*
 *    Copyright 2009-2021 the original author or authors.
 *
 *    Licensed under the Apache License, Version 2.0 (the "License");
 *    you may not use this file except in compliance with the License.
 *    You may obtain a copy of the License at
 *
 *       http://www.apache.org/licenses/LICENSE-2.0
 *
 *    Unless required by applicable law or agreed to in writing, software
 *    distributed under the License is distributed on an "AS IS" BASIS,
 *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *    See the License for the specific language governing permissions and
 *    limitations under the License.
 */
package net.hasor.cobble.logging.slf4j;

import net.hasor.cobble.logging.Logger;
import org.slf4j.LoggerFactory;
import org.slf4j.Marker;
import org.slf4j.spi.LocationAwareLogger;

/**
 * 

copy form mybatis org.apache.ibatis.logging.slf4j.Slf4jImpl

* @author Clinton Begin * @author Eduardo Macarron */ public class Slf4jImpl implements Logger { private Logger logger; public Slf4jImpl(String clazz) { org.slf4j.Logger logger = LoggerFactory.getLogger(clazz); if (logger instanceof LocationAwareLogger) { try { // check for slf4j >= 1.6 method signature logger.getClass().getMethod("log", Marker.class, String.class, int.class, String.class, Object[].class, Throwable.class); this.logger = new Slf4jLocationAwareLoggerImpl((LocationAwareLogger) logger); return; } catch (SecurityException | NoSuchMethodException e) { // fail-back to Slf4jLoggerImpl } } // Logger is not LocationAwareLogger or slf4j version < 1.6 this.logger = new Slf4jLoggerImpl(logger); } @Override public boolean isDebugEnabled() { return logger.isDebugEnabled(); } @Override public boolean isTraceEnabled() { return logger.isTraceEnabled(); } @Override public void error(String s, Throwable e) { logger.error(s, e); } @Override public void error(String s) { logger.error(s); } @Override public void debug(String s) { logger.debug(s); } @Override public void info(String s) { logger.info(s); } @Override public void trace(String s) { logger.trace(s); } @Override public void warn(String s) { logger.warn(s); } @Override public void warn(String s, Throwable e) { logger.warn(s, e); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy