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.log4j.spi;
19
20 import org.apache.log4j.Level;
21 import org.apache.log4j.Logger;
22 import org.apache.log4j.helpers.LogLog;
23
24 // Contibutors: Mathias Bogaert
25
26 /**
27 * @deprecated Replaced by {@link RootLogger}.
28 */
29 final public class RootCategory extends Logger {
30
31 /**
32 The root category names itself as "root". However, the root
33 category cannot be retrieved by name.
34 */
35 public
36 RootCategory(Level level) {
37 super("root");
38 setLevel(level);
39 }
40
41
42 /**
43 Return the assigned level value without walking the category
44 hierarchy.
45 */
46 final
47 public
48 Level getChainedLevel() {
49 return level;
50 }
51
52 /**
53 Setting a null value to the level of the root category may have catastrophic
54 results. We prevent this here.
55
56 @since 0.8.3 */
57 final
58 public
59 void setLevel(Level level) {
60 if(level == null) {
61 LogLog.error("You have tried to set a null level to root.",
62 new Throwable());
63 }
64 else {
65 this.level = level;
66 }
67 }
68
69 final
70 public
71 void setPriority(Level level) {
72 setLevel(level);
73 }
74
75
76 }