Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 8
0.00% covered (danger)
0.00%
0 / 2
CRAP
0.00% covered (danger)
0.00%
0 / 1
DeleteIndexQualityStats
0.00% covered (danger)
0.00%
0 / 8
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 / 3
0.00% covered (danger)
0.00%
0 / 1
2
 doUpdate
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3namespace ProofreadPage\Index;
4
5use IDBAccessObject;
6use MediaWiki\Deferred\DataUpdate;
7use MediaWiki\Title\Title;
8use Wikimedia\Rdbms\ILoadBalancer;
9
10/**
11 * @license GPL-2.0-or-later
12 */
13class DeleteIndexQualityStats extends DataUpdate {
14
15    /** @var ILoadBalancer */
16    private $loadBalancer;
17
18    /** @var Title */
19    private $indexTitle;
20
21    /**
22     * @param ILoadBalancer $loadBalancer
23     * @param Title $indexTitle
24     */
25    public function __construct( ILoadBalancer $loadBalancer, Title $indexTitle ) {
26        parent::__construct();
27
28        $this->loadBalancer = $loadBalancer;
29        $this->indexTitle = $indexTitle;
30    }
31
32    /**
33     * @inheritDoc
34     */
35    public function doUpdate() {
36        $this->loadBalancer->getConnection( ILoadBalancer::DB_PRIMARY )->newDeleteQueryBuilder()
37            ->deleteFrom( 'pr_index' )
38            ->where( [ 'pr_page_id' => $this->indexTitle->getArticleID( IDBAccessObject::READ_LATEST ) ] )
39            ->caller( __METHOD__ )
40            ->execute();
41    }
42}