package ameba.lib;
import com.google.common.collect.Maps;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.Map;
/**
* <p>Abstract LoggerOwner class.</p>
*
* @author icode
* @since 0.1.6e
*
*/
public abstract class LoggerOwner {
private static final Map<Class, Logger> LOGGER_MAP = Maps.newConcurrentMap();
/**
* <p>logger.</p>
*
* @return a {@link org.slf4j.Logger} object.
*/
protected Logger logger() {
Class thisClass = this.getClass();
Logger logger = LOGGER_MAP.computeIfAbsent(thisClass, k -> LoggerFactory.getLogger(thisClass));
return logger;
}
}