001/* ======================================================================== 002 * JCommon : a free general purpose class library for the Java(tm) platform 003 * ======================================================================== 004 * 005 * (C) Copyright 2000-2005, by Object Refinery Limited and Contributors. 006 * 007 * Project Info: http://www.jfree.org/jcommon/index.html 008 * 009 * This library is free software; you can redistribute it and/or modify it 010 * under the terms of the GNU Lesser General Public License as published by 011 * the Free Software Foundation; either version 2.1 of the License, or 012 * (at your option) any later version. 013 * 014 * This library is distributed in the hope that it will be useful, but 015 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 016 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 017 * License for more details. 018 * 019 * You should have received a copy of the GNU Lesser General Public 020 * License along with this library; if not, write to the Free Software 021 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, 022 * USA. 023 * 024 * [Java is a trademark or registered trademark of Sun Microsystems, Inc. 025 * in the United States and other countries.] 026 * 027 * -------------- 028 * LogTarget.java 029 * -------------- 030 * (C)opyright 2002-2004, by Object Refinery Limited. 031 * 032 * $Id: LogTarget.java,v 1.3 2005/11/14 10:55:59 mungady Exp $ 033 * 034 * Changes 035 * ------- 036 * 11-May-2002 : Initial version 037 * 06-Dec-2002 : LogTargets now use Object-Parameters instead of Strings. 038 * 05-Feb-2003 : Removed unnecessary methods. 039 * 29-Apr-2003 : Distilled from the JFreeReport project and moved into JCommon 040 * 041 */ 042 043package org.jfree.util; 044 045/** 046 * An interface that defines a log target (a consumer of log messages). Classes which 047 * implement this interface can be registered with the {@link org.jfree.util.Log} class 048 * and will then receive logging messages generated by the code. 049 * 050 * @author Thomas Morgner 051 */ 052public interface LogTarget { 053 054 /** 055 * Loglevel ERROR. 056 */ 057 public static final int ERROR = 0; 058 059 /** 060 * Loglevel WARN. 061 */ 062 public static final int WARN = 1; 063 064 /** 065 * Loglevel INFO. 066 */ 067 public static final int INFO = 2; 068 069 /** 070 * Loglevel DEBUG. 071 */ 072 public static final int DEBUG = 3; 073 074 /** Strings for the log levels. */ 075 public static final String[] LEVELS = 076 { 077 "ERROR: ", 078 "WARN: ", 079 "INFO: ", 080 "DEBUG: " 081 }; 082 083 /** 084 * Logs a message at a specified log level. 085 * 086 * @param level the log level. 087 * @param message the log message. 088 */ 089 public void log(int level, Object message); 090 091 /** 092 * Logs a message at a specified log level. 093 * 094 * @param level the log level. 095 * @param message the log message. 096 * @param e the exception 097 */ 098 public void log(int level, Object message, Exception e); 099}