Exemplo n.º 1
0
 /**
  * List all submodules of a module
  * @param ApiBase $module
  * @param boolean $recursive
  * @return string[]
  */
 private function listAllSubmodules(ApiBase $module, $recursive)
 {
     $manager = $module->getModuleManager();
     if ($manager) {
         $paths = [];
         $names = $manager->getNames();
         sort($names);
         foreach ($names as $name) {
             $submodule = $manager->getModule($name);
             $paths[] = $submodule->getModulePath();
             if ($recursive && $submodule->getModuleManager()) {
                 $paths = array_merge($paths, $this->listAllSubmodules($submodule, $recursive));
             }
         }
     }
     return $paths;
 }