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

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

?? logger.java

?? kaffe Java 解釋器語言,源碼,Java的子集系統,開放源代碼
?? JAVA
?? 第 1 頁 / 共 3 頁
字號:
/* Logger.java   -- a class for logging messagesCopyright (C) 2002 Free Software Foundation, Inc.This file is part of GNU Classpath.GNU Classpath is free software; you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation; either version 2, or (at your option)any later version.GNU Classpath is distributed in the hope that it will be useful, butWITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNUGeneral Public License for more details.You should have received a copy of the GNU General Public Licensealong with GNU Classpath; see the file COPYING.  If not, write to theFree Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA02111-1307 USA.Linking this library statically or dynamically with other modules ismaking a combined work based on this library.  Thus, the terms andconditions of the GNU General Public License cover the wholecombination.As a special exception, the copyright holders of this library give youpermission to link this library with independent modules to produce anexecutable, regardless of the license terms of these independentmodules, and to copy and distribute the resulting executable underterms of your choice, provided that you also meet, for each linkedindependent module, the terms and conditions of the license of thatmodule.  An independent module is a module which is not derived fromor based on this library.  If you modify this library, you may extendthis exception to your version of the library, but you are notobligated to do so.  If you do not wish to do so, delete thisexception statement from your version.*/package java.util.logging;import java.util.ResourceBundle;import java.util.MissingResourceException;import java.util.List;/** * A Logger is used for logging information about events. Usually, there * is a seprate logger for each subsystem or component, although there * is a shared instance for components that make only occasional use of * the logging framework. * * <p>It is common to name a logger after the name of a corresponding * Java package.  Loggers are organized into a hierarchical namespace; * for example, the logger <code>"org.gnu.foo"</code> is the * <em>parent</em> of logger <code>"org.gnu.foo.bar"</code>. * * <p>A logger for a named subsystem can be obtained through {@link * java.util.logging.Logger#getLogger(java.lang.String)}.  However, * only code which has been granted the permission to control the * logging infrastructure will be allowed to customize that logger. * Untrusted code can obtain a private, anonymous logger through * {@link #getAnonymousLogger()} if it wants to perform any * modifications to the logger. * * <p>FIXME: Write more documentation. * * @author Sascha Brawer (brawer@acm.org) */public class Logger{  /**   * A logger provided to applications that make only occasional use   * of the logging framework, typically early prototypes.  Serious   * products are supposed to create and use their own Loggers, so   * they can be controlled individually.   */  public static final Logger global = getLogger("global");  /**   * The name of the Logger, or <code>null</code> if the logger is   * anonymous.   *   * <p>A previous version of the GNU Classpath implementation granted   * untrusted code the permission to control any logger whose name   * was null.  However, test code revealed that the Sun J2SE 1.4   * reference implementation enforces the security control for any   * logger that was not created through getAnonymousLogger, even if   * it has a null name.  Therefore, a separate flag {@link   * Logger#anonymous} was introduced.   */  private final String name;  /**   * The name of the resource bundle used for localization.   *   * <p>This variable cannot be declared as <code>final</code>   * because its value can change as a result of calling   * getLogger(String,String).   */  private String resourceBundleName;  /**   * The resource bundle used for localization.   *   * <p>This variable cannot be declared as <code>final</code>   * because its value can change as a result of calling   * getLogger(String,String).   */  private ResourceBundle resourceBundle;  private Filter filter;  private final List handlerList = new java.util.ArrayList(4);  private Handler[] handlers = new Handler[0];  /**   * Indicates whether or not this logger is anonymous.  While   * a LoggingPermission is required for any modifications to   * a normal logger, untrusted code can obtain an anonymous logger   * and modify it according to its needs.   *   * <p>A previous version of the GNU Classpath implementation   * granted access to every logger whose name was null.   * However, test code revealed that the Sun J2SE 1.4 reference   * implementation enforces the security control for any logger   * that was not created through getAnonymousLogger, even   * if it has a null name.   */  private boolean anonymous;  private boolean useParentHandlers;  private Level level;  private Logger parent;  /**   * Constructs a Logger for a subsystem.  Most applications do not   * need to create new Loggers explicitly; instead, they should call   * the static factory methods   * {@link #getLogger(java.lang.String,java.lang.String) getLogger}   * (with ResourceBundle for localization) or   * {@link #getLogger(java.lang.String) getLogger} (without   * ResourceBundle), respectively.   *   * @param name the name for the logger, for example "java.awt"   *             or "com.foo.bar". The name should be based on   *             the name of the package issuing log records   *             and consist of dot-separated Java identifiers.   *   * @param resourceBundleName the name of a resource bundle   *        for localizing messages, or <code>null</code>   *	    to indicate that messages do not need to be localized.   *   * @throws java.util.MissingResourceException if   *         <code>resourceBundleName</code> is not <code>null</code>   *         and no such bundle could be located.   */  protected Logger(String name, String resourceBundleName)    throws MissingResourceException  {    this.name = name;    this.resourceBundleName = resourceBundleName;    if (resourceBundleName == null)      resourceBundle = null;    else      resourceBundle = ResourceBundle.getBundle(resourceBundleName);    level = null;    /* This is null when the root logger is being constructed,     * and the root logger afterwards.     */    parent = LogManager.getLogManager().rootLogger;    useParentHandlers = (parent != null);  }  /**   * Finds a registered logger for a subsystem, or creates one in   * case no logger has been registered yet.   *   * @param name the name for the logger, for example "java.awt"   *             or "com.foo.bar". The name should be based on   *             the name of the package issuing log records   *             and consist of dot-separated Java identifiers.   *   * @throws IllegalArgumentException if a logger for the subsystem   *         identified by <code>name</code> has already been created,   *         but uses a a resource bundle for localizing messages.   *   * @throws NullPointerException if <code>name</code> is   *         <code>null</code>.   *   * @return a logger for the subsystem specified by <code>name</code>   *         that does not localize messages.   */  public static Logger getLogger(String name)  {    return getLogger(name, null);  }      /**   * Finds a registered logger for a subsystem, or creates one in case   * no logger has been registered yet.   *   * <p>If a logger with the specified name has already been   * registered, the behavior depends on the resource bundle that is   * currently associated with the existing logger.   *   * <ul><li>If the existing logger uses the same resource bundle as   * specified by <code>resourceBundleName</code>, the existing logger   * is returned.</li>   *   * <li>If the existing logger currently does not localize messages,   * the existing logger is modified to use the bundle specified by   * <code>resourceBundleName</code>.  The existing logger is then   * returned.  Therefore, all subsystems currently using this logger   * will produce localized messages from now on.</li>   *   * <li>If the existing logger already has an associated resource   * bundle, but a different one than specified by   * <code>resourceBundleName</code>, an   * <code>IllegalArgumentException</code> is thrown.</li></ul>   *   * @param name the name for the logger, for example "java.awt"   *             or "org.gnu.foo". The name should be based on   *             the name of the package issuing log records   *             and consist of dot-separated Java identifiers.   *   * @param resourceBundleName the name of a resource bundle   *        for localizing messages, or <code>null</code>   *	    to indicate that messages do not need to be localized.   *   * @return a logger for the subsystem specified by <code>name</code>.   *   * @throws java.util.MissingResourceException if   *         <code>resourceBundleName</code> is not <code>null</code>   *         and no such bundle could be located.      *   * @throws IllegalArgumentException if a logger for the subsystem   *         identified by <code>name</code> has already been created,   *         but uses a different resource bundle for localizing   *         messages.   *   * @throws NullPointerException if <code>name</code> is   *         <code>null</code>.   */  public static Logger getLogger(String name, String resourceBundleName)  {    LogManager lm = LogManager.getLogManager();    Logger     result;    /* Throw NullPointerException if name is null. */    name.getClass();    /* Without synchronized(lm), it could happen that another thread     * would create a logger between our calls to getLogger and     * addLogger.  While addLogger would indicate this by returning     * false, we could not be sure that this other logger was still     * existing when we called getLogger a second time in order     * to retrieve it -- note that LogManager is only allowed to     * keep weak references to registered loggers, so Loggers     * can be garbage collected at any time in general, and between     * our call to addLogger and our second call go getLogger     * in particular.     *     * Of course, we assume here that LogManager.addLogger etc.     * are synchronizing on the global LogManager object. There     * is a comment in the implementation of LogManager.addLogger     * referring to this comment here, so that any change in     * the synchronization of LogManager will be reflected here.     */    synchronized (lm)    {      result = lm.getLogger(name);      if (result == null)      {	boolean couldBeAdded;	result = new Logger(name, resourceBundleName);	couldBeAdded = lm.addLogger(result);	if (!couldBeAdded)	  throw new IllegalStateException("cannot register new logger");      }      else      {	/* The logger already exists. Make sure it uses	 * the same resource bundle for localizing messages.	 */	String existingBundleName = result.getResourceBundleName();	/* The Sun J2SE 1.4 reference implementation will return the	 * registered logger object, even if it does not have a resource	 * bundle associated with it. However, it seems to change the	 * resourceBundle of the registered logger to the bundle	 * whose name was passed to getLogger.	 */	if ((existingBundleName == null) && (resourceBundleName != null))	{	  /* If ResourceBundle.getBundle throws an exception, the	   * existing logger will be unchanged.  This would be	   * different if the assignment to resourceBundleName	   * came first.	   */	  result.resourceBundle = ResourceBundle.getBundle(resourceBundleName);	  result.resourceBundleName = resourceBundleName;	  return result;	}	if ((existingBundleName != resourceBundleName)	    && ((existingBundleName == null)		|| !existingBundleName.equals(resourceBundleName)))	{	  throw new IllegalArgumentException();	}      }    }    return result;  }    /**   * Creates a new, unnamed logger.  Unnamed loggers are not   * registered in the namespace of the LogManager, and no special   * security permission is required for changing their state.   * Therefore, untrusted applets are able to modify their private   * logger instance obtained through this method.   *   * <p>The parent of the newly created logger will the the root   * logger, from which the level threshold and the handlers are   * inherited.   */  public static Logger getAnonymousLogger()  {    return getAnonymousLogger(null);  }  /**   * Creates a new, unnamed logger.  Unnamed loggers are not   * registered in the namespace of the LogManager, and no special   * security permission is required for changing their state.   * Therefore, untrusted applets are able to modify their private   * logger instance obtained through this method.   *   * <p>The parent of the newly created logger will the the root   * logger, from which the level threshold and the handlers are   * inherited.   *   * @param resourceBundleName the name of a resource bundle   *        for localizing messages, or <code>null</code>   *	    to indicate that messages do not need to be localized.   *   * @throws java.util.MissingResourceException if   *         <code>resourceBundleName</code> is not <code>null</code>   *         and no such bundle could be located.   */  public static Logger getAnonymousLogger(String resourceBundleName)    throws MissingResourceException  {    Logger  result;    result = new Logger(null, resourceBundleName);    result.anonymous = true;    return result;  }  /**   * Returns the name of the resource bundle that is being used for   * localizing messages.   *   * @return the name of the resource bundle used for localizing messages,   *         or <code>null</code> if the parent's resource bundle   *         is used for this purpose.   */  public synchronized String getResourceBundleName()  {    return resourceBundleName;  }  /**   * Returns the resource bundle that is being used for localizing

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美综合色免费| 91蝌蚪porny| 亚洲成人av福利| 亚洲综合小说图片| 亚洲欧美日韩国产成人精品影院| 国产日韩欧美精品电影三级在线| 精品久久久久久亚洲综合网| 欧美乱熟臀69xxxxxx| 91精品欧美综合在线观看最新 | 日韩欧美一区在线| 91精品欧美福利在线观看| 在线不卡一区二区| 日韩免费看网站| 国产欧美日韩久久| 日本一区二区三区国色天香 | 不卡的av在线播放| 91免费国产在线观看| 91精品福利视频| 欧美精品v日韩精品v韩国精品v| 亚洲精品一区二区三区香蕉| 国产性色一区二区| 日韩一区在线看| 亚洲18女电影在线观看| 麻豆国产精品一区二区三区 | 欧美日韩国产区一| 欧美电影精品一区二区| 久久久777精品电影网影网 | 亚洲国产中文字幕在线视频综合| 亚洲超碰精品一区二区| 精品综合久久久久久8888| 国产suv一区二区三区88区| 成人app网站| 欧美美女网站色| 中文字幕乱码一区二区免费| 一区二区在线观看视频在线观看| 日韩黄色一级片| 99久久精品免费精品国产| 欧美色男人天堂| 中文字幕二三区不卡| 五月婷婷另类国产| 成人动漫一区二区在线| 欧美一区二区网站| 亚洲色图在线视频| 久久成人综合网| 欧美亚洲综合在线| 欧美激情一区二区三区| 日韩不卡免费视频| 91在线你懂得| 久久亚洲春色中文字幕久久久| 中文字幕一区二| 国产一区二区三区视频在线播放| 日本高清成人免费播放| 欧美激情在线一区二区| 日韩成人午夜电影| 91精品91久久久中77777| 亚洲精品在线观看网站| 日本午夜精品一区二区三区电影| 成人午夜av在线| 久久久亚洲精品石原莉奈| 日韩高清一区在线| 欧美精选午夜久久久乱码6080| 中文字幕制服丝袜一区二区三区| 精品中文av资源站在线观看| 欧美精品自拍偷拍| 亚洲综合无码一区二区| 99久久国产免费看| 国产精品久久久久毛片软件| 韩国三级在线一区| 亚洲精品在线免费观看视频| 麻豆国产精品官网| 欧美一级久久久久久久大片| 亚洲一区在线观看免费 | 日韩精品亚洲一区| 在线观看网站黄不卡| 日韩毛片视频在线看| 成人精品国产福利| 国产精品福利在线播放| 成人国产精品视频| 国产精品少妇自拍| 91麻豆福利精品推荐| 最新国产成人在线观看| 色天天综合久久久久综合片| 亚洲精品一二三四区| 欧美亚洲一区二区在线观看| 亚洲国产精品尤物yw在线观看| 欧美伊人精品成人久久综合97| 亚洲午夜国产一区99re久久| 欧美日韩免费不卡视频一区二区三区 | 亚洲综合在线视频| 欧美精品18+| 麻豆一区二区99久久久久| 欧美精品一区二区三区在线| 国产在线国偷精品免费看| 国产午夜精品福利| 日本黄色一区二区| 青青国产91久久久久久| 精品国产91九色蝌蚪| 国产高清精品网站| 亚洲一区二区视频| 精品国产91洋老外米糕| 国产91综合网| 亚洲高清免费观看| 欧美不卡一区二区三区四区| 成人福利视频网站| 日日摸夜夜添夜夜添亚洲女人| 久久综合狠狠综合久久激情| 成人免费观看视频| 日韩精品免费视频人成| 中文字幕欧美激情一区| 欧美在线观看18| 九一久久久久久| 亚洲另类色综合网站| 日韩你懂的电影在线观看| 成人免费视频播放| 美女一区二区在线观看| 亚洲欧美色综合| 精品国产乱码久久久久久夜甘婷婷 | 国产精品欧美经典| 欧美肥妇毛茸茸| voyeur盗摄精品| 久久精品99国产精品| 一级精品视频在线观看宜春院 | 国产精品日韩成人| 欧美一区二区精品久久911| 成人久久18免费网站麻豆| 蜜臀av在线播放一区二区三区| 亚洲天堂精品视频| 久久一区二区视频| 欧美一区二区成人| 欧美日免费三级在线| 不卡av电影在线播放| 国产在线乱码一区二区三区| 亚洲影院理伦片| 亚洲欧洲美洲综合色网| 欧美精品一区二区三| 91麻豆精品国产91久久久| 91丨porny丨国产入口| 国产麻豆成人传媒免费观看| 视频在线观看一区| 亚洲福利国产精品| 亚洲色图视频网| 欧美激情一区二区三区全黄| 久久亚洲一区二区三区明星换脸 | 99在线精品观看| 国产成人综合在线| 国产精品一区二区免费不卡| 免费看日韩精品| 水蜜桃久久夜色精品一区的特点| 一区二区三区中文字幕电影| 国产精品久久久久久一区二区三区| 久久久久久久久久久黄色| 日韩一区二区电影在线| 日韩免费观看高清完整版 | 久久久久久久久久久久久久久99| 欧美一卡2卡3卡4卡| 777午夜精品视频在线播放| 欧美日韩高清不卡| 欧美日韩三级在线| 91精品国产欧美一区二区18| 欧美一级片在线看| 日韩一级在线观看| 精品福利av导航| 国产欧美一区二区三区沐欲| 国产网站一区二区| 国产精品不卡视频| 亚洲精品ww久久久久久p站| 一区二区三区在线免费播放| 一区二区三区在线视频观看 | 欧美v国产在线一区二区三区| 欧美mv日韩mv国产| 欧美极品aⅴ影院| 亚洲欧美一区二区三区国产精品 | 99国产精品久久久久久久久久 | 国产电影一区在线| 99久久免费国产| 欧美视频完全免费看| 91精品国产综合久久香蕉麻豆| 欧美一区日本一区韩国一区| 26uuu亚洲综合色欧美 | 欧美精品九九99久久| 日韩精品一区二区三区蜜臀| 国产亚洲精品bt天堂精选| 中文字幕一区免费在线观看| 亚洲国产精品久久久男人的天堂| 日本不卡一二三| 99视频有精品| 4hu四虎永久在线影院成人| 国产欧美一区二区三区网站| 亚洲在线观看免费| 国产成人在线观看| 欧美挠脚心视频网站| 国产亚洲精品资源在线26u| 亚洲激情在线播放| 狠狠v欧美v日韩v亚洲ⅴ| 91麻豆国产自产在线观看| 久久嫩草精品久久久久| 亚洲线精品一区二区三区八戒| 国产一区二区三区免费在线观看| 色老综合老女人久久久| 久久精品人人做人人爽人人|