Mercurial > 510Connectbot
diff src/org/tn5250j/tools/logging/Log4jLogger.java @ 5:cbdff98c45ea tn5250
adding tn5250 files
author | Carl Byington <carl@five-ten-sg.com> |
---|---|
date | Thu, 22 May 2014 12:38:09 -0700 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/tn5250j/tools/logging/Log4jLogger.java Thu May 22 12:38:09 2014 -0700 @@ -0,0 +1,159 @@ +/* + * @(#)Log4jLogger.java + * @author Kenneth J. Pouncey + * + * Copyright: Copyright (c) 2001, 2002, 2003 + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this software; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307 USA + * + */ +package org.tn5250j.tools.logging; + +import org.apache.log4j.Level; +import org.apache.log4j.Logger; + +/** + * An implementation of the TN5250jLogger to provide log4j logger instances. + */ +public final class Log4jLogger implements TN5250jLogger { + + private Logger log = null; + + /* + * Package level access only + */ + Log4jLogger() { + + } + + public void initialize(final String clazz) { + log = Logger.getLogger(clazz); + } + + public void debug(Object message) { + log.debug(message); + } + + public void debug(Object message, Throwable throwable) { + log.debug(message, throwable); + } + + public void info(Object message) { + log.info(message); + } + + public void info(Object message, Throwable throwable) { + log.info(message, throwable); + } + + public void warn(Object message) { + log.warn(message); + } + + public void warn(Object message, Throwable throwable) { + log.warn(message, throwable); + } + + public void error(Object message) { + log.error(message); + } + + public void error(Object message, Throwable throwable) { + log.error(message, throwable); + } + + public void fatal(Object message) { + log.fatal(message); + } + + public void fatal(Object message, Throwable throwable) { + log.fatal(message, throwable); + } + + public boolean isDebugEnabled() { + return log.isDebugEnabled(); + } + + public boolean isInfoEnabled() { + return log.isInfoEnabled(); + } + + public boolean isWarnEnabled() { + return (Level.WARN.equals(log.getLevel())); + } + + public boolean isFatalEnabled() { + return (Level.FATAL.equals(log.getLevel())); + } + + public boolean isErrorEnabled() { + return (Level.ERROR.equals(log.getLevel())); + } + + public void setLevel(int newLevel) { + + switch (newLevel) { + case OFF: + log.setLevel(Level.OFF); + break; + + case DEBUG: + log.setLevel(Level.DEBUG); + break; + + case INFO: + log.setLevel(Level.INFO); + break; + + case WARN: + log.setLevel(Level.WARN); + break; + + case ERROR: + log.setLevel(Level.ERROR); + break; + + case FATAL: + log.setLevel(Level.FATAL); + break; + } + + } + + public int getLevel() { + + switch (log.getLevel().toInt()) { + + case (org.apache.log4j.Level.DEBUG_INT): + return DEBUG; + + case (org.apache.log4j.Level.INFO_INT): + return INFO; + + case (org.apache.log4j.Level.WARN_INT): + return WARN; + + case (org.apache.log4j.Level.ERROR_INT): + return ERROR; + + case (org.apache.log4j.Level.FATAL_INT): + return FATAL; + default: + return WARN; + } + + } +} \ No newline at end of file