Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 6
0.00% covered (danger)
0.00%
0 / 2
CRAP
0.00% covered (danger)
0.00%
0 / 1
PageEventIngress
0.00% covered (danger)
0.00%
0 / 6
0.00% covered (danger)
0.00%
0 / 2
6
0.00% covered (danger)
0.00%
0 / 1
 __construct
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 handlePageLatestRevisionChangedEvent
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3namespace MediaWiki\Extension\AbuseFilter\MediaWikiEventIngress;
4
5use MediaWiki\DomainEvent\DomainEventIngress;
6use MediaWiki\Extension\AbuseFilter\EditRevUpdater;
7use MediaWiki\Page\Event\PageLatestRevisionChangedEvent;
8use MediaWiki\Page\Event\PageLatestRevisionChangedListener;
9use MediaWiki\Page\WikiPageFactory;
10
11/**
12 * @noinspection PhpUnused
13 */
14class PageEventIngress extends DomainEventIngress implements PageLatestRevisionChangedListener {
15
16    public function __construct(
17        private readonly EditRevUpdater $revUpdater,
18        private readonly WikiPageFactory $wikiPageFactory
19    ) {
20    }
21
22    /** @inheritDoc */
23    public function handlePageLatestRevisionChangedEvent(
24        PageLatestRevisionChangedEvent $event
25    ): void {
26        $latestRevisionRecord = $event->getLatestRevisionAfter();
27        $wikiPage = $this->wikiPageFactory->newFromTitle(
28            $latestRevisionRecord->getPage()
29        );
30        $this->revUpdater->updateRev( $wikiPage, $latestRevisionRecord );
31    }
32}