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

org.slf4j.LoggerFactory Maven / Gradle / Ivy

There is a newer version: 0.11
Show newest version
/*
 * Copyright (c) 2020. https://rxmicro.io
 *
 * 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 org.slf4j;

import org.slf4j.internal.Slf4jLoggerProxy;

/**
 * Unfortunately some db drivers removed support of JUL,
 * so the RxMicro framework requires a org.slf4j proxy to enable logging without slf4j-api:
 * http://www.slf4j.org
 *
 * 

* Read more: * * https://github.com/mongodb/mongo-java-driver/commit/6a163f715fe08ed8d39acac3d11c896ae547df73 * * *

* The LoggerFactory is a utility class producing Loggers for * various logging APIs, most notably for log4j, logback and JDK 1.4 logging. * *

* LoggerFactory is essentially a wrapper around an * {@link ILoggerFactory} instance bound with LoggerFactory at * compile time. * *

* Please note that all methods in LoggerFactory are static. * * @author nedis * @see http://www.slf4j.org/apidocs/org/slf4j/LoggerFactory.html * @since 0.3 */ public final class LoggerFactory { /** * See * http://www.slf4j.org/apidocs/org/slf4j/LoggerFactory.html. * *

* Return a logger named according to the name parameter using the * statically bound {@link ILoggerFactory} instance. * * @param name The name of the logger. * @return logger */ public static Logger getLogger(final String name) { return new Slf4jLoggerProxy(name); } /** * See * http://www.slf4j.org/apidocs/org/slf4j/LoggerFactory.html. * *

* Return a logger named corresponding to the class passed as parameter, * using the statically bound {@link ILoggerFactory} instance. * *

* In case the the clazz parameter differs from the name of the * caller as computed internally by SLF4J, a logger name mismatch warning * will be printed but only if the * slf4j.detectLoggerNameMismatch system property is set to * true. By default, this property is not set and no warnings will be * printed even in case of a logger name mismatch. * * @param clazz the returned logger will be named after clazz * @return logger */ public static Logger getLogger(final Class clazz) { return getLogger(clazz.getName()); } /** * See * http://www.slf4j.org/apidocs/org/slf4j/LoggerFactory.html. * *

* Return the {@link ILoggerFactory} instance in use. * *

* ILoggerFactory instance is bound with this class at compile time. * * @return nothing * @throws UnsupportedOperationException proxy does not contain ILoggerFactory implementation */ public static ILoggerFactory getILoggerFactory() { throw new UnsupportedOperationException("Proxy does not contain ILoggerFactory implementation"); } private LoggerFactory() { } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy