/**
  * @param ContainerBuilder   $container
  * @param ProcessorDecorator $processor
  * @param string             $scope
  *
  * @return array
  */
 protected function loadConfig(ContainerBuilder $container, ProcessorDecorator $processor, $scope)
 {
     $config = array();
     $alias = $scope === 'app' ? 'system' : $scope;
     $configLoader = new CumulativeConfigLoader(sprintf('oro_%s_configuration', $alias), new YamlCumulativeFileLoader(sprintf('Resources/config/%s_configuration.yml', $alias)));
     $resources = $configLoader->load($container);
     foreach ($resources as $resource) {
         $config = $processor->merge($config, $resource->data);
     }
     return $config;
 }
 /**
  * {@inheritDoc}
  */
 public function process(ContainerBuilder $container)
 {
     $config = [];
     $processor = new ProcessorDecorator();
     foreach ($container->getParameter('kernel.bundles') as $bundle) {
         $reflection = new \ReflectionClass($bundle);
         if (is_file($file = dirname($reflection->getFilename()) . '/Resources/config/' . self::CONFIG_FILE_NAME)) {
             $bundleConfig = Yaml::parse(file_get_contents(realpath($file)));
             $config = $processor->merge($config, $bundleConfig);
         }
     }
 }
 /**
  * {@inheritDoc}
  */
 public function process(ContainerBuilder $container)
 {
     $config = array();
     $processor = new ProcessorDecorator();
     foreach ($container->getParameter('kernel.bundles') as $bundle) {
         $reflection = new \ReflectionClass($bundle);
         if (is_file($file = dirname($reflection->getFilename()) . '/Resources/config/' . self::CONFIG_FILE_NAME)) {
             $bundleConfig = Yaml::parse(file_get_contents(realpath($file)));
             $config = $processor->merge($config, $bundleConfig);
         }
     }
     $taggedServices = $container->findTaggedServiceIds(FormProvider::TAG_NAME);
     if ($taggedServices) {
         $config = $processor->process($config);
         foreach ($taggedServices as $id => $attributes) {
             $container->getDefinition($id)->replaceArgument(0, $config);
         }
     }
 }
Example #4
0
 /**
  * @param string $configPath
  *
  * @return SystemConfigurationFormProvider
  */
 protected function getProviderWithConfigLoaded($configPath)
 {
     $config = Yaml::parse(file_get_contents($configPath));
     $processor = new ProcessorDecorator(new Processor(), ['some_field', 'some_another_field', 'some_ui_only_field', 'some_api_only_field']);
     $config = $processor->process($config);
     $subscriber = $this->getMockBuilder('Oro\\Bundle\\ConfigBundle\\Form\\EventListener\\ConfigSubscriber')->setMethods(array('__construct'))->disableOriginalConstructor()->getMock();
     $formType = new FormType($subscriber);
     $formFieldType = new FormFieldType();
     $useParentScope = new ParentScopeCheckbox();
     $extensions = array(new PreloadedExtension(array($formType->getName() => $formType, $formFieldType->getName() => $formFieldType, $useParentScope->getName() => $useParentScope), array()));
     $factory = Forms::createFormFactoryBuilder()->addExtensions($extensions)->addTypeExtension(new DataBlockExtension())->getFormFactory();
     $securityFacade = $this->getMockBuilder('Oro\\Bundle\\SecurityBundle\\SecurityFacade')->disableOriginalConstructor()->getMock();
     $provider = new SystemConfigurationFormProvider($config, $factory, $securityFacade);
     return $provider;
 }
 /**
  * @param string $configPath
  *
  * @return SystemConfigurationFormProvider
  */
 protected function getProviderWithConfigLoaded($configPath)
 {
     $config = Yaml::parse(file_get_contents($configPath));
     $processor = new ProcessorDecorator();
     $config = $processor->process($config);
     $subscriber = $this->getMockBuilder('Oro\\Bundle\\ConfigBundle\\Form\\EventListener\\ConfigSubscriber')->setMethods(['__construct'])->disableOriginalConstructor()->getMock();
     $formType = new FormType($subscriber);
     $formFieldType = new FormFieldType();
     $extensions = [new PreloadedExtension([$formType->getName() => $formType, $formFieldType->getName() => $formFieldType], [])];
     $factory = Forms::createFormFactoryBuilder()->addExtensions($extensions)->addTypeExtension(new DataBlockExtension())->getFormFactory();
     $securityFacade = $this->getMockBuilder('Oro\\Bundle\\SecurityBundle\\SecurityFacade')->disableOriginalConstructor()->getMock();
     $provider = new SystemConfigurationFormProvider($config, $factory, $securityFacade);
     return $provider;
 }
 /**
  * @dataProvider mergeDataProvider
  *
  * @param array $startData
  * @param array $newData
  * @param array $expectedResult
  */
 public function testMerge($startData, $newData, $expectedResult)
 {
     $this->assertEquals($expectedResult, $this->processor->merge($startData, $newData));
 }
 /**
  * @param ContainerBuilder   $container
  * @param ProcessorDecorator $processor
  *
  * @return array
  */
 protected function loadConfig(ContainerBuilder $container, ProcessorDecorator $processor)
 {
     $config = [];
     $configLoader = new CumulativeConfigLoader('oro_system_configuration', new YamlCumulativeFileLoader('Resources/config/system_configuration.yml'));
     $resources = $configLoader->load($container);
     foreach ($resources as $resource) {
         $config = $processor->merge($config, $resource->data);
     }
     return $config;
 }
 /**
  * Parse config fixture and validate through processorDecorator
  *
  * @param string $path
  *
  * @return array
  */
 protected function getConfig($path)
 {
     $config = Yaml::parse(file_get_contents($path));
     $processor = new ProcessorDecorator();
     return $processor->process($config);
 }
 /**
  * Parse config fixture and validate through processorDecorator
  *
  * @param string $path
  *
  * @return array
  */
 protected function getConfig($path)
 {
     $config = Yaml::parse(file_get_contents($path));
     $processor = new ProcessorDecorator(new Processor(), ['some_field', 'some_another_field', 'some_ui_only_field', 'some_api_only_field']);
     return $processor->process($config);
 }