/** * @param ModuleEntity $moduleEntity * @param ModuleUtils $modules * @param ConfigResource $config */ public function __construct(ModuleEntity $moduleEntity, ModulePathSpec $modules, ConfigResource $config) { $this->module = $moduleEntity->getName(); $this->moduleEntity = $moduleEntity; $this->modules = $modules; $this->configResource = $config; }
/** * Returns list of all API-First-enabled modules * * @return array */ protected function getEnabledModules() { if (is_array($this->modules)) { return $this->modules; } $this->modules = array(); foreach ($this->moduleManager->getLoadedModules() as $moduleName => $module) { if (!$module instanceof ApigilityProviderInterface && !$module instanceof ApigilityModuleInterface) { continue; } if ($module instanceof ApigilityModuleInterface) { trigger_error('ZF\\Apigility\\ApigilityModuleInterface is deprecated, use ZF\\Apigility\\Provider\\ApigilityProviderInterface instead', E_USER_DEPRECATED); } $services = $this->getServicesByModule($moduleName); $versions = $this->getVersionsByModule($moduleName, $module); $entity = new ModuleEntity($moduleName, $services['rest'], $services['rpc']); $entity->exchangeArray(array('versions' => $versions, 'default_version' => $this->getModuleDefaultVersion($module))); $this->modules[$entity->getName()] = $entity; } return $this->modules; }