‪TYPO3CMS  ‪main
TYPO3\CMS\Adminpanel\Service\ModuleLoader Class Reference

Public Member Functions

array< string, validateSortAndInitializeModules(array $modules):array { if(empty( $modules)) { return[];} foreach( $modules as $identifier=> $configuration) { if(empty( $configuration)||!is_array( $configuration)) { throw new \RuntimeException('Missing configuration for module "' . $identifier . '".', 1519490105);} if(empty( $configuration[ 'module'])||!is_string( $configuration[ 'module'])||!class_exists( $configuration[ 'module'])||!is_subclass_of($configuration[ 'module'], ModuleInterface::class, true)) { throw new \RuntimeException('The module "' . $identifier . '" defines an invalid module class. Ensure the class exists and implements the "' . ModuleInterface::class . '".', 1519490112);} } $orderedModules=GeneralUtility::makeInstance(DependencyOrderingService::class) -> orderByDependencies ( $modules)
 

Public Attributes

 $moduleInstances = []
 
foreach($orderedModules as $moduleConfiguration) return $moduleInstances
 

Detailed Description

Admin Panel Module Loader

Definition at line 31 of file ModuleLoader.php.

Member Function Documentation

◆ orderByDependencies()

array<string, validateSortAndInitializeModules(array $modules): array { if (empty($modules)) { return []; } foreach ($modules as $identifier => $configuration) { if (empty($configuration) || !is_array($configuration)) { throw new \RuntimeException( 'Missing configuration for module "' . $identifier . '".', 1519490105 ); } if (empty($configuration['module']) || !is_string($configuration['module']) || !class_exists($configuration['module']) || !is_subclass_of( $configuration['module'], ModuleInterface::class, true ) ) { throw new \RuntimeException( 'The module "' . $identifier . '" defines an invalid module class. Ensure the class exists and implements the "' . ModuleInterface::class . '".', 1519490112 ); } } $orderedModules = GeneralUtility::makeInstance(DependencyOrderingService::class)-> TYPO3\CMS\Adminpanel\Service\ModuleLoader::orderByDependencies (   $modules)

Validates, sorts and initiates the registered modules

Parameters
array<string,mixed>‪$modules
Returns
‪array<string, ModuleInterface>
Exceptions

Member Data Documentation

◆ $moduleInstances [1/2]

TYPO3\CMS\Adminpanel\Service\ModuleLoader::$moduleInstances = []

Definition at line 76 of file ModuleLoader.php.

◆ $moduleInstances [2/2]

foreach ( $orderedModules as $moduleConfiguration) return TYPO3\CMS\Adminpanel\Service\ModuleLoader::$moduleInstances

Definition at line 93 of file ModuleLoader.php.