KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > geronimo > system > logging > log4j > XLevel


1 /**
2  * Licensed to the Apache Software Foundation (ASF) under one or more
3  * contributor license agreements. See the NOTICE file distributed with
4  * this work for additional information regarding copyright ownership.
5  * The ASF licenses this file to You under the Apache License, Version 2.0
6  * (the "License"); you may not use this file except in compliance with
7  * the License. You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */

17
18 package org.apache.geronimo.system.logging.log4j;
19
20 import org.apache.log4j.Level;
21
22 /**
23  * Extention levels for Log4j
24  *
25  * @version $Rev: 476049 $ $Date: 2006-11-16 23:35:17 -0500 (Thu, 16 Nov 2006) $
26  */

27 public final class XLevel extends Level {
28     public static final int TRACE_INT = Level.DEBUG_INT - 1;
29     private static String JavaDoc TRACE_NAME = "TRACE";
30
31     /**
32      * The Log4j Level Object to use for trace level messages
33      */

34     public static final XLevel TRACE = new XLevel(TRACE_INT, TRACE_NAME, 7);
35
36     protected XLevel(int level, String JavaDoc name, int syslogEquiv) {
37         super(level, name, syslogEquiv);
38     }
39
40     /**
41      * Convert the String argument to a level. If the conversion
42      * fails then this method returns {@link #TRACE}.
43      */

44     public static Level toLevel(String JavaDoc name) {
45         return toLevel(name, XLevel.TRACE);
46     }
47
48     /**
49      * Convert the String argument to a level. If the conversion
50      * fails, return the level specified by the second argument,
51      * i.e. defaultValue.
52      */

53     public static Level toLevel(String JavaDoc name, Level defaultValue) {
54         if (name == null) {
55             return defaultValue;
56         }
57         if (name.toUpperCase().equals(TRACE_NAME)) {
58             return XLevel.TRACE;
59         }
60         return Level.toLevel(name, defaultValue);
61     }
62
63     /**
64      * Convert an integer passed as argument to a level. If the
65      * conversion fails, then this method returns {@link #DEBUG}.
66      */

67     public static Level toLevel(int level) throws IllegalArgumentException JavaDoc {
68         if (level == TRACE_INT) {
69             return XLevel.TRACE;
70         } else {
71             return Level.toLevel(level);
72         }
73     }
74 }
75
Popular Tags