MediaWiki
master
|
Type definition for user types. More...
Public Member Functions | |
__construct (Callbacks $callbacks, UserFactory $userFactory, TitleFactory $titleFactory, UserNameUtils $userNameUtils) | |
checkSettings (string $name, $settings, array $options, array $ret) | |
Validate a parameter settings array. More... | |
getHelpInfo ( $name, array $settings, array $options) | |
Describe parameter settings in human-readable format. More... | |
getParamInfo ( $name, array $settings, array $options) | |
Describe parameter settings in a machine-readable format. More... | |
normalizeSettings (array $settings) | |
Normalize a settings array Stable to override. More... | |
validate ( $name, $value, array $settings, array $options) | |
Validate the value. More... | |
![]() | |
__construct (Callbacks $callbacks) | |
Stable to call. More... | |
getEnumValues ( $name, array $settings, array $options) | |
Get the values for enum-like parameters. More... | |
getValue ( $name, array $settings, array $options) | |
Get the value from the request Stable to override. More... | |
stringifyValue ( $name, $value, array $settings, array $options) | |
Convert a value to a string representation. More... | |
Public Attributes | |
const | PARAM_ALLOWED_USER_TYPES = 'param-allowed-user-types' |
(string[]) Allowed types of user. More... | |
const | PARAM_RETURN_OBJECT = 'param-return-object' |
(bool) Whether to return a UserIdentity object. More... | |
Private Member Functions | |
processUser (string $value) | |
Process $value to a UserIdentity, if possible. More... | |
Private Attributes | |
TitleFactory | $titleFactory |
UserFactory | $userFactory |
UserNameUtils | $userNameUtils |
Additional Inherited Members | |
![]() | |
failure ( $failure, $name, $value, array $settings, array $options, $fatal=true) | |
Record a failure message. More... | |
failureMessage ( $code, array $data=null, $suffix=null) | |
Create a DataMessageValue representing a failure. More... | |
![]() | |
Callbacks | $callbacks |
Type definition for user types.
Failure codes:
Definition at line 25 of file UserDef.php.
Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef::__construct | ( | Callbacks | $callbacks, |
UserFactory | $userFactory, | ||
TitleFactory | $titleFactory, | ||
UserNameUtils | $userNameUtils | ||
) |
Callbacks | $callbacks | |
UserFactory | $userFactory | |
TitleFactory | $titleFactory | |
UserNameUtils | $userNameUtils |
Definition at line 71 of file UserDef.php.
References Wikimedia\ParamValidator\TypeDef\$callbacks, Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\$titleFactory, Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\$userFactory, and Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\$userNameUtils.
Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef::checkSettings | ( | string | $name, |
$settings, | |||
array | $options, | ||
array | $ret | ||
) |
Validate a parameter settings array.
This is intended for validation of parameter settings during unit or integration testing, and should implement strict checks.
The rest of the code should generally be more permissive.
string | $name | Parameter name |
array | mixed | $settings | Default value or an array of settings using PARAM_* constants. |
array | $options | Options array, passed through to the TypeDef and Callbacks. |
array | $ret |
|
Reimplemented from Wikimedia\ParamValidator\TypeDef.
Definition at line 107 of file UserDef.php.
References Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\PARAM_ALLOWED_USER_TYPES, Wikimedia\ParamValidator\ParamValidator\PARAM_ISMULTI, Wikimedia\ParamValidator\ParamValidator\PARAM_ISMULTI_LIMIT1, Wikimedia\ParamValidator\ParamValidator\PARAM_ISMULTI_LIMIT2, and Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\PARAM_RETURN_OBJECT.
Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef::getHelpInfo | ( | $name, | |
array | $settings, | ||
array | $options | ||
) |
Describe parameter settings in human-readable format.
Keys in the returned array should generally correspond to PARAM constants.
If relevant, a MessageValue describing the type itself should be returned with key ParamValidator::PARAM_TYPE.
The default messages for other ParamValidator-defined PARAM constants may be suppressed by returning null as the value for those constants, or replaced by returning a replacement MessageValue. Normally, however, the default messages should not be changed.
MessageValues describing any other constraints applied via PARAM constants specific to this class should also be returned. Stable to override
string | $name | Parameter name being described. |
array | $settings | Parameter settings array. |
array | $options | Options array. |
Reimplemented from Wikimedia\ParamValidator\TypeDef.
Definition at line 229 of file UserDef.php.
References Wikimedia\Message\MessageValue\new(), Wikimedia\ParamValidator\ParamValidator\PARAM_ISMULTI, and Wikimedia\ParamValidator\ParamValidator\PARAM_TYPE.
Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef::getParamInfo | ( | $name, | |
array | $settings, | ||
array | $options | ||
) |
Describe parameter settings in a machine-readable format.
Keys should be short strings using lowercase ASCII letters. Values should generally be values that could be encoded in JSON or the like.
This is intended to handle PARAM constants specific to this class. It generally shouldn't handle constants defined on ParamValidator itself. Stable to override
string | $name | Parameter name. |
array | $settings | Parameter settings array. |
array | $options | Options array. |
Reimplemented from Wikimedia\ParamValidator\TypeDef.
Definition at line 221 of file UserDef.php.
References Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\PARAM_ALLOWED_USER_TYPES.
Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef::normalizeSettings | ( | array | $settings | ) |
Normalize a settings array Stable to override.
array | $settings |
Reimplemented from Wikimedia\ParamValidator\TypeDef.
Definition at line 93 of file UserDef.php.
References Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\PARAM_ALLOWED_USER_TYPES.
|
private |
Process $value to a UserIdentity, if possible.
string | $value |
Definition at line 162 of file UserDef.php.
References $t, ExternalUserNames\isExternal(), NS_USER, and RE_IP_BYTE.
Referenced by Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\validate().
Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef::validate | ( | $name, | |
$value, | |||
array | $settings, | ||
array | $options | ||
) |
Validate the value.
When ParamValidator is processing a multi-valued parameter, this will be called once for each of the supplied values. Which may mean zero calls.
When getValue() returned null, this will not be called.
string | $name | Parameter name being validated. |
mixed | $value | Value to validate, from getValue(). |
array | $settings | Parameter settings array. |
array | $options | Options array. Note the following values that may be set by ParamValidator:
|
ValidationException | if the value is invalid |
Reimplemented from Wikimedia\ParamValidator\TypeDef.
Definition at line 83 of file UserDef.php.
References $type, Wikimedia\ParamValidator\TypeDef\failure(), and Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\processUser().
|
private |
Definition at line 60 of file UserDef.php.
Referenced by Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\__construct().
|
private |
Definition at line 57 of file UserDef.php.
Referenced by Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\__construct().
|
private |
Definition at line 63 of file UserDef.php.
Referenced by Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\__construct().
const Wikimedia\ParamValidator\ParamValidator::TypeDef\UserDef::PARAM_ALLOWED_USER_TYPES = 'param-allowed-user-types' |
(string[]) Allowed types of user.
One or more of the following values:
Default is ‘[ 'name’, 'ip', 'cidr', 'interwiki' ]`.
Avoid combining 'id' with PARAM_ISMULTI, as it may result in excessive DB lookups. If you do combine them, consider setting low values for PARAM_ISMULTI_LIMIT1 and PARAM_ISMULTI_LIMIT2 to mitigate it.
Definition at line 43 of file UserDef.php.
Referenced by Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\checkSettings(), Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\getParamInfo(), and Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\normalizeSettings().
const Wikimedia\ParamValidator\ParamValidator::TypeDef\UserDef::PARAM_RETURN_OBJECT = 'param-return-object' |
(bool) Whether to return a UserIdentity object.
If false, the validated user name is returned as a string. Default is false.
Avoid setting true with PARAM_ISMULTI, as it may result in excessive DB lookups. If you do combine them, consider setting low values for PARAM_ISMULTI_LIMIT1 and PARAM_ISMULTI_LIMIT2 to mitigate it.
Definition at line 54 of file UserDef.php.
Referenced by Wikimedia\ParamValidator\ParamValidator\TypeDef\UserDef\checkSettings().