protected function DrupalKernel::moduleData in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/lib/Drupal/Core/DrupalKernel.php \Drupal\Core\DrupalKernel::moduleData()
Returns module data on the filesystem.
Parameters
$module: The name of the module.
Return value
\Drupal\Core\Extension\Extension|bool Returns an Extension object if the module is found, FALSE otherwise.
2 calls to DrupalKernel::moduleData()
- DrupalKernel::getModuleFileNames in core/
lib/ Drupal/ Core/ DrupalKernel.php - Gets the file name for each enabled module.
- DrupalKernel::getModulesParameter in core/
lib/ Drupal/ Core/ DrupalKernel.php - Returns an array of Extension class parameters for all enabled modules.
File
- core/
lib/ Drupal/ Core/ DrupalKernel.php, line 709 - Contains \Drupal\Core\DrupalKernel.
Class
- DrupalKernel
- The DrupalKernel class is the core of Drupal itself.
Namespace
Drupal\CoreCode
protected function moduleData($module) {
if (!$this->moduleData) {
// First, find profiles.
$listing = new ExtensionDiscovery($this->root);
$listing
->setProfileDirectories(array());
$all_profiles = $listing
->scan('profile');
$profiles = array_intersect_key($all_profiles, $this->moduleList);
// If a module is within a profile directory but specifies another
// profile for testing, it needs to be found in the parent profile.
$settings = $this
->getConfigStorage()
->read('simpletest.settings');
$parent_profile = !empty($settings['parent_profile']) ? $settings['parent_profile'] : NULL;
if ($parent_profile && !isset($profiles[$parent_profile])) {
// In case both profile directories contain the same extension, the
// actual profile always has precedence.
$profiles = array(
$parent_profile => $all_profiles[$parent_profile],
) + $profiles;
}
$profile_directories = array_map(function ($profile) {
return $profile
->getPath();
}, $profiles);
$listing
->setProfileDirectories($profile_directories);
// Now find modules.
$this->moduleData = $profiles + $listing
->scan('module');
}
return isset($this->moduleData[$module]) ? $this->moduleData[$module] : FALSE;
}