X-Git-Url: http://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fparser%2FParserFactory.php;h=bab1f364f6d21673c32df41404b6cadc65b2369c;hb=825d66bfa44c5dae2b78e2fe4f3b16f16aff4a12;hp=0446d9c6407f3e2f501be1fa22214677fbbd51cb;hpb=b911029b3915f2c7970e1211cc54e8d0fc05b632;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/parser/ParserFactory.php b/includes/parser/ParserFactory.php index 0446d9c640..bab1f364f6 100644 --- a/includes/parser/ParserFactory.php +++ b/includes/parser/ParserFactory.php @@ -19,10 +19,13 @@ * @ingroup Parser */ +use MediaWiki\BadFileLookup; use MediaWiki\Config\ServiceOptions; use MediaWiki\Linker\LinkRendererFactory; use MediaWiki\MediaWikiServices; use MediaWiki\Special\SpecialPageFactory; +use Psr\Log\LoggerInterface; +use Psr\Log\NullLogger; /** * @since 1.32 @@ -49,6 +52,12 @@ class ParserFactory { /** @var NamespaceInfo */ private $nsInfo; + /** @var LoggerInterface */ + private $logger; + + /** @var BadFileLookup */ + private $badFileLookup; + /** * Old parameter list, which we support for backwards compatibility, were: * array $parserConf See $wgParserConf documentation @@ -71,12 +80,20 @@ class ParserFactory { * @param SpecialPageFactory $spFactory * @param LinkRendererFactory $linkRendererFactory * @param NamespaceInfo|LinkRendererFactory|null $nsInfo + * @param LoggerInterface|null $logger + * @param BadFileLookup|null $badFileLookup * @since 1.32 */ public function __construct( - $svcOptions, MagicWordFactory $magicWordFactory, Language $contLang, - $urlProtocols, SpecialPageFactory $spFactory, $linkRendererFactory, - $nsInfo = null + $svcOptions, + MagicWordFactory $magicWordFactory, + Language $contLang, + $urlProtocols, + SpecialPageFactory $spFactory, + $linkRendererFactory, + $nsInfo = null, + $logger = null, + BadFileLookup $badFileLookup = null ) { // @todo Do we need to retain compat for constructing this class directly? if ( !$nsInfo ) { @@ -107,6 +124,9 @@ class ParserFactory { $this->specialPageFactory = $spFactory; $this->linkRendererFactory = $linkRendererFactory; $this->nsInfo = $nsInfo; + $this->logger = $logger ?: new NullLogger(); + $this->badFileLookup = $badFileLookup ?? + MediaWikiServices::getInstance()->getBadFileLookup(); } /** @@ -114,8 +134,17 @@ class ParserFactory { * @since 1.32 */ public function create() : Parser { - return new Parser( $this->svcOptions, $this->magicWordFactory, $this->contLang, $this, - $this->urlProtocols, $this->specialPageFactory, $this->linkRendererFactory, - $this->nsInfo ); + return new Parser( + $this->svcOptions, + $this->magicWordFactory, + $this->contLang, + $this, + $this->urlProtocols, + $this->specialPageFactory, + $this->linkRendererFactory, + $this->nsInfo, + $this->logger, + $this->badFileLookup + ); } }