src/core/net/sf/basedb/util/extensions/logging/LogLevel.java

Code
Comments
Other
Rev Date Author Line
8125 09 Mar 23 nicklas 1 /**
8125 09 Mar 23 nicklas 2   $Id$
8125 09 Mar 23 nicklas 3
8125 09 Mar 23 nicklas 4   Copyright (C) 2023 Nicklas Nordborg
8125 09 Mar 23 nicklas 5
8125 09 Mar 23 nicklas 6   This file is part of BASE - BioArray Software Environment.
8125 09 Mar 23 nicklas 7   Available at http://base.thep.lu.se/
8125 09 Mar 23 nicklas 8
8125 09 Mar 23 nicklas 9   BASE is free software; you can redistribute it and/or
8125 09 Mar 23 nicklas 10   modify it under the terms of the GNU General Public License
8125 09 Mar 23 nicklas 11   as published by the Free Software Foundation; either version 3
8125 09 Mar 23 nicklas 12   of the License, or (at your option) any later version.
8125 09 Mar 23 nicklas 13
8125 09 Mar 23 nicklas 14   BASE is distributed in the hope that it will be useful,
8125 09 Mar 23 nicklas 15   but WITHOUT ANY WARRANTY; without even the implied warranty of
8125 09 Mar 23 nicklas 16   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
8125 09 Mar 23 nicklas 17   GNU General Public License for more details.
8125 09 Mar 23 nicklas 18
8125 09 Mar 23 nicklas 19   You should have received a copy of the GNU General Public License
8125 09 Mar 23 nicklas 20   along with BASE. If not, see <http://www.gnu.org/licenses/>.
8125 09 Mar 23 nicklas 21 */
8125 09 Mar 23 nicklas 22 package net.sf.basedb.util.extensions.logging;
8125 09 Mar 23 nicklas 23
8125 09 Mar 23 nicklas 24 import org.slf4j.Logger;
8125 09 Mar 23 nicklas 25
8125 09 Mar 23 nicklas 26 /**
8125 09 Mar 23 nicklas 27   The level of the log message.
8125 09 Mar 23 nicklas 28 */
8125 09 Mar 23 nicklas 29 public enum LogLevel
8125 09 Mar 23 nicklas 30 {
8125 09 Mar 23 nicklas 31   INFO("info.png") 
8125 09 Mar 23 nicklas 32   {
8125 09 Mar 23 nicklas 33     @Override
8125 09 Mar 23 nicklas 34     void logTo(Logger logger, String msg, Throwable t) 
8125 09 Mar 23 nicklas 35     {
8125 09 Mar 23 nicklas 36       logger.info(msg, t);
8125 09 Mar 23 nicklas 37     }
8125 09 Mar 23 nicklas 38   },
8125 09 Mar 23 nicklas 39   WARNING("warning.png") 
8125 09 Mar 23 nicklas 40   {
8125 09 Mar 23 nicklas 41     @Override
8125 09 Mar 23 nicklas 42     void logTo(Logger logger, String msg, Throwable t) 
8125 09 Mar 23 nicklas 43     {
8125 09 Mar 23 nicklas 44       logger.warn(msg, t);
8125 09 Mar 23 nicklas 45     }
8125 09 Mar 23 nicklas 46   },
8125 09 Mar 23 nicklas 47   ERROR("error.png") 
8125 09 Mar 23 nicklas 48   {
8125 09 Mar 23 nicklas 49     @Override
8125 09 Mar 23 nicklas 50     void logTo(Logger logger, String msg, Throwable t) 
8125 09 Mar 23 nicklas 51     {
8125 09 Mar 23 nicklas 52       logger.error(msg, t);
8125 09 Mar 23 nicklas 53     }
8125 09 Mar 23 nicklas 54   },
8125 09 Mar 23 nicklas 55   DEBUG("bug.png") 
8125 09 Mar 23 nicklas 56   {
8125 09 Mar 23 nicklas 57     @Override
8125 09 Mar 23 nicklas 58     void logTo(Logger logger, String msg, Throwable t) 
8125 09 Mar 23 nicklas 59     {
8125 09 Mar 23 nicklas 60       logger.debug(msg, t);
8125 09 Mar 23 nicklas 61     }
8125 09 Mar 23 nicklas 62   },
8125 09 Mar 23 nicklas 63   TRACE("trace.png")
8125 09 Mar 23 nicklas 64   {
8125 09 Mar 23 nicklas 65     @Override
8125 09 Mar 23 nicklas 66     void logTo(Logger logger, String msg, Throwable t) 
8125 09 Mar 23 nicklas 67     {
8125 09 Mar 23 nicklas 68       logger.trace(msg, t);
8125 09 Mar 23 nicklas 69     }
8125 09 Mar 23 nicklas 70   };
8125 09 Mar 23 nicklas 71   
8125 09 Mar 23 nicklas 72   private final String icon;
8125 09 Mar 23 nicklas 73   
8125 09 Mar 23 nicklas 74   private LogLevel(String icon)
8125 09 Mar 23 nicklas 75   {
8125 09 Mar 23 nicklas 76     this.icon = icon;
8125 09 Mar 23 nicklas 77   }
8125 09 Mar 23 nicklas 78   
8125 09 Mar 23 nicklas 79   /**
8125 09 Mar 23 nicklas 80     Get the icon that represents this log level.
8125 09 Mar 23 nicklas 81   */
8125 09 Mar 23 nicklas 82   public String getIcon()
8125 09 Mar 23 nicklas 83   {
8125 09 Mar 23 nicklas 84     return icon;
8125 09 Mar 23 nicklas 85   }
8125 09 Mar 23 nicklas 86   
8125 09 Mar 23 nicklas 87   abstract void logTo(org.slf4j.Logger logger, String msg, Throwable t);
8125 09 Mar 23 nicklas 88 }