/** * {@inheritdoc} */ public function get($filename, $scope) { switch ($scope) { case 'global': $iterator = $this->moduleReader->getConfigurationFiles($filename)->toArray(); $themeConfigFile = $this->currentTheme->getCustomization()->getCustomViewConfigPath(); if ($themeConfigFile && $this->rootDirectory->isExist($this->rootDirectory->getRelativePath($themeConfigFile))) { $iterator[$this->rootDirectory->getRelativePath($themeConfigFile)] = $this->rootDirectory->readFile($this->rootDirectory->getRelativePath($themeConfigFile)); } else { $designPath = $this->resolver->resolve(RulePool::TYPE_FILE, 'etc/view.xml', $this->area, $this->currentTheme); if (file_exists($designPath)) { try { $designDom = new \DOMDocument(); $designDom->load($designPath); $iterator[$designPath] = $designDom->saveXML(); } catch (\Exception $e) { throw new \Magento\Framework\Exception\LocalizedException(new \Magento\Framework\Phrase('Could not read config file')); } } } break; default: $iterator = $this->iteratorFactory->create([]); break; } return $iterator; }
/** * Init cached list of validation files */ protected function _initializeConfigList() { if (!$this->_configFiles) { $this->_configFiles = $this->cache->load(self::CACHE_KEY); if (!$this->_configFiles) { $this->_configFiles = $this->moduleReader->getConfigurationFiles('validation.xml'); $this->cache->save(serialize($this->_configFiles), self::CACHE_KEY); } else { $this->_configFiles = unserialize($this->_configFiles); } } }
/** * {@inheritdoc} */ public function get($filename, $scope) { switch ($scope) { case 'global': $iterator = $this->_moduleReader->getConfigurationFiles($filename); break; case 'design': $iterator = $this->iteratorFactory->create($this->themesDirectory, $this->themesDirectory->search('/*/*/etc/' . $filename)); break; default: $iterator = $this->iteratorFactory->create($this->themesDirectory, array()); break; } return $iterator; }
/** * {@inheritdoc} */ public function get($filename, $scope) { switch ($scope) { case 'global': $iterator = $this->_moduleReader->getConfigurationFiles($filename); break; case 'design': $themePaths = $this->componentDirSearch->collectFiles(ComponentRegistrar::THEME, 'etc/' . $filename); $iterator = $this->iteratorFactory->create($themePaths); break; default: $iterator = $this->iteratorFactory->create([]); break; } return $iterator; }
/** * {@inheritdoc} */ public function get($filename, $scope) { switch ($scope) { case 'primary': $directory = $this->filesystem->getDirectoryRead(DirectoryList::CONFIG); $iterator = $this->iteratorFactory->create($directory, $directory->search('{' . $filename . ',*/' . $filename . '}')); break; case 'global': $iterator = $this->_moduleReader->getConfigurationFiles($filename); break; default: $iterator = $this->_moduleReader->getConfigurationFiles($scope . '/' . $filename); break; } return $iterator; }
/** * Render view config object for current package and theme * * @param array $params * @return \Magento\Framework\Config\View */ public function getViewConfig(array $params = []) { $this->assetRepo->updateDesignParams($params); /** @var $currentTheme \Magento\Framework\View\Design\ThemeInterface */ $currentTheme = $params['themeModel']; $key = $currentTheme->getCode(); if (isset($this->viewConfigs[$key])) { return $this->viewConfigs[$key]; } $configFiles = $this->moduleReader->getConfigurationFiles(basename($this->filename))->toArray(); $themeConfigFile = $currentTheme->getCustomization()->getCustomViewConfigPath(); if (empty($themeConfigFile) || !$this->rootDirectory->isExist($this->rootDirectory->getRelativePath($themeConfigFile)) ) { $themeConfigFile = $this->viewFileSystem->getFilename($this->filename, $params); } if ($themeConfigFile && $this->rootDirectory->isExist($this->rootDirectory->getRelativePath($themeConfigFile)) ) { $configFiles[$this->rootDirectory->getRelativePath($themeConfigFile)] = $this->rootDirectory->readFile( $this->rootDirectory->getRelativePath($themeConfigFile) ); } $config = $this->viewFactory->create($configFiles); $this->viewConfigs[$key] = $config; return $config; }
/** * Get validator * * @param array $data * @return \Magento\Framework\Validator */ protected function _getValidator(array $data) { if ($this->_validator !== null) { return $this->_validator; } $configFiles = $this->_modulesReader->getConfigurationFiles('validation.xml'); $validatorFactory = $this->_validatorConfigFactory->create(['configFiles' => $configFiles]); $builder = $validatorFactory->createValidatorBuilder('customer', 'form'); $builder->addConfiguration('metadata_data_validator', ['method' => 'setAttributes', 'arguments' => [$this->getAllowedAttributes()]]); $builder->addConfiguration('metadata_data_validator', ['method' => 'setData', 'arguments' => [$data]]); $builder->addConfiguration('metadata_data_validator', ['method' => 'setEntityType', 'arguments' => [$this->_entityType]]); $this->_validator = $builder->createValidator(); return $this->_validator; }
/** * {@inheritdoc} */ public function getParents($filename, $scope) { switch ($scope) { case 'global': $iterator = $this->moduleReader->getConfigurationFiles($filename)->toArray(); $designPath = $this->resolver->resolve(RulePool::TYPE_FILE, 'etc/view.xml', $this->area, $this->currentTheme); if (file_exists($designPath)) { try { $iterator = $this->getParentConfigs($this->currentTheme, []); } catch (\Exception $e) { throw new \Magento\Framework\Exception\LocalizedException(new \Magento\Framework\Phrase('Could not read config file')); } } break; default: $iterator = $this->iteratorFactory->create([]); break; } return $iterator; }
/** * Get validator * * @param array $data * @return \Magento\Framework\Validator */ protected function _getValidator(array $data) { if (is_null($this->_validator)) { $configFiles = $this->_modulesReader->getConfigurationFiles('validation.xml'); /** @var $validatorFactory \Magento\Framework\Validator\Config */ $validatorFactory = $this->_validatorConfigFactory->create(array('configFiles' => $configFiles)); $builder = $validatorFactory->createValidatorBuilder('eav_entity', 'form'); $builder->addConfiguration('eav_data_validator', array('method' => 'setAttributes', 'arguments' => array($this->getAllowedAttributes()))); $builder->addConfiguration('eav_data_validator', array('method' => 'setData', 'arguments' => array($data))); $this->_validator = $builder->createValidator(); } return $this->_validator; }
/** * Initialize dependencies * * @param \Magento\Framework\ObjectManagerInterface $objectManager * @param \Magento\Framework\Module\Dir\Reader $moduleReader */ public function __construct(\Magento\Framework\ObjectManagerInterface $objectManager, \Magento\Framework\Module\Dir\Reader $moduleReader) { $this->_objectManager = $objectManager; $this->_configFiles = $moduleReader->getConfigurationFiles('validation.xml'); }
/** * Retrieve the list of configuration files with given name that relate to specified scope * * @param string $filename * @param string $scope * @return array * @SuppressWarnings(PHPMD.UnusedFormalParameter) */ public function get($filename, $scope) { return $this->moduleReader->getConfigurationFiles($filename); }
/** * Initialize dependencies * * @param \Magento\Framework\ObjectManager $objectManager * @param \Magento\Framework\Module\Dir\Reader $moduleReader */ public function __construct(\Magento\Framework\ObjectManager $objectManager, \Magento\Framework\Module\Dir\Reader $moduleReader) { $this->_objectManager = $objectManager; $this->_configFiles = $moduleReader->getConfigurationFiles('validation.xml'); $this->_initializeDefaultTranslator(); }