MediaWiki REL1_37
MediaWiki\Storage\EditResultBuilder Class Reference

Builder class for the EditResult object. More...

Collaboration diagram for MediaWiki\Storage\EditResultBuilder:

Public Member Functions

 __construct (RevisionStore $revisionStore, array $softwareTags, ServiceOptions $options)
 
 buildEditResult ()
 
 markAsRevert (int $revertMethod, int $oldestRevertedRevId, int $newestRevertedRevId=0)
 Marks this edit as a revert and applies relevant information.
 
 setIsNew (bool $isNew)
 Set whether the edit created a new page.
 
 setOriginalRevisionId ( $originalRevId)
 Sets the ID of an earlier revision that is being repeated or restored.
 
 setRevisionRecord (RevisionRecord $revisionRecord)
 Set the revision associated with this edit.
 

Public Attributes

const CONSTRUCTOR_OPTIONS
 

Private Member Functions

 detectManualRevert ()
 If this edit was not already marked as a revert using EditResultBuilder::markAsRevert(), tries to establish whether this was a manual revert, i.e.
 
 getOriginalRevision (int $flags=RevisionStore::READ_NORMAL)
 Returns the revision that is being repeated or restored.
 
 getRevertTags ()
 Returns an array of revert-related tags that will be applied automatically to this edit.
 
 isExactRevert ()
 Whether the edit was an exact revert, i.e.
 
 isNullEdit ()
 An edit is a null edit if the original revision is equal to the parent revision.
 

Private Attributes

bool $isNew = false
 
int null $newestRevertedRevId = null
 
int null $oldestRevertedRevId = null
 
ServiceOptions $options
 
RevisionRecord null $originalRevision = null
 
bool int $originalRevisionId = false
 
int null $revertMethod = null
 
RevisionRecord null $revisionRecord = null
 
RevisionStore $revisionStore
 
string[] $softwareTags
 
const REVERT_METHOD_TO_CHANGE_TAG
 A mapping from EditResult's revert methods to relevant change tags.
 

Detailed Description

Builder class for the EditResult object.

Access: internal
Only for use by PageUpdater
Since
1.35

Definition at line 37 of file EditResultBuilder.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\Storage\EditResultBuilder::__construct ( RevisionStore  $revisionStore,
array  $softwareTags,
ServiceOptions  $options 
)
Parameters
RevisionStore$revisionStore
string[]$softwareTagsArray of currently enabled software change tags. Can be obtained from ChangeTags::getSoftwareTags()
ServiceOptions$optionsOptions for this instance.

Definition at line 89 of file EditResultBuilder.php.

References MediaWiki\Storage\EditResultBuilder\$options, MediaWiki\Storage\EditResultBuilder\$revisionStore, MediaWiki\Storage\EditResultBuilder\$softwareTags, and MediaWiki\Config\ServiceOptions\assertRequiredOptions().

Member Function Documentation

◆ buildEditResult()

MediaWiki\Storage\EditResultBuilder::buildEditResult ( )
Returns
EditResult

Definition at line 104 of file EditResultBuilder.php.

◆ detectManualRevert()

MediaWiki\Storage\EditResultBuilder::detectManualRevert ( )
private

If this edit was not already marked as a revert using EditResultBuilder::markAsRevert(), tries to establish whether this was a manual revert, i.e.

someone restored the page to an exact previous state manually.

If successful, mutates the builder accordingly.

Definition at line 189 of file EditResultBuilder.php.

References MediaWiki\Storage\EditResult\REVERT_MANUAL.

◆ getOriginalRevision()

MediaWiki\Storage\EditResultBuilder::getOriginalRevision ( int  $flags = RevisionStore::READ_NORMAL)
private

Returns the revision that is being repeated or restored.

Returns null if not set for this edit.

Parameters
int$flagsAccess flags, e.g. RevisionStore::READ_LATEST
Returns
RevisionRecord|null

Definition at line 231 of file EditResultBuilder.php.

◆ getRevertTags()

MediaWiki\Storage\EditResultBuilder::getRevertTags ( )
private

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

Returns
string[]

Definition at line 286 of file EditResultBuilder.php.

◆ isExactRevert()

MediaWiki\Storage\EditResultBuilder::isExactRevert ( )
private

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

the contents of the revert revision and restored revision match

Returns
bool

Definition at line 254 of file EditResultBuilder.php.

◆ isNullEdit()

MediaWiki\Storage\EditResultBuilder::isNullEdit ( )
private

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

Returns
bool

Definition at line 272 of file EditResultBuilder.php.

◆ markAsRevert()

MediaWiki\Storage\EditResultBuilder::markAsRevert ( int  $revertMethod,
int  $oldestRevertedRevId,
int  $newestRevertedRevId = 0 
)

Marks this edit as a revert and applies relevant information.

Will do nothing if $oldestRevertedRevId is 0.

Parameters
int$revertMethodThe method used to make the revert: REVERT_UNDO, REVERT_ROLLBACK or REVERT_MANUAL
int$oldestRevertedRevIdThe ID of the oldest revision that was reverted.
int$newestRevertedRevIdThe ID of the newest revision that was reverted. This parameter is optional, default value is $oldestRevertedRevId

Definition at line 156 of file EditResultBuilder.php.

◆ setIsNew()

MediaWiki\Storage\EditResultBuilder::setIsNew ( bool  $isNew)

Set whether the edit created a new page.

Should only be called by PageUpdater when saving an edit.

Parameters
bool$isNew

Definition at line 142 of file EditResultBuilder.php.

◆ setOriginalRevisionId()

MediaWiki\Storage\EditResultBuilder::setOriginalRevisionId (   $originalRevId)

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

Parameters
int | bool$originalRevId

Definition at line 178 of file EditResultBuilder.php.

◆ setRevisionRecord()

MediaWiki\Storage\EditResultBuilder::setRevisionRecord ( RevisionRecord  $revisionRecord)

Set the revision associated with this edit.

Should only be called by PageUpdater when saving an edit.

Parameters
RevisionRecord$revisionRecord

Definition at line 132 of file EditResultBuilder.php.

Member Data Documentation

◆ $isNew

bool MediaWiki\Storage\EditResultBuilder::$isNew = false
private

Definition at line 57 of file EditResultBuilder.php.

◆ $newestRevertedRevId

int null MediaWiki\Storage\EditResultBuilder::$newestRevertedRevId = null
private

Definition at line 69 of file EditResultBuilder.php.

◆ $oldestRevertedRevId

int null MediaWiki\Storage\EditResultBuilder::$oldestRevertedRevId = null
private

Definition at line 72 of file EditResultBuilder.php.

◆ $options

ServiceOptions MediaWiki\Storage\EditResultBuilder::$options
private

◆ $originalRevision

RevisionRecord null MediaWiki\Storage\EditResultBuilder::$originalRevision = null
private

Definition at line 63 of file EditResultBuilder.php.

◆ $originalRevisionId

bool int MediaWiki\Storage\EditResultBuilder::$originalRevisionId = false
private

Definition at line 60 of file EditResultBuilder.php.

◆ $revertMethod

int null MediaWiki\Storage\EditResultBuilder::$revertMethod = null
private

Definition at line 66 of file EditResultBuilder.php.

◆ $revisionRecord

RevisionRecord null MediaWiki\Storage\EditResultBuilder::$revisionRecord = null
private

Definition at line 54 of file EditResultBuilder.php.

◆ $revisionStore

RevisionStore MediaWiki\Storage\EditResultBuilder::$revisionStore
private

◆ $softwareTags

string [] MediaWiki\Storage\EditResultBuilder::$softwareTags
private

◆ CONSTRUCTOR_OPTIONS

const MediaWiki\Storage\EditResultBuilder::CONSTRUCTOR_OPTIONS
Initial value:
= [
'ManualRevertSearchRadius',
]

Definition at line 39 of file EditResultBuilder.php.

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

◆ REVERT_METHOD_TO_CHANGE_TAG

const MediaWiki\Storage\EditResultBuilder::REVERT_METHOD_TO_CHANGE_TAG
private
Initial value:

A mapping from EditResult's revert methods to relevant change tags.

For use by getRevertTags()

Definition at line 47 of file EditResultBuilder.php.


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