* @file
*/
+use MediaWiki\MediaWikiServices;
+
/**
* Handles the backend logic of moving a page from one title
* to another.
$file->load( File::READ_LATEST );
if ( $file->exists() ) {
$status = $file->move( $this->newTitle );
- if ( !$status->isOk() ) {
+ if ( !$status->isOK() ) {
return $status;
}
}
$oldsnamespace = MWNamespace::getSubject( $this->oldTitle->getNamespace() );
$newsnamespace = MWNamespace::getSubject( $this->newTitle->getNamespace() );
if ( $oldsnamespace != $newsnamespace || $oldtitle != $newtitle ) {
- $store = WatchedItemStore::getDefaultInstance();
+ $store = MediaWikiServices::getInstance()->getWatchedItemStore();
$store->duplicateAllAssociatedEntries( $this->oldTitle, $this->newTitle );
}
$reason,
$nullRevision
];
- $dbw->onTransactionIdle( function () use ( $params, $dbw ) {
- // Keep each single hook handler atomic
- $dbw->setFlag( DBO_TRX ); // flag is automatically reset by DB layer
- Hooks::run( 'TitleMoveComplete', $params );
- } );
+ // Keep each single hook handler atomic
+ DeferredUpdates::addUpdate(
+ new AtomicSectionUpdate(
+ $dbw,
+ __METHOD__,
+ function () use ( $params ) {
+ Hooks::run( 'TitleMoveComplete', $params );
+ }
+ )
+ );
return Status::newGood();
}