Project

General

Profile

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

    
21
/**
22
 * The root logger.
23
 *
24
 * @version $Revision: 822448 $
25
 * @package log4php
26
 * @see Logger
27
 */
28
class LoggerRoot extends Logger {
29
	/**
30
	 * Constructor
31
	 *
32
	 * @param integer $level initial log level
33
	 */
34
	public function __construct($level = null) {
35
		parent::__construct('root');
36

    
37
		if($level == null) {
38
			$level = LoggerLevel::getLevelAll();
39
		}
40
		$this->setLevel($level);
41
	} 
42
	
43
	/**
44
	 * @return LoggerLevel the level
45
	 */
46
	public function getChainedLevel() {
47
		return parent::getLevel();
48
	} 
49
	
50
	/**
51
	 * Setting a null value to the level of the root category may have catastrophic results.
52
	 * @param LoggerLevel $level
53
	 */
54
	public function setLevel($level) {
55
		if($level != null) {
56
			parent::setLevel($level);
57
		}	 
58
	}
59
	
60
	/**
61
	 * Always returns false.
62
	 * Because LoggerRoot has no parents, it returns false.
63
	 * @param Logger $parent
64
	 * @return boolean
65
	 */
66
	public function setParent(Logger $parent) {
67
		return false;
68
	}
69

    
70
}
(17-17/19)