/** * @param string $module * @return AuthorizationModel */ public function factory($module) { if (isset($this->models[$module])) { return $this->models[$module]; } $moduleName = $this->modules->normalizeModuleName($module); $moduleEntity = $this->moduleModel->getModule($moduleName); $config = $this->configFactory->factory($module); $this->models[$module] = new AuthorizationModel($moduleEntity, $this->modules, $config); return $this->models[$module]; }
/** * @param string $module * @return RpcServiceModel */ public function factory($module) { if (isset($this->models[$module])) { // @codeCoverageIgnoreStart return $this->models[$module]; } // @codeCoverageIgnoreEnd $moduleName = $this->normalizeModuleName($module); $moduleEntity = $this->moduleModel->getModule($moduleName); $config = $this->configFactory->factory($module); $this->models[$module] = new DoctrineRpcServiceModel($moduleEntity, $this->modules, $config); return $this->models[$module]; }
/** * Delete a module (and, optionally, all code within it) * * @param string $id * @return bool */ public function delete($id) { $request = $this->getEvent()->getRequest(); $recursive = $request->getQuery('recursive', false); $module = $this->modules->getModule($id); if (!$module instanceof ModuleEntity) { return new ApiProblem(404, 'Module not found or is not apigility-enabled'); } $name = $module->getName(); return $this->modules->deleteModule($name, $this->modulePath, $recursive); }