View Javadoc

1   /**
2    * Logback: the reliable, generic, fast and flexible logging framework.
3    * Copyright (C) 1999-2011, QOS.ch. All rights reserved.
4    *
5    * This program and the accompanying materials are dual-licensed under
6    * either the terms of the Eclipse Public License v1.0 as published by
7    * the Eclipse Foundation
8    *
9    *   or (per the licensee's choosing)
10   *
11   * under the terms of the GNU Lesser General Public License version 2.1
12   * as published by the Free Software Foundation.
13   */
14  package ch.qos.logback.classic.jul;
15  
16  import ch.qos.logback.classic.Level;
17  import ch.qos.logback.classic.Logger;
18  
19  public class JULHelper {
20  
21  
22    static public final boolean isRegularNonRootLogger(java.util.logging.Logger julLogger) {
23      if (julLogger == null)
24        return false;
25      return !julLogger.getName().equals("");
26    }
27  
28    static public final boolean isRoot(java.util.logging.Logger julLogger) {
29      if (julLogger == null)
30        return false;
31      return julLogger.getName().equals("");
32    }
33  
34    static public java.util.logging.Level asJULLevel(Level lbLevel) {
35      switch (lbLevel.levelInt) {
36        case Level.ALL_INT:
37          return java.util.logging.Level.ALL;
38        case Level.TRACE_INT:
39          return java.util.logging.Level.FINEST;
40        case Level.DEBUG_INT:
41          return java.util.logging.Level.FINE;
42        case Level.INFO_INT:
43          return java.util.logging.Level.INFO;
44        case Level.WARN_INT:
45          return java.util.logging.Level.WARNING;
46        case Level.ERROR_INT:
47          return java.util.logging.Level.SEVERE;
48        case Level.OFF_INT:
49          return java.util.logging.Level.OFF;
50        default:
51          throw new IllegalArgumentException("Unexpected level [" + lbLevel + "]");
52      }
53    }
54  
55    static public String asJULLoggerName(String loggerName) {
56      if (Logger.ROOT_LOGGER_NAME.equals(loggerName))
57        return "";
58      else
59        return loggerName;
60    }
61  
62    static public java.util.logging.Logger asJULLogger(String loggerName) {
63      String julLoggerName = asJULLoggerName(loggerName);
64      return java.util.logging.Logger.getLogger(julLoggerName);
65    }
66  
67    static public java.util.logging.Logger asJULLogger(Logger logger) {
68      return asJULLogger(logger.getName());
69    }
70  
71  }
72  
73