If the collection contains no root module, null is returned.
public getRootModule ( ) : Puli\Manager\Api\Module\RootModule | null | ||
리턴 | Puli\Manager\Api\Module\RootModule | null | The root module or `null` if none exists. |
/** * Creates a tag manager. * * @param ProjectContext $context * @param EditableDiscovery $discovery * @param ModuleList $modules * @param JsonStorage $jsonStorage * @param LoggerInterface|null $logger */ public function __construct(ProjectContext $context, EditableDiscovery $discovery, ModuleList $modules, JsonStorage $jsonStorage, LoggerInterface $logger = null) { $this->context = $context; $this->discovery = $discovery; $this->modules = $modules; $this->jsonStorage = $jsonStorage; $this->rootModule = $modules->getRootModule(); $this->rootModuleFile = $context->getRootModuleFile(); $this->logger = $logger ?: new NullLogger(); }
public function __construct(RootModuleFileManager $rootModuleFileManager, ModuleList $modules) { $this->rootModuleFileManager = $rootModuleFileManager; $this->modules = $modules; $this->rootModule = $modules->getRootModule(); }
/** * Creates an override graph for the given modules. * * @param ModuleList $modules The modules to load. * * @return static The created override graph. */ public static function forModules(ModuleList $modules) { $graph = new static($modules->getModuleNames()); foreach ($modules as $module) { if (null === $module->getModuleFile()) { continue; } foreach ($module->getModuleFile()->getDependencies() as $dependency) { if ($graph->hasModuleName($dependency)) { $graph->addDependency($module->getName(), $dependency); } } } // Do we have a root module? if (null === $modules->getRootModule()) { return $graph; } // Make sure we have numeric, ascending keys here $moduleOrder = array_values($modules->getRootModule()->getModuleFile()->getModuleOrder()); // Each module overrides the previous one in the list for ($i = 1, $l = count($moduleOrder); $i < $l; ++$i) { $dependency = $moduleOrder[$i - 1]; $moduleName = $moduleOrder[$i]; if ($graph->hasModuleName($dependency)) { $graph->addDependency($moduleName, $dependency); } } return $graph; }
/** * Creates a repository manager. * * @param ProjectContext $context * @param EditableRepository $repo * @param ModuleList $modules * @param JsonStorage $jsonStorage */ public function __construct(ProjectContext $context, EditableRepository $repo, ModuleList $modules, JsonStorage $jsonStorage) { $this->context = $context; $this->dispatcher = $context->getEventDispatcher(); $this->repo = $repo; $this->config = $context->getConfig(); $this->rootDir = $context->getRootDirectory(); $this->rootModule = $modules->getRootModule(); $this->rootModuleFile = $context->getRootModuleFile(); $this->modules = $modules; $this->jsonStorage = $jsonStorage; }
/** * {@inheritdoc} */ public function getRootModule() { $this->assertModulesLoaded(); return $this->modules->getRootModule(); }