public Logger getLogger(String name) { Logger slf4jLogger = loggerMap.get(name); if (slf4jLogger != null) { return slf4jLogger; } else { org.apache.commons.logging.Log jclLogger = LogFactory.getLog(name); Logger newInstance = new JCLLoggerAdapter(jclLogger, name); Logger oldInstance = loggerMap.putIfAbsent(name, newInstance); return oldInstance == null ? newInstance : oldInstance; } } }
@Override public Logger getLogger(String name) { Logger slf4jLogger = loggerMap.get(name); if (slf4jLogger != null) { return slf4jLogger; } else { org.apache.commons.logging.Log jclLogger = LogFactory.getLog(name); Logger newInstance = new JCLLoggerAdapter(jclLogger, name); Logger oldInstance = loggerMap.putIfAbsent(name, newInstance); return oldInstance == null ? newInstance : oldInstance; } } }
public Logger getLogger(String name) { Logger logger = null; // protect against concurrent access of loggerMap synchronized (this) { logger = (Logger) loggerMap.get(name); if (logger == null) { org.apache.commons.logging.Log jclLogger = LogFactory.getLog(name); logger = new JCLLoggerAdapter(jclLogger, name); loggerMap.put(name, logger); } } return logger; } }