protected ModuleHandler::getImplementationInfo($hook)
Provides information about modules' implementations of a hook.
Parameters
string $hook: The name of the hook (e.g. "help" or "menu").
Return value
mixed[] An array whose keys are the names of the modules which are implementing this hook and whose values are either a string identifying a file in which the implementation is to be found, or FALSE, if the implementation is in the module file.
File
- core/lib/Drupal/Core/Extension/ModuleHandler.php, line 517
Class
- ModuleHandler
- Class that manages modules in a Drupal installation.
Namespace
Drupal\Core\Extension
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | protected function getImplementationInfo( $hook ) { if (!isset( $this ->implementations)) { $this ->implementations = array (); $this ->verified = array (); if ( $cache = $this ->cacheBackend->get( 'module_implements' )) { $this ->implementations = $cache ->data; } } if (!isset( $this ->implementations[ $hook ])) { // The hook is not cached, so ensure that whether or not it has // implementations, the cache is updated at the end of the request. $this ->cacheNeedsWriting = TRUE; // Discover implementations. $this ->implementations[ $hook ] = $this ->buildImplementationInfo( $hook ); // Implementations are always "verified" as part of the discovery. $this ->verified[ $hook ] = TRUE; } elseif (!isset( $this ->verified[ $hook ])) { if (! $this ->verifyImplementations( $this ->implementations[ $hook ], $hook )) { // One or more of the implementations did not exist and need to be // removed in the cache. $this ->cacheNeedsWriting = TRUE; } $this ->verified[ $hook ] = TRUE; } return $this ->implementations[ $hook ]; } |
Please login to continue.