MediaWiki  master
DeletePageJob.php
Go to the documentation of this file.
1 <?php
2 
6 class DeletePageJob extends Job implements GenericParameterJob {
7  public function __construct( array $params ) {
8  parent::__construct( 'deletePage', $params );
9 
10  $this->title = Title::makeTitle( $params['namespace'], $params['title'] );
11  }
12 
13  public function run() {
14  // Failure to load the page is not job failure.
15  // A parallel deletion operation may have already completed the page deletion.
16  $wikiPage = WikiPage::newFromID( $this->params['wikiPageId'] );
17  if ( $wikiPage ) {
18  $wikiPage->doDeleteArticleBatched(
19  $this->params['reason'],
20  $this->params['suppress'],
21  User::newFromId( $this->params['userId'] ),
22  json_decode( $this->params['tags'] ),
23  $this->params['logsubtype'],
24  false,
25  $this->getRequestId() );
26  }
27  return true;
28  }
29 }
__construct(array $params)
Class to both describe a background job and handle jobs.
Definition: Job.php:30
Class DeletePageJob.
getRequestId()
Definition: Job.php:229
run()
Run the job.
static makeTitle( $ns, $title, $fragment='', $interwiki='')
Create a new Title from a namespace index and a DB key.
Definition: Title.php:586
static newFromID( $id, $from='fromdb')
Constructor from a page id.
Definition: WikiPage.php:180
static newFromId( $id)
Static factory method for creation from a given user ID.
Definition: User.php:543
array $params
Array of job parameters.
Definition: Job.php:35
Interface for generic jobs only uses the parameters field and are JSON serializable.