aboutsummaryrefslogtreecommitdiffstats
path: root/includes/page
diff options
context:
space:
mode:
authorjenkins-bot <jenkins-bot@gerrit.wikimedia.org>2025-03-14 01:02:53 +0000
committerGerrit Code Review <gerrit@wikimedia.org>2025-03-14 01:02:53 +0000
commit515895c6d2b153c565da674338f6bc00cd4cfbc3 (patch)
tree682143d9c0b300dc1c1b926fc4931c55382211cc /includes/page
parente68d173dc91a1695765b37db31b7a3d679e61d40 (diff)
parent30429b1bedcddae55492b175b82d32ec0259a4bf (diff)
downloadmediawikicore-515895c6d2b153c565da674338f6bc00cd4cfbc3.tar.gz
mediawikicore-515895c6d2b153c565da674338f6bc00cd4cfbc3.zip
Merge "DomainEvents: Rename PageEvent and PageUpdatedEvent"
Diffstat (limited to 'includes/page')
-rw-r--r--includes/page/Event/PageDeletedEvent.php2
-rw-r--r--includes/page/Event/PageMovedEvent.php6
-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.php4
-rw-r--r--includes/page/UndeletePage.php6
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,
];