diff options
author | jenkins-bot <jenkins-bot@gerrit.wikimedia.org> | 2025-03-14 01:02:53 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@wikimedia.org> | 2025-03-14 01:02:53 +0000 |
commit | 515895c6d2b153c565da674338f6bc00cd4cfbc3 (patch) | |
tree | 682143d9c0b300dc1c1b926fc4931c55382211cc /includes/page | |
parent | e68d173dc91a1695765b37db31b7a3d679e61d40 (diff) | |
parent | 30429b1bedcddae55492b175b82d32ec0259a4bf (diff) | |
download | mediawikicore-515895c6d2b153c565da674338f6bc00cd4cfbc3.tar.gz mediawikicore-515895c6d2b153c565da674338f6bc00cd4cfbc3.zip |
Merge "DomainEvents: Rename PageEvent and PageUpdatedEvent"
Diffstat (limited to 'includes/page')
-rw-r--r-- | includes/page/Event/PageDeletedEvent.php | 2 | ||||
-rw-r--r-- | includes/page/Event/PageMovedEvent.php | 6 | ||||
-rw-r--r-- | includes/page/Event/PageRevisionUpdatedEvent.php (renamed from includes/page/Event/PageUpdatedEvent.php) | 25 | ||||
-rw-r--r-- | includes/page/Event/PageStateEvent.php (renamed from includes/page/Event/PageEvent.php) | 13 | ||||
-rw-r--r-- | includes/page/MovePage.php | 4 | ||||
-rw-r--r-- | includes/page/UndeletePage.php | 6 |
6 files changed, 30 insertions, 26 deletions
diff --git a/includes/page/Event/PageDeletedEvent.php b/includes/page/Event/PageDeletedEvent.php index 35c2e52efa41..1944caf2d55b 100644 --- a/includes/page/Event/PageDeletedEvent.php +++ b/includes/page/Event/PageDeletedEvent.php @@ -16,7 +16,7 @@ use Wikimedia\Assert\Assert; * * @unstable until 1.45 */ -class PageDeletedEvent extends PageEvent { +class PageDeletedEvent extends PageStateEvent { public const TYPE = 'PageDeleted'; diff --git a/includes/page/Event/PageMovedEvent.php b/includes/page/Event/PageMovedEvent.php index 0c7834002c2a..f7459d2c0bbf 100644 --- a/includes/page/Event/PageMovedEvent.php +++ b/includes/page/Event/PageMovedEvent.php @@ -27,15 +27,15 @@ use MediaWiki\User\UserIdentity; /** * Domain event representing page moves. - * PageMovedEvent is a special case of an PageUpdatedEvent. + * PageMovedEvent is a special case of an PageRevisionUpdatedEvent. * It exists as a separate event to accommodate listeners that are only * interested in the title change. * - * @see PageUpdatedEvent + * @see PageRevisionUpdatedEvent * * @unstable until 1.45 */ -class PageMovedEvent extends PageEvent { +class PageMovedEvent extends PageStateEvent { public const TYPE = 'PageMoved'; private PageReference $oldLocation; diff --git a/includes/page/Event/PageUpdatedEvent.php b/includes/page/Event/PageRevisionUpdatedEvent.php index 13dbb1807ab8..ef8380e57eea 100644 --- a/includes/page/Event/PageUpdatedEvent.php +++ b/includes/page/Event/PageRevisionUpdatedEvent.php @@ -29,15 +29,15 @@ use MediaWiki\User\UserIdentity; use Wikimedia\Assert\Assert; /** - * Domain event representing a page updated. A PageUpdatedEvent is triggered + * Domain event representing a page update. A PageRevisionUpdatedEvent is triggered * when a page's current revision changes, even if the content did not change * (for a dummy revision). A reconciliation version of this event may be * triggered even when the page's current version did not change (on null edits), * to provide an opportunity to listeners to recover from data loss and * corruption by re-generating any derived data. * - * PageUpdatedEvent is emitted by DerivedPageDataUpdater, typically triggered by - * PageUpdater. User activities that trigger a PageUpdated event include: + * PageRevisionUpdatedEvent is emitted by DerivedPageDataUpdater, typically triggered by + * PageUpdater. User activities that trigger a PageRevisionUpdated event include: * - editing, including page creation and null-edits * - moving pages * - undeleting pages @@ -46,22 +46,19 @@ use Wikimedia\Assert\Assert; * protection level. * * Extensions that want to subscribe to this event should list - * "PageUpdated" as a subscribed event type. + * "PageRevisionUpdated" as a subscribed event type. * Subscribers based on EventSubscriberBase should implement the - * handlePageUpdatedEventAfterCommit() listener method to be informed when + * handlePageRevisionUpdatedEvent() listener method to be informed when * a page update has been committed to the database. * * See the documentation of EventSubscriberBase and DomainEventSource for * more options and details. * - * @todo: rename to something more descriptive, like - * PageContentUpdatedEvent. - * * @unstable until 1.45 */ -class PageUpdatedEvent extends PageEvent implements PageUpdateCauses { +class PageRevisionUpdatedEvent extends PageStateEvent implements PageUpdateCauses { - public const TYPE = 'PageUpdated'; + public const TYPE = 'PageRevisionUpdated'; /** * @var string Do not notify other users (e.g. via RecentChanges or @@ -129,6 +126,9 @@ class PageUpdatedEvent extends PageEvent implements PageUpdateCauses { parent::__construct( $cause, $page, $performer, $tags, $flags, $newRevision->getTimestamp() ); $this->declareEventType( self::TYPE ); + // Legacy event type name, deprecated (T388588). + $this->declareEventType( 'PageUpdated' ); + Assert::parameter( $page->exists(), '$page', 'must exist' ); Assert::parameter( $page->isSamePageAs( $newRevision->getPage() ), @@ -336,4 +336,7 @@ class PageUpdatedEvent extends PageEvent implements PageUpdateCauses { } /** @deprecated temporary alias, remove before 1.44 release */ -class_alias( PageUpdatedEvent::class, 'MediaWiki\Storage\PageUpdatedEvent' ); +class_alias( PageRevisionUpdatedEvent::class, 'MediaWiki\Storage\PageUpdatedEvent' ); + +/** @deprecated temporary alias, remove before 1.44 release */ +class_alias( PageRevisionUpdatedEvent::class, 'MediaWiki\Page\Event\PageUpdatedEvent' ); diff --git a/includes/page/Event/PageEvent.php b/includes/page/Event/PageStateEvent.php index 0334a6eef1a9..81d915f2dcf8 100644 --- a/includes/page/Event/PageEvent.php +++ b/includes/page/Event/PageStateEvent.php @@ -27,17 +27,18 @@ use Wikimedia\Assert\Assert; use Wikimedia\Timestamp\ConvertibleTimestamp; /** - * Base class for domain events representing changes to pages. + * Base class for domain events representing changes to page state. * - * @todo: decide whether we want to change the name to PageChangedEvent - * and rename PageUpdatedEvent to something more descriptive, like - * PageContentUpdatedEvent. + * Page state events include life cycle changes to the page (e.g. create, move, + * delete) as well as changing a page's latest revision. They do not include + * changes to the page's revision history (except for changes to the latest + * revision). * * @unstable until 1.45 */ -abstract class PageEvent extends DomainEvent { +abstract class PageStateEvent extends DomainEvent { - public const TYPE = 'Page'; + public const TYPE = 'PageState'; /** * @var string This is a reconciliation event, triggered in order to give diff --git a/includes/page/MovePage.php b/includes/page/MovePage.php index 96734bf8414b..8804d49dec8a 100644 --- a/includes/page/MovePage.php +++ b/includes/page/MovePage.php @@ -38,7 +38,7 @@ use MediaWiki\HookContainer\HookContainer; use MediaWiki\HookContainer\HookRunner; use MediaWiki\MainConfigNames; use MediaWiki\Page\Event\PageMovedEvent; -use MediaWiki\Page\Event\PageUpdatedEvent; +use MediaWiki\Page\Event\PageRevisionUpdatedEvent; use MediaWiki\Permissions\Authority; use MediaWiki\Permissions\PermissionStatus; use MediaWiki\Permissions\RestrictionStore; @@ -935,7 +935,7 @@ class MovePage { // NOTE: Use FLAG_SILENT to avoid redundant RecentChanges entry. // The move log already generates one. $nullRevision = $newpage->newPageUpdater( $user ) - ->setCause( PageUpdatedEvent::CAUSE_MOVE ) + ->setCause( PageRevisionUpdatedEvent::CAUSE_MOVE ) ->setHints( [ 'oldtitle' => $this->oldTitle, 'oldcountable' => $oldcountable, diff --git a/includes/page/UndeletePage.php b/includes/page/UndeletePage.php index 020049c6329b..ecc405b13792 100644 --- a/includes/page/UndeletePage.php +++ b/includes/page/UndeletePage.php @@ -29,7 +29,7 @@ use MediaWiki\Content\IContentHandlerFactory; use MediaWiki\Content\ValidationParams; use MediaWiki\HookContainer\HookContainer; use MediaWiki\HookContainer\HookRunner; -use MediaWiki\Page\Event\PageUpdatedEvent; +use MediaWiki\Page\Event\PageRevisionUpdatedEvent; use MediaWiki\Permissions\Authority; use MediaWiki\Permissions\PermissionStatus; use MediaWiki\Revision\ArchivedRevisionLookup; @@ -640,8 +640,8 @@ class UndeletePage { if ( $created || $wasnew ) { // Update site stats, link tables, etc $options = [ - PageUpdatedEvent::FLAG_SILENT => true, - PageUpdatedEvent::FLAG_IMPLICIT => true, + PageRevisionUpdatedEvent::FLAG_SILENT => true, + PageRevisionUpdatedEvent::FLAG_IMPLICIT => true, 'created' => $created, 'oldcountable' => $oldcountable, ]; |