Update of /cvsroot/jfreechart/jcommon-logger/source/org/jfree/logger/jcl In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9117/source/org/jfree/logger/jcl Added Files: JakartaLog.java JakartaLogContext.java JakartaLogModule.java JakartaLogTarget.java module.properties Log Message: All you need for logging: additional log-targets ported from JFreeReport. To be released today. --- NEW FILE: JakartaLog.java --- /** * ======================================== * <libname> : a free Java <foobar> library * ======================================== * * Project Info: http://www.jfree.org/liblayout/ * Project Lead: Thomas Morgner; * * (C) Copyright 2005, by Object Refinery Limited and Contributors. * * This library is free software; you can redistribute it and/or modify it under the terms * of the GNU Lesser General Public License as published by the Free Software Foundation; * either version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License along with this * library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, * Boston, MA 02111-1307, USA. * * --------- * JakartaLogging.java * --------- * * Original Author: Thomas Morgner; * Contributors: -; * * $Id: JakartaLog.java,v 1.1 2006/03/23 19:39:57 taqua Exp $ * * Changes * ------------------------- * 23.03.2006 : Initial version */ package org.jfree.logger.jcl; import org.jfree.logger.log4j.Log4JLogContext; import org.jfree.util.Log; import org.jfree.util.LogContext; /** * Creation-Date: 23.03.2006, 19:25:32 * * @author Thomas Morgner */ public class JakartaLog extends Log { protected JakartaLog () { } /** * Creates a log context. * * @param context the name of the logging context (a common prefix). * @return A log context. */ protected LogContext internalCreateContext (final String context) { return new Log4JLogContext(context); } public static void install() { defineLog(new JakartaLog()); getInstance().addTarget(new JakartaLogTarget()); } } --- NEW FILE: JakartaLogTarget.java --- /** * ======================================== * <libname> : a free Java <foobar> library * ======================================== * * Project Info: http://www.jfree.org/liblayout/ * Project Lead: Thomas Morgner; * * (C) Copyright 2005, by Object Refinery Limited and Contributors. * * This library is free software; you can redistribute it and/or modify it under the terms * of the GNU Lesser General Public License as published by the Free Software Foundation; * either version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License along with this * library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, * Boston, MA 02111-1307, USA. * * --------- * JakartaLogTarget.java * --------- * * Original Author: Thomas Morgner; * Contributors: -; * * $Id: JakartaLogTarget.java,v 1.1 2006/03/23 19:39:57 taqua Exp $ * * Changes * ------------------------- * 23.03.2006 : Initial version */ package org.jfree.logger.jcl; import org.jfree.util.LogTarget; import org.jfree.JCommon; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; /** * Creation-Date: 23.03.2006, 19:26:00 * * @author Thomas Morgner */ public class JakartaLogTarget implements LogTarget { private Log logger; public JakartaLogTarget () { logger = LogFactory.getLog(JCommon.class); } /** * Logs a message to the main log stream. All attached log targets will also receive * this message. If the given log-level is higher than the given debug-level in the main * config file, no logging will be done. * * @param level log level of the message. * @param message text to be logged. */ public void log (final int level, final Object message) { if (level == LogTarget.DEBUG) { logger.debug(message); } if (level == LogTarget.INFO) { logger.info(message); } if (level == LogTarget.WARN) { logger.warn(message); } if (level == LogTarget.ERROR) { logger.error(message); } logger.fatal(message); } /** * Logs a message to the main log stream. All attached logTargets will also receive this * message. If the given log-level is higher than the given debug-level in the main * config file, no logging will be done. * <p/> * The exception's stacktrace will be appended to the log-stream * * @param level log level of the message. * @param message text to be logged. * @param e the exception, which should be logged. */ public void log (final int level, final Object message, final Exception e) { if (level == LogTarget.DEBUG) { logger.debug(message, e); } if (level == LogTarget.INFO) { logger.info(message, e); } if (level == LogTarget.WARN) { logger.warn(message, e); } if (level == LogTarget.ERROR) { logger.error(message, e); } logger.fatal(message, e); } } --- NEW FILE: JakartaLogModule.java --- /** * ======================================== * <libname> : a free Java <foobar> library * ======================================== * * Project Info: http://www.jfree.org/liblayout/ * Project Lead: Thomas Morgner; * * (C) Copyright 2005, by Object Refinery Limited and Contributors. * * This library is free software; you can redistribute it and/or modify it under the terms * of the GNU Lesser General Public License as published by the Free Software Foundation; * either version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License along with this * library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, * Boston, MA 02111-1307, USA. * * --------- * JakartaLogModule.java * --------- * * Original Author: Thomas Morgner; * Contributors: -; * * $Id: JakartaLogModule.java,v 1.1 2006/03/23 19:39:57 taqua Exp $ * * Changes * ------------------------- * 23.03.2006 : Initial version */ package org.jfree.logger.jcl; import org.jfree.base.BaseBoot; import org.jfree.base.log.LogConfiguration; import org.jfree.base.modules.AbstractModule; import org.jfree.base.modules.ModuleInitializeException; import org.jfree.base.modules.SubSystem; import org.jfree.util.Configuration; import org.jfree.util.Log; /** * Creation-Date: 23.03.2006, 19:30:30 * * @author Thomas Morgner */ public class JakartaLogModule extends AbstractModule { /** * DefaultConstructor. Loads the module specification. * @throws ModuleInitializeException if an error occured. */ public JakartaLogModule() throws ModuleInitializeException { loadModuleInfo(); } /** * Initalizes the module. This method is empty. * * @throws ModuleInitializeException if an error occured. */ public void initialize(final SubSystem subSystem) throws ModuleInitializeException { if (LogConfiguration.isDisableLogging()) { return; } final Configuration config = BaseBoot.getConfiguration(); if (JakartaLogTarget.class.getName().equals (config.getConfigProperty(LogConfiguration.LOGTARGET))) { JakartaLog.install(); if ("true".equals(subSystem.getGlobalConfig().getConfigProperty ("org.jfree.base.LogAutoInit"))) { Log.getInstance().init(); } Log.info ("Jakarta log target started ... previous log messages could have been ignored."); } } } --- NEW FILE: module.properties --- # # Support for logging to the Apache Log4J Library # module-info: name: jakarta-commons-logging producer: The JFreeChart project - www.jfree.org/jcommon description: Initialializer to configure the log system to write to the Jakarta commons logging library. The logging system is not configured in any way, as the application will be responsible for that task. version.major: 1 version.minor: 0 version.patchlevel: 0 subsystem: logging --- NEW FILE: JakartaLogContext.java --- /** * ======================================== * <libname> : a free Java <foobar> library * ======================================== * * Project Info: http://www.jfree.org/liblayout/ * Project Lead: Thomas Morgner; * * (C) Copyright 2005, by Object Refinery Limited and Contributors. * * This library is free software; you can redistribute it and/or modify it under the terms * of the GNU Lesser General Public License as published by the Free Software Foundation; * either version 2.1 of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License along with this * library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, * Boston, MA 02111-1307, USA. * * --------- * JakartaLogContext.java * --------- * * Original Author: Thomas Morgner; * Contributors: -; * * $Id: JakartaLogContext.java,v 1.1 2006/03/23 19:39:57 taqua Exp $ * * Changes * ------------------------- * 23.03.2006 : Initial version */ package org.jfree.logger.jcl; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.jfree.util.LogContext; import org.jfree.util.LogTarget; /** * Creation-Date: 23.03.2006, 19:26:35 * * @author Thomas Morgner */ public class JakartaLogContext extends LogContext { private Log logger; public JakartaLogContext (final String contextPrefix) { super(contextPrefix); logger = LogFactory.getLog(contextPrefix); } /** * Returns true, if the log level allows debug messages to be printed. * * @return true, if messages with an log level of DEBUG are allowed. */ public boolean isDebugEnabled () { return logger.isDebugEnabled(); } /** * Returns true, if the log level allows error messages to be printed. * * @return true, if messages with an log level of ERROR are allowed. */ public boolean isErrorEnabled () { return logger.isErrorEnabled(); } /** * Returns true, if the log level allows informational messages to be printed. * * @return true, if messages with an log level of INFO are allowed. */ public boolean isInfoEnabled () { return logger.isInfoEnabled(); } /** * Returns true, if the log level allows warning messages to be printed. * * @return true, if messages with an log level of WARN are allowed. */ public boolean isWarningEnabled () { return logger.isWarnEnabled(); } /** * Logs a message to the main log stream. All attached log targets will also receive * this message. If the given log-level is higher than the given debug-level in the main * config file, no logging will be done. * * @param level log level of the message. * @param message text to be logged. */ public void log (final int level, final Object message) { if (level == LogTarget.DEBUG) { logger.debug(message); } if (level == LogTarget.INFO) { logger.info(message); } if (level == LogTarget.WARN) { logger.warn(message); } if (level == LogTarget.ERROR) { logger.error(message); } logger.fatal(message); } /** * Logs a message to the main log stream. All attached logTargets will also receive this * message. If the given log-level is higher than the given debug-level in the main * config file, no logging will be done. * <p/> * The exception's stacktrace will be appended to the log-stream * * @param level log level of the message. * @param message text to be logged. * @param e the exception, which should be logged. */ public void log (final int level, final Object message, final Exception e) { if (level == LogTarget.DEBUG) { logger.debug(message, e); } if (level == LogTarget.INFO) { logger.info(message, e); } if (level == LogTarget.WARN) { logger.warn(message, e); } if (level == LogTarget.ERROR) { logger.error(message, e); } logger.fatal(message, e); } } |