/**
  * @param  string $module
  * @return RpcServiceModel
  */
 public function factory($module)
 {
     if (isset($this->models[$module])) {
         return $this->models[$module];
     }
     $config = $this->configFactory->factory($this->normalizeModuleName($module));
     $docsConfig = $this->getDocsConfig($module);
     $this->models[$module] = new VersioningModel($config, $docsConfig);
     return $this->models[$module];
 }
 /**
  * Create service
  *
  * @param string $module
  *
  * @return ModuleVersioningModel
  */
 public function factory($module)
 {
     $moduleName = $this->moduleUtils->normalizeModuleName($module);
     if (!isset($this->models[$moduleName])) {
         $config = $this->configFactory->factory($moduleName);
         $docsConfig = $this->getDocsConfig($moduleName);
         $this->models[$moduleName] = ModuleVersioningModel::createWithPathSpec($moduleName, $this->moduleUtils, $config, $docsConfig);
     }
     return $this->models[$moduleName];
 }
 /**
  * @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];
 }
 /**
  * Check if a module and controller exists
  *
  * @param  string $module
  * @param  string $controller
  * @return bool
  */
 public function controllerExists($module, $controller)
 {
     try {
         $configModule = $this->configFactory->factory($module);
     } catch (InvalidArgumentConfiguration $e) {
         return false;
     }
     $config = $configModule->fetch(true);
     if (isset($config['zf-rest']) && array_key_exists($controller, $config['zf-rest'])) {
         return true;
     }
     if (isset($config['zf-rpc']) && array_key_exists($controller, $config['zf-rpc'])) {
         return true;
     }
     return false;
 }