MediaWiki master
MediaWiki\EditPage\Constraint\EditConstraintFactory Class Reference

Constraints reflect possible errors that need to be checked. More...

Public Member Functions

 __construct (ServiceOptions $options, Spi $loggerFactory, PermissionManager $permissionManager, HookContainer $hookContainer, ReadOnlyMode $readOnlyMode, SpamChecker $spamRegexChecker, RateLimiter $rateLimiter)
 Some constraints have dependencies that need to be injected, this class serves as a factory for all of the different constraints that need dependencies injected.
 
 newEditFilterMergedContentHookConstraint (Content $content, IContextSource $context, string $summary, bool $minorEdit, Language $language, User $user)
 
 newEditRightConstraint (User $performer, Title $title, bool $new)
 
 newPageSizeConstraint (int $contentSize, string $type)
 
 newReadOnlyConstraint ()
 
 newSimpleAntiSpamConstraint (string $input, UserIdentity $user, Title $title)
 
 newSpamRegexConstraint (string $summary, ?string $sectionHeading, string $text, string $reqIP, Title $title)
 
 newUserBlockConstraint (LinkTarget $title, User $user)
 
 newUserRateLimitConstraint (RateLimitSubject $subject, string $oldModel, string $newModel)
 

Public Attributes

const CONSTRUCTOR_OPTIONS
 

Detailed Description

Constraints reflect possible errors that need to be checked.

Since
1.36
Access: internal
Author
DannyS712

Definition at line 47 of file EditConstraintFactory.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\EditPage\Constraint\EditConstraintFactory::__construct ( ServiceOptions $options,
Spi $loggerFactory,
PermissionManager $permissionManager,
HookContainer $hookContainer,
ReadOnlyMode $readOnlyMode,
SpamChecker $spamRegexChecker,
RateLimiter $rateLimiter )

Some constraints have dependencies that need to be injected, this class serves as a factory for all of the different constraints that need dependencies injected.

The checks in EditPage use wfDebugLog and logged to different channels, hence the need for multiple loggers retrieved from the Spi. The channels used are:

  • SimpleAntiSpam (in SimpleAntiSpamConstraint)
  • SpamRegex (in SpamRegexConstraint)

TODO can they be combined into the same channel?

Parameters
ServiceOptions$options
Spi$loggerFactory
PermissionManager$permissionManager
HookContainer$hookContainer
ReadOnlyMode$readOnlyMode
SpamChecker$spamRegexChecker
RateLimiter$rateLimiter

Definition at line 83 of file EditConstraintFactory.php.

References MediaWiki\Config\ServiceOptions\assertRequiredOptions().

Member Function Documentation

◆ newEditFilterMergedContentHookConstraint()

MediaWiki\EditPage\Constraint\EditConstraintFactory::newEditFilterMergedContentHookConstraint ( Content $content,
IContextSource $context,
string $summary,
bool $minorEdit,
Language $language,
User $user )
Parameters
Content$content
IContextSource$context
string$summary
bool$minorEdit
Language$language
User$user
Returns
EditFilterMergedContentHookConstraint

Definition at line 123 of file EditConstraintFactory.php.

◆ newEditRightConstraint()

MediaWiki\EditPage\Constraint\EditConstraintFactory::newEditRightConstraint ( User $performer,
Title $title,
bool $new )
Parameters
User$performer
Title$title
bool$new
Returns
EditRightConstraint

Definition at line 254 of file EditConstraintFactory.php.

◆ newPageSizeConstraint()

MediaWiki\EditPage\Constraint\EditConstraintFactory::newPageSizeConstraint ( int $contentSize,
string $type )
Parameters
int$contentSize
string$type
Returns
PageSizeConstraint

Definition at line 147 of file EditConstraintFactory.php.

◆ newReadOnlyConstraint()

MediaWiki\EditPage\Constraint\EditConstraintFactory::newReadOnlyConstraint ( )
Returns
ReadOnlyConstraint

Definition at line 161 of file EditConstraintFactory.php.

◆ newSimpleAntiSpamConstraint()

MediaWiki\EditPage\Constraint\EditConstraintFactory::newSimpleAntiSpamConstraint ( string $input,
UserIdentity $user,
Title $title )
Parameters
string$input
UserIdentity$user
Title$title
Returns
SimpleAntiSpamConstraint

Definition at line 193 of file EditConstraintFactory.php.

◆ newSpamRegexConstraint()

MediaWiki\EditPage\Constraint\EditConstraintFactory::newSpamRegexConstraint ( string $summary,
?string $sectionHeading,
string $text,
string $reqIP,
Title $title )
Parameters
string$summary
?string$sectionHeading
string$text
string$reqIP
Title$title
Returns
SpamRegexConstraint

Definition at line 214 of file EditConstraintFactory.php.

◆ newUserBlockConstraint()

MediaWiki\EditPage\Constraint\EditConstraintFactory::newUserBlockConstraint ( LinkTarget $title,
User $user )
Parameters
LinkTarget$title
User$user
Returns
UserBlockConstraint

Definition at line 237 of file EditConstraintFactory.php.

◆ newUserRateLimitConstraint()

MediaWiki\EditPage\Constraint\EditConstraintFactory::newUserRateLimitConstraint ( RateLimitSubject $subject,
string $oldModel,
string $newModel )
Parameters
RateLimitSubject$subject
string$oldModel
string$newModel
Returns
UserRateLimitConstraint

Definition at line 174 of file EditConstraintFactory.php.

Member Data Documentation

◆ CONSTRUCTOR_OPTIONS

const MediaWiki\EditPage\Constraint\EditConstraintFactory::CONSTRUCTOR_OPTIONS
Initial value:
= [
]
const MaxArticleSize
Name constant for the MaxArticleSize setting, for use with Config::get()
Access: internal

Definition at line 50 of file EditConstraintFactory.php.


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