MediaWiki master
MediaWiki\Storage\EditResult Class Reference

Object for storing information about the effects of an edit. More...

Inherits JsonSerializable.

Collaboration diagram for MediaWiki\Storage\EditResult:

Public Member Functions

 __construct (bool $isNew, $originalRevisionId, ?int $revertMethod, ?int $oldestReverted, ?int $newestReverted, bool $isExactRevert, bool $isNullEdit, array $revertTags)
 
 getNewestRevertedRevisionId ()
 Returns the ID of the most recent revision that was reverted by this edit.
 
 getOldestRevertedRevisionId ()
 Returns the ID of the oldest revision that was reverted by this edit.
 
 getOriginalRevisionId ()
 Returns the ID of an earlier revision that is being repeated or restored.
 
 getRevertMethod ()
 Returns the revert method that was used to perform the edit, if any changes were reverted.
 
 getRevertTags ()
 Returns an array of revert-related tags that were applied automatically to this edit.
 
 getUndidRevId ()
 If the edit was an undo, returns the oldest revision that was undone.
 
 isExactRevert ()
 Whether the edit was an exact revert, i.e.
 
 isNew ()
 Whether the edit created a new page.
 
 isNullEdit ()
 An edit is a null edit if the original revision is equal to the parent revision, i.e.
 
 isRevert ()
 Whether the edit was a revert, not necessarily exact.
 
 jsonSerialize ()
 Returns an array representing the EditResult object.
 

Static Public Member Functions

static newFromArray (array $a)
 Recreate the EditResult object from its array representation.
 

Public Attributes

const REVERT_MANUAL = 3
 
const REVERT_ROLLBACK = 2
 
const REVERT_UNDO = 1
 

Detailed Description

Object for storing information about the effects of an edit.

This object should be constructed by an EditResultBuilder with relevant information filled in during the process of saving the revision by the PageUpdater. You can use it to extract information about whether the edit was a revert and which edits were reverted.

Since
1.35
Author
Ostrzyciel

Definition at line 35 of file EditResult.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\Storage\EditResult::__construct ( bool  $isNew,
  $originalRevisionId,
?int  $revertMethod,
?int  $oldestReverted,
?int  $newestReverted,
bool  $isExactRevert,
bool  $isNullEdit,
array  $revertTags 
)
Parameters
bool$isNew
bool | int$originalRevisionId
int | null$revertMethod
int | null$oldestReverted
int | null$newestReverted
bool$isExactRevert
bool$isNullEdit
string[]$revertTags
Access: internal
Use EditResultBuilder for constructing EditResults.

Definition at line 80 of file EditResult.php.

References MediaWiki\Storage\EditResult\isExactRevert(), MediaWiki\Storage\EditResult\isNew(), and MediaWiki\Storage\EditResult\isNullEdit().

Member Function Documentation

◆ getNewestRevertedRevisionId()

MediaWiki\Storage\EditResult::getNewestRevertedRevisionId ( )

Returns the ID of the most recent revision that was reverted by this edit.

The same as getOldestRevertedRevisionId if only a single revision was reverted. Returns null if the edit was not a revert.

See also
EditResult::isRevert() for information on how a revert is defined
Returns
int|null

Definition at line 144 of file EditResult.php.

◆ getOldestRevertedRevisionId()

MediaWiki\Storage\EditResult::getOldestRevertedRevisionId ( )

Returns the ID of the oldest revision that was reverted by this edit.

The same as getOldestRevertedRevisionId if only a single revision was reverted. Returns null if the edit was not a revert.

See also
EditResult::isRevert() for information on how a revert is defined
Returns
int|null

Definition at line 157 of file EditResult.php.

◆ getOriginalRevisionId()

MediaWiki\Storage\EditResult::getOriginalRevisionId ( )

Returns the ID of an earlier revision that is being repeated or restored.

The original revision's content should match the new revision exactly.

Returns
bool|int The original revision id, or false if no earlier revision is known to be repeated or restored. The old PageUpdater::getOriginalRevisionId() returned false in such cases. This value would be then passed on to extensions through hooks, so it may be wise to keep compatibility with the old behavior.

Definition at line 185 of file EditResult.php.

◆ getRevertMethod()

MediaWiki\Storage\EditResult::getRevertMethod ( )

Returns the revert method that was used to perform the edit, if any changes were reverted.

Returns null if the edit was not a revert.

Possible values: REVERT_UNDO, REVERT_ROLLBACK, REVERT_MANUAL

See also
EditResult::isRevert()
Returns
int|null

Definition at line 229 of file EditResult.php.

◆ getRevertTags()

MediaWiki\Storage\EditResult::getRevertTags ( )

Returns an array of revert-related tags that were applied automatically to this edit.

Returns
string[]

Definition at line 258 of file EditResult.php.

◆ getUndidRevId()

MediaWiki\Storage\EditResult::getUndidRevId ( )

If the edit was an undo, returns the oldest revision that was undone.

Method kept for compatibility reasons.

Returns
int

Definition at line 167 of file EditResult.php.

◆ isExactRevert()

MediaWiki\Storage\EditResult::isExactRevert ( )

Whether the edit was an exact revert, i.e.

the contents of the revert revision and restored revision match

Returns
bool

Definition at line 239 of file EditResult.php.

Referenced by MediaWiki\Storage\EditResult\__construct().

◆ isNew()

MediaWiki\Storage\EditResult::isNew ( )

Whether the edit created a new page.

Returns
bool

Definition at line 194 of file EditResult.php.

Referenced by MediaWiki\Storage\EditResult\__construct().

◆ isNullEdit()

MediaWiki\Storage\EditResult::isNullEdit ( )

An edit is a null edit if the original revision is equal to the parent revision, i.e.

no changes were made.

Returns
bool

Definition at line 249 of file EditResult.php.

Referenced by MediaWiki\Storage\EditResult\__construct().

◆ isRevert()

MediaWiki\Storage\EditResult::isRevert ( )

Whether the edit was a revert, not necessarily exact.

An edit is considered a revert if it either:

  • Restores the page to an exact previous state (rollbacks, manual reverts and some undos). E.g. for edits A B C D, edits C and D are reverted.
  • Undoes some edits made previously, not necessarily restoring the page to an exact previous state (undo). It is guaranteed that the revert was a "clean" result of a three-way merge and no additional changes were made by the reverting user. E.g. for edits A B C D, edits B and C are reverted.

To check whether the edit was an exact revert, please use the isExactRevert() method. The getRevertMethod() will provide additional information about which kind of revert was made.

Returns
bool

Definition at line 215 of file EditResult.php.

◆ jsonSerialize()

MediaWiki\Storage\EditResult::jsonSerialize ( )

Returns an array representing the EditResult object.

See also
EditResult::newFromArray()
Returns
array @phpcs:ignore Generic.Files.LineLength
Since
1.36

Definition at line 273 of file EditResult.php.

◆ newFromArray()

static MediaWiki\Storage\EditResult::newFromArray ( array  $a)
static

Recreate the EditResult object from its array representation.

This must ONLY be used for deserializing EditResult objects serialized using EditResult::jsonSerialize(). The structure of the array may change without prior notice.

Any changes to the format are guaranteed to be backwards-compatible, so this method will work fine with old serialized EditResults.

For constructing EditResult objects from scratch use EditResultBuilder.

See also
EditResult::jsonSerialize()
Parameters
array$a@phpcs:ignore Generic.Files.LineLength
Returns
EditResult
Since
1.36

Definition at line 122 of file EditResult.php.

Member Data Documentation

◆ REVERT_MANUAL

const MediaWiki\Storage\EditResult::REVERT_MANUAL = 3

Definition at line 40 of file EditResult.php.

Referenced by MediaWiki\Storage\EditResultBuilder\markAsRevert().

◆ REVERT_ROLLBACK

const MediaWiki\Storage\EditResult::REVERT_ROLLBACK = 2

Definition at line 39 of file EditResult.php.

Referenced by MediaWiki\Storage\EditResultBuilder\markAsRevert().

◆ REVERT_UNDO

const MediaWiki\Storage\EditResult::REVERT_UNDO = 1

Definition at line 38 of file EditResult.php.

Referenced by MediaWiki\Storage\EditResultBuilder\markAsRevert().


The documentation for this class was generated from the following file: