亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? level.java

?? Java開發最新的日志記錄工具slf4j的源碼
?? JAVA
字號:
/*
 * Copyright 1999-2005 The Apache Software Foundation.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

// Contributors:  Kitching Simon <Simon.Kitching@orange.ch>
//                Nicholas Wolff

package org.apache.log4j;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.ObjectStreamException;
import java.io.Serializable;

/**
   Defines the minimum set of levels recognized by the system, that is
   <code>OFF</code>, <code>FATAL</code>, <code>ERROR</code>,
   <code>WARN</code>, <code>INFO</code>, <code>DEBUG</code> and
   <code>ALL</code>.

   <p>The <code>Level</code> class may be subclassed to define a larger
   level set.

   @author Ceki G&uuml;lc&uuml;

 */
public class Level extends Priority implements Serializable {

   /**
    * TRACE level integer value.
    * @since 1.2.12
    */
  public static final int TRACE_INT = 5000;

  /**
     The <code>OFF</code> has the highest possible rank and is
     intended to turn off logging.  */
  final static public Level OFF = new Level(OFF_INT, "OFF", 0);

  /**
     The <code>FATAL</code> level designates very severe error
     events that will presumably lead the application to abort.
   */
  final static public Level FATAL = new Level(FATAL_INT, "FATAL", 0);

  /**
     The <code>ERROR</code> level designates error events that
     might still allow the application to continue running.  */
  final static public Level ERROR = new Level(ERROR_INT, "ERROR", 3);

  /**
     The <code>WARN</code> level designates potentially harmful situations.
  */
  final static public Level WARN  = new Level(WARN_INT, "WARN",  4);

  /**
     The <code>INFO</code> level designates informational messages
     that highlight the progress of the application at coarse-grained
     level.  */
  final static public Level INFO  = new Level(INFO_INT, "INFO",  6);

  /**
     The <code>DEBUG</code> Level designates fine-grained
     informational events that are most useful to debug an
     application.  */
  final static public Level DEBUG = new Level(DEBUG_INT, "DEBUG", 7);

  /**
    * The <code>TRACE</code> Level designates finer-grained
    * informational events than the <code>DEBUG</code level.
   *  @since 1.2.12
    */
  public static final Level TRACE = new Level(TRACE_INT, "TRACE", 7);


  /**
     The <code>ALL</code> has the lowest possible rank and is intended to
     turn on all logging.  */
  final static public Level ALL = new Level(ALL_INT, "ALL", 7);

  /**
   * Serialization version id.
   */
  static final long serialVersionUID = 3491141966387921974L;

  /**
     Instantiate a Level object.
   */
  protected
  Level(int level, String levelStr, int syslogEquivalent) {
    super(level, levelStr, syslogEquivalent);
  }


  /**
     Convert the string passed as argument to a level. If the
     conversion fails, then this method returns {@link #DEBUG}. 
  */
  public
  static
  Level toLevel(String sArg) {
    return (Level) toLevel(sArg, Level.DEBUG);
  }

  /**
    Convert an integer passed as argument to a level. If the
    conversion fails, then this method returns {@link #DEBUG}.

  */
  public
  static
  Level toLevel(int val) {
    return (Level) toLevel(val, Level.DEBUG);
  }

  /**
    Convert an integer passed as argument to a level. If the
    conversion fails, then this method returns the specified default.
  */
  public
  static
  Level toLevel(int val, Level defaultLevel) {
    switch(val) {
    case ALL_INT: return ALL;
    case DEBUG_INT: return Level.DEBUG;
    case INFO_INT: return Level.INFO;
    case WARN_INT: return Level.WARN;
    case ERROR_INT: return Level.ERROR;
    case FATAL_INT: return Level.FATAL;
    case OFF_INT: return OFF;
    case TRACE_INT: return Level.TRACE;
    default: return defaultLevel;
    }
  }

  /**
     Convert the string passed as argument to a level. If the
     conversion fails, then this method returns the value of
     <code>defaultLevel</code>.  
  */
  public
  static
  Level toLevel(String sArg, Level defaultLevel) {                  
    if(sArg == null)
       return defaultLevel;
    
    String s = sArg.toUpperCase();

    if(s.equals("ALL")) return Level.ALL; 
    if(s.equals("DEBUG")) return Level.DEBUG; 
    if(s.equals("INFO"))  return Level.INFO;
    if(s.equals("WARN"))  return Level.WARN;  
    if(s.equals("ERROR")) return Level.ERROR;
    if(s.equals("FATAL")) return Level.FATAL;
    if(s.equals("OFF")) return Level.OFF;
    if(s.equals("TRACE")) return Level.TRACE;
    return defaultLevel;
  }

    /**
     * Custom deserialization of Level.
     * @param s serialization stream.
     * @throws IOException if IO exception.
     * @throws ClassNotFoundException if class not found.
     */
    private void readObject(final ObjectInputStream s) throws IOException, ClassNotFoundException {
      s.defaultReadObject();
      level = s.readInt();
      syslogEquivalent = s.readInt();
      levelStr = s.readUTF();
      if (levelStr == null) {
          levelStr = "";
      }
    }

    /**
     * Serialize level.
     * @param s serialization stream.
     * @throws IOException if exception during serialization.
     */
    private void writeObject(final ObjectOutputStream s) throws IOException {
        s.defaultWriteObject();
        s.writeInt(level);
        s.writeInt(syslogEquivalent);
        s.writeUTF(levelStr);
    }

    /**
     * Resolved deserialized level to one of the stock instances.
     * May be overriden in classes derived from Level.
     * @return resolved object.
     * @throws ObjectStreamException if exception during resolution.
     */
    private Object readResolve() throws ObjectStreamException {
        //
        //  if the deserizalized object is exactly an instance of Level
        //
        if (getClass() == Level.class) {
            return toLevel(level);
        }
        //
        //   extension of Level can't substitute stock item
        //
        return this;
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲福利视频一区| 91搞黄在线观看| 欧美色图在线观看| 久久综合久久久久88| 亚洲一线二线三线视频| 国产老肥熟一区二区三区| 欧美在线观看视频一区二区| 久久久91精品国产一区二区精品| 亚洲精品国产无套在线观| 激情综合色丁香一区二区| 色综合久久久久综合体桃花网| 久久综合九色综合欧美98| 日韩精品成人一区二区三区 | 色婷婷综合久久久中文一区二区| 欧美日本一道本| 亚洲色图欧美在线| 国产精品一区二区久激情瑜伽| 欧美浪妇xxxx高跟鞋交| 亚洲精品大片www| 成人激情小说乱人伦| 欧美大片一区二区| 免费看精品久久片| 日韩亚洲欧美中文三级| 丝瓜av网站精品一区二区| 欧美午夜影院一区| 亚洲成人tv网| 91精品在线免费| 日韩精品一区第一页| 5566中文字幕一区二区电影| 亚洲mv在线观看| 欧美日韩精品一区二区天天拍小说 | 欧美日韩一区二区三区免费看| 中文字幕亚洲精品在线观看| 成人一区二区视频| 国产精品三级久久久久三级| 国产99久久精品| 中文成人av在线| 成人精品鲁一区一区二区| 中文字幕一区二区三区在线播放 | 日韩视频一区二区三区在线播放 | 欧美日韩一卡二卡| 婷婷综合在线观看| 欧美一级二级三级乱码| 亚洲成人黄色小说| 欧美白人最猛性xxxxx69交| 精品亚洲国内自在自线福利| 国产suv精品一区二区6| 一本久久a久久免费精品不卡| 国产在线播放一区二区三区| 日韩电影一区二区三区| 亚洲激情五月婷婷| 亚洲成在人线免费| 韩国三级中文字幕hd久久精品| 日本va欧美va欧美va精品| 免费看黄色91| 99久久99精品久久久久久| 久久99久久99| 国产精品中文欧美| 日韩av中文字幕一区二区三区| 国产精品三级视频| 国产精品不卡视频| 亚洲天堂中文字幕| 久久精品国产秦先生| 国产精品午夜久久| 久久爱www久久做| 精品视频一区三区九区| 欧美理论片在线| 精品国产乱码久久久久久1区2区 | 亚洲成人一区在线| 偷拍亚洲欧洲综合| 99久久国产免费看| 久久精品欧美一区二区三区不卡| 亚洲免费在线电影| 国产成人超碰人人澡人人澡| 欧美一级艳片视频免费观看| 亚洲免费在线视频| 国产一区二区三区日韩| 在线电影院国产精品| 中文字幕免费一区| 国产精品一区二区免费不卡 | 亚洲蜜臀av乱码久久精品蜜桃| 天天色天天爱天天射综合| 日韩午夜激情av| 蜜桃av一区二区三区| 国产精品久久久久精k8| 26uuu另类欧美亚洲曰本| 日韩一级成人av| 在线亚洲免费视频| 一区二区三区在线免费观看 | 亚洲欧洲日韩一区二区三区| 亚洲精品欧美综合四区| 一区二区三区四区精品在线视频| 一区二区欧美精品| 夫妻av一区二区| 亚洲午夜免费电影| 中文字幕一区在线观看| 国产亚洲欧美日韩日本| 777xxx欧美| 欧美日韩不卡一区| 欧美亚洲精品一区| 91天堂素人约啪| thepron国产精品| 国产黄人亚洲片| 欧美日韩极品在线观看一区| 图片区小说区区亚洲影院| 日韩欧美www| 99久久99久久久精品齐齐| 国产欧美日韩综合| 91玉足脚交白嫩脚丫在线播放| 樱桃国产成人精品视频| 欧美一区二区久久| 日韩欧美不卡一区| 中文字幕+乱码+中文字幕一区| 亚洲精品老司机| 成人综合在线网站| 91精品在线麻豆| 亚洲电影一级黄| 96av麻豆蜜桃一区二区| www日韩大片| 美女视频黄a大片欧美| 99精品久久99久久久久| 久久精品一区四区| 免费国产亚洲视频| 欧美日韩国产三级| 日本欧美一区二区三区乱码| 6080yy午夜一二三区久久| 欧美三级一区二区| 国产精品传媒视频| 粉嫩13p一区二区三区| 欧美大片在线观看| 日韩精品久久久久久| 欧美视频一区二区三区四区| 国产精品久久久久aaaa樱花| 国产91精品精华液一区二区三区 | 欧美美女一区二区三区| 国产精品美女久久久久久久久| 韩国午夜理伦三级不卡影院| 日韩精品一区二| 国产制服丝袜一区| 久久久久99精品一区| 国产美女av一区二区三区| 91久久国产最好的精华液| 欧美精品一区二区三区一线天视频| 日韩在线a电影| 日韩欧美国产一二三区| 国产一区美女在线| 国产精品久久久久久久久图文区 | 久久一区二区视频| 成人黄色av网站在线| 一区二区三区欧美视频| 欧美片网站yy| 成人免费毛片a| 日韩av中文字幕一区二区三区| 久久精品夜色噜噜亚洲aⅴ| 91在线视频免费91| 精品一二三四在线| 亚洲动漫第一页| 国产日产亚洲精品系列| 欧美亚洲动漫制服丝袜| 精品一区二区三区视频在线观看| 国产精品国产三级国产a| 欧美精选午夜久久久乱码6080| 久久精品欧美日韩精品| 国产精品久久二区二区| 日韩av中文字幕一区二区| 国产suv精品一区二区6| 91精品麻豆日日躁夜夜躁| 国产精品国产三级国产a| 波多野洁衣一区| 欧美激情自拍偷拍| 91色porny| 久久久久久久久伊人| 日韩av午夜在线观看| 91黄色免费看| 国产精品久久久久久久久动漫| 激情五月播播久久久精品| 欧美日韩你懂的| 一区二区在线观看免费视频播放| 国产麻豆成人传媒免费观看| 在线成人av影院| 亚洲不卡在线观看| 一本久道中文字幕精品亚洲嫩| 国产欧美日产一区| 欧美精品一区二区三区久久久| 丝袜亚洲精品中文字幕一区| 久久九九久久九九| 成人毛片视频在线观看| 国产精品视频看| 欧美日韩在线亚洲一区蜜芽| 亚洲444eee在线观看| 蜜臀精品一区二区三区在线观看 | 色94色欧美sute亚洲线路二 | 欧美成人一区二区三区片免费 | 欧美日韩精品欧美日韩精品| 日韩电影一二三区| 欧美日韩午夜影院| 亚洲成在人线在线播放| 欧美日韩国产三级| 日韩国产在线一| 337p亚洲精品色噜噜狠狠|