]> scripts.mit.edu Git - autoinstalls/mediawiki.git/blob - includes/debug/logger/NullSpi.php
MediaWiki 1.30.2
[autoinstalls/mediawiki.git] / includes / debug / logger / NullSpi.php
1 <?php
2 /**
3  * This program is free software; you can redistribute it and/or modify
4  * it under the terms of the GNU General Public License as published by
5  * the Free Software Foundation; either version 2 of the License, or
6  * (at your option) any later version.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License along
14  * with this program; if not, write to the Free Software Foundation, Inc.,
15  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
16  * http://www.gnu.org/copyleft/gpl.html
17  *
18  * @file
19  */
20
21 namespace MediaWiki\Logger;
22
23 use Psr\Log\NullLogger;
24
25 /**
26  * LoggerFactory service provider that creates \Psr\Log\NullLogger
27  * instances. A NullLogger silently discards all log events sent to it.
28  *
29  * Usage:
30  *
31  *     $wgMWLoggerDefaultSpi = [
32  *         'class' => '\\MediaWiki\\Logger\\NullSpi',
33  *     ];
34  *
35  * @see \MediaWiki\Logger\LoggerFactory
36  * @since 1.25
37  * @copyright © 2014 Wikimedia Foundation and contributors
38  */
39 class NullSpi implements Spi {
40
41         /**
42          * @var \Psr\Log\NullLogger $singleton
43          */
44         protected $singleton;
45
46         public function __construct() {
47                 $this->singleton = new NullLogger();
48         }
49
50         /**
51          * Get a logger instance.
52          *
53          * @param string $channel Logging channel
54          * @return \Psr\Log\NullLogger Logger instance
55          */
56         public function getLogger( $channel ) {
57                 return $this->singleton;
58         }
59
60 }