MediaWiki REL1_40
Hooks Class Reference

Hooks class. More...

Static Public Member Functions

static clear ( $name)
 Clears hooks registered via Hooks::register().
 
static getHandlers ( $name)
 Returns an array of all the event functions attached to a hook This combines functions registered via Hooks::register and with $wgHooks.
 
static isRegistered ( $name)
 Returns true if a hook has a function registered to it.
 
static register ( $name, $handler)
 Attach an event handler to a given hook in both legacy and non-legacy hook systems.
 
static run ( $event, array $args=[], $deprecatedVersion=null)
 Call hook functions defined in Hooks::register and $wgHooks.
 
static runner ()
 Get a HookRunner instance for calling hooks using the new interfaces.
 
static runWithoutAbort ( $event, array $args=[], $deprecatedVersion=null)
 Call hook functions defined in Hooks::register and $wgHooks.
 

Detailed Description

Hooks class.

Legacy wrapper for HookContainer Please use HookContainer instead.

Since
1.18

Definition at line 38 of file Hooks.php.

Member Function Documentation

◆ clear()

static Hooks::clear ( $name)
static

Clears hooks registered via Hooks::register().

Does not touch $wgHooks. This is intended for use while testing and will fail if MW_PHPUNIT_TEST is not defined.

Parameters
string$nameThe name of the hook to clear.
Since
1.21
Deprecated
since 1.35. Instead of using Hooks::register() and Hooks::clear(), use HookContainer::scopedRegister() instead to register a temporary hook

Definition at line 67 of file Hooks.php.

References wfDeprecated().

◆ getHandlers()

static Hooks::getHandlers ( $name)
static

Returns an array of all the event functions attached to a hook This combines functions registered via Hooks::register and with $wgHooks.

Since
1.18
Deprecated
since 1.35
Parameters
string$nameName of the hook
Returns
array

Definition at line 99 of file Hooks.php.

◆ isRegistered()

static Hooks::isRegistered ( $name)
static

Returns true if a hook has a function registered to it.

The function may have been registered either via Hooks::register or in $wgHooks.

Since
1.18
Deprecated
since 1.35. use HookContainer::isRegistered() instead
Parameters
string$nameName of hook
Returns
bool True if the hook has a function registered to it

Definition at line 85 of file Hooks.php.

◆ register()

static Hooks::register ( $name,
$handler )
static

Attach an event handler to a given hook in both legacy and non-legacy hook systems.

See also
HookContainer::register()
Parameters
string$nameName of hook
mixed$handlerHooks handler to attay
Deprecated
since 1.35. use HookContainer::register() instead, emitting warnings since 1.40
Since
1.18

Definition at line 50 of file Hooks.php.

References wfDeprecated().

◆ run()

static Hooks::run ( $event,
array $args = [],
$deprecatedVersion = null )
static

Call hook functions defined in Hooks::register and $wgHooks.

For the given hook event, fetch the array of hook events and process them. Determine the proper callback for each hook and then call the actual hook using the appropriate arguments. Finally, process the return value and return/throw accordingly.

For hook event that are not abortable through a handler's return value, use runWithoutAbort() instead.

Parameters
string$eventEvent name
array$argsArray of parameters passed to hook functions
string | null$deprecatedVersion[optional] Mark hook as deprecated with version number
Returns
bool True if no handler aborted the hook
Exceptions
Exception
Since
1.22 A hook function is not required to return a value for processing to continue. Not returning a value (or explicitly returning null) is equivalent to returning true.
Deprecated
since 1.35 Use HookContainer::run() instead

Definition at line 131 of file Hooks.php.

◆ runner()

static Hooks::runner ( )
static

Get a HookRunner instance for calling hooks using the new interfaces.

Classes using dependency injection should instead receive a HookContainer and construct a private HookRunner from it.

Classes without dependency injection may alternatively use ProtectedHookAccessorTrait, a trait which provides getHookRunner() as a protected method.

Since
1.35
Access: internal
because HookRunner is intended for core only, see documentation on that class
Returns
HookRunner

Definition at line 170 of file Hooks.php.

Referenced by MediaWiki\Block\DatabaseBlock\doAutoblock().

◆ runWithoutAbort()

static Hooks::runWithoutAbort ( $event,
array $args = [],
$deprecatedVersion = null )
static

Call hook functions defined in Hooks::register and $wgHooks.

Parameters
string$eventEvent name
array$argsArray of parameters passed to hook functions
string | null$deprecatedVersion[optional] Mark hook as deprecated with version number
Returns
bool Always true
Exceptions
UnexpectedValueExceptioncallback returns an invalid value
Since
1.30
Deprecated
since 1.35 Use HookContainer::run() with 'abortable' option instead

Definition at line 148 of file Hooks.php.


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