public function load(array $configs, ContainerBuilder $container)
 {
     $configuration = new Configuration();
     $config = $this->processConfiguration($configuration, $configs);
     $fileSystem = new Filesystem();
     $container->setParameter('symfonian_id.gammu.smsd_inject_path', $config['smsd_inject_path']);
     $container->setParameter('symfonian_id.gammu.gammu_path', $config['gammu_path']);
     foreach ($config['gammurc_path'] as $key => $gammurc) {
         if ($fileSystem->exists($gammurc['path'])) {
             throw new FileNotFoundException(sprintf('%s not found.'));
         }
         if (!$container->hasParameter('symfonian_id.gammu.gammurc.default')) {
             $container->setParameter('symfonian_id.gammu.gammurc.default', $gammurc['path']);
         }
         $container->setParameter('symfonian_id.gammu.gammurc.' . $key, $gammurc['path']);
     }
     foreach ($config['smsdrc_path'] as $key => $smsdrc) {
         if (!$fileSystem->exists($smsdrc['path'])) {
             throw new FileNotFoundException(sprintf('%s not found.', $smsdrc['path']));
         }
         if (!$container->hasParameter('symfonian_id.gammu.smsdrc.default')) {
             $container->setParameter('symfonian_id.gammu.smsdrc.default', $smsdrc['path']);
         }
         $container->setParameter('symfonian_id.gammu.smsdrc.' . $key, $smsdrc['path']);
     }
     $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config'));
     $loader->load('services.yml');
 }
 public function load(array $configs, ContainerBuilder $container)
 {
     $processor = new Processor();
     $configuration = new Configuration();
     $config = $processor->processConfiguration($configuration, $configs);
     $loader = new YamlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config'));
     $loader->load('services/manipulator.yml');
     $container->setParameter('avro_generator.style', $config['style']);
     $container->setParameter('avro_generator.overwrite', $config['overwrite']);
     $container->setParameter('avro_generator.add_fields', $config['add_fields']);
     $container->setParameter('avro_generator.use_owner', $config['use_owner']);
     $loader->load(sprintf('templates/%s.yml', $config['style']));
     if ($container->hasParameter('avro_generator.files')) {
         $container->setParameter('avro_generator.files', array_merge($container->getParameter('avro_generator.files'), $config['files']));
     } else {
         $container->setParameter('avro_generator.files', $config['files']);
     }
     if ($container->hasParameter('avro_generator.standalone_files')) {
         $container->setParameter('avro_generator.standalone_files', array_merge($container->getParameter('avro_generator.standalone_files'), $config['standalone_files']));
     } else {
         $container->setParameter('avro_generator.standalone_files', $config['standalone_files']);
     }
     if ($container->hasParameter('avro_generator.bundle_folders')) {
         $container->setParameter('avro_generator.bundle_folders', array_merge($container->getParameter('avro_generator.bundle_folders'), $config['bundle_folders']));
     } else {
         $container->setParameter('avro_generator.bundle_folders', $config['bundle_folders']);
     }
     if ($container->hasParameter('avro_generator.bundle_files')) {
         $container->setParameter('avro_generator.bundle_files', array_merge($container->getParameter('avro_generator.bundle_files'), $config['bundle_files']));
     } else {
         $container->setParameter('avro_generator.bundle_files', $config['bundle_files']);
     }
 }
 function it_processes_the_configuration_and_registers_services_per_subject(ContainerBuilder $container)
 {
     $container->hasParameter('sylius.translation.mapping')->willReturn(false);
     $container->hasParameter('sylius.translation.default.mapping')->willReturn(true);
     $container->getParameter('sylius.translation.default.mapping')->willReturn(array(array('default_mapping' => array('translatable' => array('field' => 'translations', 'currentLocale' => 'currentLocale', 'fallbackLocale' => 'fallbackLocale'), 'translation' => array('field' => 'translatable', 'locale' => 'locale')))));
     $attributeFormType = new Definition('Some\\App\\Product\\Form\\AttributeType');
     $attributeFormType->setArguments(array('Some\\App\\Product\\Entity\\Attribute', '%sylius.validation_group.product_attribute%', 'product'));
     $attributeFormType->addTag('form.type', array('alias' => 'sylius_product_attribute'));
     $container->setDefinition('sylius.form.type.product_attribute', $attributeFormType)->shouldBeCalled();
     $attributeTranslationFormType = new Definition('Some\\App\\Product\\Form\\AttributeTranslationType');
     $attributeTranslationFormType->setArguments(array('Some\\App\\Product\\Entity\\AttributeTranslation', '%sylius.validation_group.product_attribute_translation%', 'product'));
     $attributeTranslationFormType->addTag('form.type', array('alias' => 'sylius_product_attribute_translation'));
     $container->setDefinition('sylius.form.type.product_attribute_translation', $attributeTranslationFormType)->shouldBeCalled();
     $choiceTypeClasses = array(SyliusResourceBundle::DRIVER_DOCTRINE_ORM => 'Sylius\\Bundle\\AttributeBundle\\Form\\Type\\AttributeEntityChoiceType');
     $attributeChoiceFormType = new Definition($choiceTypeClasses[SyliusResourceBundle::DRIVER_DOCTRINE_ORM]);
     $attributeChoiceFormType->setArguments(array('product', 'Some\\App\\Product\\Entity\\Attribute'));
     $attributeChoiceFormType->addTag('form.type', array('alias' => 'sylius_product_attribute_choice'));
     $container->setDefinition('sylius.form.type.product_attribute_choice', $attributeChoiceFormType)->shouldBeCalled();
     $attributeValueFormType = new Definition('Some\\App\\Product\\Form\\AttributeValueType');
     $attributeValueFormType->setArguments(array('Some\\App\\Product\\Entity\\AttributeValue', '%sylius.validation_group.product_attribute_value%', 'product'));
     $attributeValueFormType->addTag('form.type', array('alias' => 'sylius_product_attribute_value'));
     $container->setDefinition('sylius.form.type.product_attribute_value', $attributeValueFormType)->shouldBeCalled();
     $subjects = array('product' => array('subject' => 'Some\\App\\Product\\Entity\\Product', 'attribute' => array('model' => 'Some\\App\\Product\\Entity\\Attribute', 'form' => 'Some\\App\\Product\\Form\\AttributeType', 'translation' => array('model' => 'Some\\App\\Product\\Entity\\AttributeTranslation', 'form' => array('default' => 'Some\\App\\Product\\Form\\AttributeTranslationType'))), 'attribute_value' => array('model' => 'Some\\App\\Product\\Entity\\AttributeValue', 'form' => 'Some\\App\\Product\\Form\\AttributeValueType')));
     $container->setParameter('sylius.attribute.subjects', $subjects)->shouldBeCalled();
     $userConfig = array('driver' => SyliusResourceBundle::DRIVER_DOCTRINE_ORM, 'classes' => array('product' => array('subject' => 'Some\\App\\Product\\Entity\\Product', 'attribute' => array('model' => 'Some\\App\\Product\\Entity\\Attribute', 'form' => 'Some\\App\\Product\\Form\\AttributeType', 'translation' => array('model' => 'Some\\App\\Product\\Entity\\AttributeTranslation', 'form' => array('default' => 'Some\\App\\Product\\Form\\AttributeTranslationType'))), 'attribute_value' => array('model' => 'Some\\App\\Product\\Entity\\AttributeValue', 'form' => 'Some\\App\\Product\\Form\\AttributeValueType'))));
     $processedConfig = array('driver' => SyliusResourceBundle::DRIVER_DOCTRINE_ORM, 'classes' => array('product_attribute' => array('model' => 'Some\\App\\Product\\Entity\\Attribute', 'form' => 'Some\\App\\Product\\Form\\AttributeType', 'translation' => array('model' => 'Some\\App\\Product\\Entity\\AttributeTranslation', 'form' => array('default' => 'Some\\App\\Product\\Form\\AttributeTranslationType'))), 'product_attribute_value' => array('model' => 'Some\\App\\Product\\Entity\\AttributeValue', 'form' => 'Some\\App\\Product\\Form\\AttributeValueType')), 'validation_groups' => array('product_attribute' => array('sylius'), 'product_attribute_translation' => array('sylius'), 'product_attribute_value' => array('sylius')));
     $this->process($userConfig, $container)->shouldReturn($processedConfig);
 }
Example #4
0
 /**
  * {@inheritDoc}
  * Set fixed templates
  * @see \Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface::process()
  */
 public function process(ContainerBuilder $container)
 {
     $bundles = $container->getParameter('kernel.bundles');
     if (isset($bundles['CmfBlockBundle'])) {
         $prefix = $container->getParameter('nvbooster_starter.block.attribute.prefix');
         $blockLoader = $container->getDefinition('cmf.block.container');
         $blockLoader->setClass('nvbooster\\StarterBundle\\Block\\ContainerBlockService');
         $blockLoader->addMethodCall('setAttributesPrefix', array($prefix));
         if ($container->hasParameter('nvbooster_starter.template.containerblock') && ($template = $container->getParameter('nvbooster_starter.template.containerblock'))) {
             $blockLoader->replaceArgument(3, $template);
         }
         $blockLoader = $container->getDefinition('cmf.block.slideshow');
         if ($container->hasParameter('nvbooster_starter.template.slideshowblock') && ($template = $container->getParameter('nvbooster_starter.template.slideshowblock'))) {
             $blockLoader->replaceArgument(3, $template);
         }
         $blockLoader = $container->getDefinition('cmf.block.string');
         $blockLoader->setClass('nvbooster\\StarterBundle\\Block\\StringBlockService');
         $blockLoader->addMethodCall('setAttributesPrefix', array($prefix));
         $blockLoader = $container->getDefinition('cmf.block.simple');
         $blockLoader->setClass('nvbooster\\StarterBundle\\Block\\SimpleBlockService');
         $blockLoader->addMethodCall('setAttributesPrefix', array($prefix));
         $blockLoader = $container->getDefinition('cmf.block.action');
         $blockLoader->setClass('nvbooster\\StarterBundle\\Block\\ActionBlockService');
         $blockLoader->addMethodCall('setAttributesPrefix', array($prefix));
         if ($container->hasDefinition('cmf.block.imagine')) {
             $blockLoader = $container->getDefinition('cmf.block.imagine');
             $blockLoader->setClass('nvbooster\\StarterBundle\\Block\\StringBlockService');
             $blockLoader->addMethodCall('setAttributesPrefix', array($prefix));
         }
     }
     if ($def = $container->getDefinition('cmf_seo.presentation')) {
         $def->replaceArgument(3, null);
     }
 }
Example #5
0
 /**
  * {@inheritDoc}
  */
 public function process(ContainerBuilder $container)
 {
     if (!$container->hasParameter('fos_user.storage')) {
         return;
     }
     $storage = $container->getParameter('fos_user.storage');
     if ('custom' === $storage) {
         return;
     }
     $validationFile = __DIR__ . '/../../Resources/config/validation/' . $storage . '.xml';
     if ($container->hasDefinition('validator.builder')) {
         // Symfony 2.5+
         $container->getDefinition('validator.builder')->addMethodCall('addXmlMapping', array($validationFile));
         return;
     }
     // Old method of loading validation
     if (!$container->hasParameter('validator.mapping.loader.xml_files_loader.mapping_files')) {
         return;
     }
     $files = $container->getParameter('validator.mapping.loader.xml_files_loader.mapping_files');
     if (is_file($validationFile)) {
         $files[] = realpath($validationFile);
         $container->addResource(new FileResource($validationFile));
     }
     $container->setParameter('validator.mapping.loader.xml_files_loader.mapping_files', $files);
 }
 /**
  * {@inheritDoc}
  */
 public function process(ContainerBuilder $container)
 {
     $formType = 'fos_user.registration.form.type';
     if ($container->hasParameter($formType)) {
         $value = $container->getParameter($formType);
         if ($value == 'fos_user_registration') {
             $container->setParameter($formType, 'glory_user_register');
         }
     }
     $formName = 'fos_user.registration.form.name';
     if ($container->hasParameter($formName)) {
         $value = $container->getParameter($formName);
         if ($value == 'fos_user_registration_form') {
             $container->setParameter($formName, 'user');
         }
     }
     $formName = 'fos_user.registration.form.validation_groups';
     if ($container->hasParameter($formName)) {
         $groups = $container->getParameter($formName);
         if (in_array('Registration', $groups)) {
             $key = array_search('Registration', $groups);
             $groups[$key] = 'Register';
             $container->setParameter($formName, $groups);
         }
     }
 }
 /**
  * Tests the rest client configuration
  *
  * @test
  *
  * @covers Ci\RestClientBundle\DependencyInjection\CiRestClientExtension::load
  * @covers Ci\RestClientBundle\DependencyInjection\Configuration::getConfigTreeBuilder
  */
 public function configuration()
 {
     $preConfigs = array('ci_rest_client' => array('curl' => array('defaults' => array('CURLOPT_MAXREDIRS' => 30))));
     $this->loadConfiguration($this->container, $preConfigs);
     $this->container->compile();
     $this->assertTrue($this->container->hasParameter('ci.restclient.curl.defaults'));
     $this->assertSame($preConfigs['ci_rest_client']['curl']['defaults']['CURLOPT_MAXREDIRS'], $this->container->getParameter('ci.restclient.curl.defaults')[CURLOPT_MAXREDIRS]);
 }
 public function testEmptyConfigUsesDefaultValuesAndServicesAreCreated()
 {
     $this->container->setParameter('excepciones', array('email_admin_contact' => '*****@*****.**'));
     $this->extension->load(array(), $this->container);
     $this->assertTrue($this->container->hasParameter('excp_excepciones_bundle'));
     $this->assertTrue(array_key_exists('excepciones', $this->container->getParameter('excp_excepciones_bundle')));
     $this->assertTrue($this->container->has('kernel.excepciones.listener'));
 }
 /**
  * @dataProvider getValidClients
  */
 public function testLoadSetsTheClientClassParameter($client)
 {
     if (in_array(strtolower($client), array('curl', 'multi_curl')) && !extension_loaded('curl')) {
         $this->setExpectedException('Symfony\\Component\\Config\\Definition\\Exception\\InvalidConfigurationException');
     }
     $this->extension->load(array(array('client' => $client)), $this->container);
     $this->assertTrue($this->container->hasParameter('gremo_buzz.client.class'));
 }
Example #10
0
 /**
  * @param ContainerBuilder $container
  */
 public function process(ContainerBuilder $container)
 {
     if ($container->hasParameter('bigfoot_core.routing.replace_symfony_router') && true === $container->getParameter('bigfoot_core.routing.replace_symfony_router')) {
         if ($container->hasParameter('bigfoot_core.routing.routers_by_id')) {
             $container->setAlias('router.default', 'bigfoot_core.cmf_routing.router');
         }
     }
 }
 /**
  * Test normal config
  */
 public function testTest()
 {
     $this->loadConfiguration($this->container, 'test');
     $this->container->compile();
     $this->assertTrue($this->container->hasParameter('robots_txt'));
     $robotsTxt = $this->container->getParameter('robots_txt');
     $this->assertNotEmpty($robotsTxt);
     $this->assertEquals($robotsTxt[0], 'User-agent: *');
 }
 public function testInitConfiguration()
 {
     $config = ['leezy_pheanstalk' => ['pheanstalks' => ['primary' => ['server' => 'beanstalkd.domain.tld', 'port' => 11300, 'timeout' => 60, 'default' => true]]]];
     $this->extension->load($config, $this->container);
     $this->container->compile();
     $this->assertTrue($this->container->hasDefinition('leezy.pheanstalk.pheanstalk_locator'));
     $this->assertTrue($this->container->hasParameter('leezy.pheanstalk.pheanstalks'));
     // Needed by ProxyCompilerPass
 }
Example #13
0
 /**
  * {@inheritdoc}
  */
 public function process(ContainerBuilder $container)
 {
     if ($container->hasParameter($parameter = 'templating.helper.form.resources')) {
         $container->setParameter($parameter, array_merge(array('IvoryCKEditorBundle:Form'), $container->getParameter($parameter)));
     }
     if ($container->hasParameter($parameter = 'twig.form.resources')) {
         $container->setParameter($parameter, array_merge(array('IvoryCKEditorBundle:Form:ckeditor_widget.html.twig'), $container->getParameter($parameter)));
     }
 }
 /**
  * {@inheritdoc}
  */
 public function process(ContainerBuilder $container)
 {
     if (!$container->hasParameter('cmf_routing.dynamic.persistence.phpcr.route_basepaths') || !$container->hasParameter('cmf_simple_cms.persistence.phpcr.basepath')) {
         return;
     }
     $routeBasepaths = $container->getParameter('cmf_routing.dynamic.persistence.phpcr.route_basepaths');
     $routeBasepaths[] = $container->getParameter('cmf_simple_cms.persistence.phpcr.basepath');
     $container->setParameter('cmf_routing.dynamic.persistence.phpcr.route_basepaths', array_unique($routeBasepaths));
 }
 /**
  * @dataProvider loadServiceDataProvider
  */
 public function testLoadServices($service, $class, array $arguments, array $tags, $scope)
 {
     $this->extension->load(array(), $this->container);
     $definition = $this->container->getDefinition($service);
     $this->assertEquals($class, $definition->getClass());
     $this->assertTrue($this->container->hasParameter(trim($class, '%')));
     $this->assertEquals($arguments, $definition->getArguments());
     $this->assertEquals($tags, $definition->getTags());
     $this->assertEquals($scope, $definition->getScope());
 }
 /**
  * @param ContainerBuilder $container
  */
 private function configureRoutingParameters(ContainerBuilder $container)
 {
     if (false === $container->hasParameter('router.resource')) {
         $container->setParameter('router.resource', '%kernel.root_dir%/config/routings');
     }
     if (false === $container->hasParameter('router.resource_type')) {
         $container->setParameter('router.resource_type', 'directory');
     }
     $container->setParameter('router.cache_class_prefix', $container->getParameter('kernel.name') . ucfirst($container->getParameter('kernel.environment')));
 }
 function it_should_get_interfaces(ContainerBuilder $container, Definition $resolverDefinition)
 {
     $resolverDefinition->hasTag('doctrine.event_listener')->shouldBeCalled()->willReturn(false);
     $resolverDefinition->addTag('doctrine.event_listener', array('event' => 'loadClassMetadata'))->shouldBeCalled();
     $container->hasDefinition('doctrine.orm.listeners.resolve_target_entity')->shouldBeCalled()->willReturn(true);
     $container->findDefinition('doctrine.orm.listeners.resolve_target_entity')->shouldBeCalled()->willReturn($resolverDefinition);
     $container->hasParameter(RepositoryInterface::class)->shouldBeCalled()->willReturn(false);
     $container->hasParameter('spec\\Sylius\\Bundle\\ResourceBundle\\Fixture\\Entity\\Foo')->shouldBeCalled()->willReturn(false);
     $resolverDefinition->addMethodCall('addResolveTargetEntity', array(RepositoryInterface::class, 'spec\\Sylius\\Bundle\\ResourceBundle\\Fixture\\Entity\\Foo', array()))->shouldBeCalled();
     $this->resolve($container, array(RepositoryInterface::class => 'spec\\Sylius\\Bundle\\ResourceBundle\\Fixture\\Entity\\Foo'));
 }
 /** {@inheritdoc} */
 public function prepend(ContainerBuilder $container)
 {
     if ($container->hasParameter('redis_dsn_cache') && $container->hasParameter('redis_dsn_session')) {
         $configs = Yaml::parse($this->fileLocator->locate('redis.yml'));
     } else {
         $configs = Yaml::parse($this->fileLocator->locate('redis_dummy.yml'));
     }
     foreach ($configs as $name => $config) {
         $container->prependExtensionConfig($name, $config);
     }
 }
Example #19
0
 /**
  * {@inheritdoc}
  */
 public function process(ContainerBuilder $container)
 {
     if ($container->hasParameter(self::MIGRATIONS_NAME_GENERATOR_CLASS_PARAM)) {
         $container->setParameter(self::MIGRATIONS_NAME_GENERATOR_CLASS_PARAM, 'Oro\\Bundle\\EntityExtendBundle\\Tools\\ExtendDbIdentifierNameGenerator');
     }
     if ($container->hasDefinition(self::MIGRATIONS_EXECUTOR_SERVICE) && $container->hasParameter(self::MIGRATIONS_EXECUTOR_CLASS_PARAM)) {
         $container->setParameter(self::MIGRATIONS_EXECUTOR_CLASS_PARAM, 'Oro\\Bundle\\EntityExtendBundle\\Migration\\ExtendMigrationExecutor');
         $serviceDef = $container->getDefinition(self::MIGRATIONS_EXECUTOR_SERVICE);
         $serviceDef->addMethodCall('setExtendOptionsManager', [new Reference(self::EXTEND_OPTIONS_MANAGER_SERVICE)]);
     }
 }
 /**
  * {@inheritdoc}
  */
 public function process(ContainerBuilder $container)
 {
     if (!$container->hasParameter('cmf_routing.backend_type_phpcr') || !$container->hasParameter('swp_multi_tenancy.backend_type_phpcr')) {
         return;
     }
     $bundles = $container->getParameter('kernel.bundles');
     if (!isset($bundles['CmfRoutingBundle'])) {
         throw new RuntimeException('You have enabled the PHPCR backend but the CmfRoutingBundle is not registered');
     }
     $container->getDefinition('swp_multi_tenancy.tenant_aware_router')->setArguments($container->getDefinition('cmf_routing.dynamic_router')->getArguments())->setMethodCalls($container->getDefinition('cmf_routing.dynamic_router')->getMethodCalls())->addMethodCall('setPathBuilder', [new Reference('swp_multi_tenancy.path_builder')]);
 }
Example #21
0
 public function process(ContainerBuilder $container)
 {
     if (!$container->hasParameter('twig.form.resources')) {
         return;
     }
     $container->setParameter('twig.form.resources', array_merge($container->getParameter('twig.form.resources'), array('TarnawskiAutocompleteFormBundle:Form:fields.html.twig')));
     if (!$container->hasParameter('framework.templating.form.resources')) {
         return;
     }
     $container->setParameter('framework.templating.form.resources', array_merge($container->getParameter('framework.templating.form.resources'), array('TarnawskiAutocompleteFormBundle:Form')));
 }
 function it_processes_the_configuration_and_registers_services_per_subject(ContainerBuilder $container)
 {
     $container->hasParameter('sylius.translation.mapping')->willReturn(false);
     $container->hasParameter('sylius.translation.default.mapping')->willReturn(true);
     $container->getParameter('sylius.translation.default.mapping')->willReturn(array(array('default_mapping' => array('translatable' => array('field' => 'translations', 'currentLocale' => 'currentLocale', 'fallbackLocale' => 'fallbackLocale'), 'translation' => array('field' => 'translatable', 'locale' => 'locale')))));
     $subjects = array('product' => array('subject' => 'Some\\App\\Product\\Entity\\Product', 'attribute' => array('model' => 'Some\\App\\Product\\Entity\\Attribute', 'form' => 'Some\\App\\Product\\Form\\AttributeType', 'translation' => array('model' => 'Some\\App\\Product\\Entity\\AttributeTranslation', 'form' => array('default' => 'Some\\App\\Product\\Form\\AttributeTranslationType'))), 'attribute_value' => array('model' => 'Some\\App\\Product\\Entity\\AttributeValue', 'form' => 'Some\\App\\Product\\Form\\AttributeValueType')));
     $container->setParameter('sylius.attribute.subjects', $subjects)->shouldBeCalled();
     $userConfig = array('driver' => SyliusResourceBundle::DRIVER_DOCTRINE_ORM, 'classes' => array('product' => array('subject' => 'Some\\App\\Product\\Entity\\Product', 'attribute' => array('model' => 'Some\\App\\Product\\Entity\\Attribute', 'form' => 'Some\\App\\Product\\Form\\AttributeType', 'translation' => array('model' => 'Some\\App\\Product\\Entity\\AttributeTranslation', 'form' => array('default' => 'Some\\App\\Product\\Form\\AttributeTranslationType'))), 'attribute_value' => array('model' => 'Some\\App\\Product\\Entity\\AttributeValue', 'form' => 'Some\\App\\Product\\Form\\AttributeValueType'))));
     $processedConfig = array('driver' => SyliusResourceBundle::DRIVER_DOCTRINE_ORM, 'classes' => array('product_attribute' => array('model' => 'Some\\App\\Product\\Entity\\Attribute', 'form' => 'Some\\App\\Product\\Form\\AttributeType', 'translation' => array('model' => 'Some\\App\\Product\\Entity\\AttributeTranslation', 'form' => array('default' => 'Some\\App\\Product\\Form\\AttributeTranslationType')), 'subject' => 'product'), 'product_attribute_value' => array('model' => 'Some\\App\\Product\\Entity\\AttributeValue', 'form' => 'Some\\App\\Product\\Form\\AttributeValueType', 'subject' => 'product')), 'validation_groups' => array('product_attribute' => array('sylius'), 'product_attribute_translation' => array('sylius'), 'product_attribute_value' => array('sylius')));
     $this->process($userConfig, $container)->shouldReturn($processedConfig);
 }
 function it_should_get_interfaces(ContainerBuilder $container, Definition $resolverDefinition)
 {
     $resolverDefinition->hasTag('doctrine.event_listener')->willReturn(false);
     $resolverDefinition->addTag('doctrine.event_listener', ['event' => 'loadClassMetadata'])->shouldBeCalled();
     $container->hasDefinition('doctrine.orm.listeners.resolve_target_entity')->willReturn(true);
     $container->findDefinition('doctrine.orm.listeners.resolve_target_entity')->willReturn($resolverDefinition);
     $container->hasParameter(RepositoryInterface::class)->willReturn(false);
     $container->hasParameter(Foo::class)->willReturn(false);
     $resolverDefinition->addMethodCall('addResolveTargetEntity', [RepositoryInterface::class, Foo::class, []])->shouldBeCalled();
     $this->resolve($container, [RepositoryInterface::class => Foo::class]);
 }
 /**
  * {@inheritdoc}
  */
 public function process(ContainerBuilder $container)
 {
     if (!$container->hasParameter('cmf_routing.backend_type_phpcr') || !$container->hasParameter('swp_multi_tenancy.backend_type_phpcr')) {
         return;
     }
     $bundles = $container->getParameter('kernel.bundles');
     if (!isset($bundles['CmfRoutingBundle'])) {
         throw new RuntimeException('You have enabled the PHPCR backend but the CmfRoutingBundle is not registered');
     }
     $container->getDefinition('cmf_routing.phpcr_candidates_prefix')->setClass($container->getParameter('swp_multi_tenancy.prefix_candidates.class'))->addMethodCall('setPathBuilder', [new Reference('swp_multi_tenancy.path_builder')])->addMethodCall('setRoutePathsNames', [$container->getParameter('swp_multi_tenancy.persistence.phpcr.route_basepaths')]);
 }
Example #25
0
 /**
  * @param ContainerBuilder $container
  * @param string           $source
  * @param array            $targets
  */
 protected function cloneParameters(ContainerBuilder $container, $source, $targets)
 {
     if ($container->hasParameter($source)) {
         $value = $container->getParameter($source);
         foreach ($targets as $target) {
             if (!$container->hasParameter($target)) {
                 $container->setParameter($target, $value);
             }
         }
     }
 }
 /**
  * @param array $config
  * @param ContainerBuilder $container
  *
  * @return array
  */
 protected function mergeBackwardCompatibilityConfig(array $config, ContainerBuilder $container)
 {
     if ($container->hasParameter('cache_time_keeper.driver')) {
         $config['use_driver'] = $container->getParameter('cache_time_keeper.driver');
     }
     foreach (['fast', 'slow'] as $item) {
         if (empty($config['drivers']['multi'][$item]) && $container->hasParameter('cache_time_keeper.driver.multi.' . $item)) {
             $config['drivers']['multi'][$item] = $container->getParameter('cache_time_keeper.driver.multi.' . $item);
         }
     }
     return $config;
 }
Example #27
0
 /**
  * Registers the form resources for the PHP & Twig templating engines.
  *
  * @param \Symfony\Component\DependencyInjection\ContainerBuilder $container The container.
  */
 protected function registerResources(ContainerBuilder $container)
 {
     $templatingEngines = $container->getParameter('templating.engines');
     if (in_array('php', $templatingEngines)) {
         $phpFormResources = $container->hasParameter('templating.helper.form.resources') ? $container->getParameter('templating.helper.form.resources') : array();
         $container->setParameter('templating.helper.form.resources', array_merge($phpFormResources, array('IvoryCKEditorBundle:Form')));
     }
     if (in_array('twig', $templatingEngines)) {
         $twigFormResources = $container->hasParameter('twig.form.resources') ? $container->getParameter('twig.form.resources') : array();
         $container->setParameter('twig.form.resources', array_merge($twigFormResources, array('IvoryCKEditorBundle:Form:ckeditor_widget.html.twig')));
     }
 }
 /**
  * @param array $configs
  * @param ContainerBuilder $builder
  */
 public function load(array $configs, ContainerBuilder $builder)
 {
     $loader = new XmlFileLoader($builder, new FileLocator(__DIR__ . '/../Resources/config'));
     $loader->load('services.xml');
     $config = array();
     foreach ($configs as $c) {
         $config = array_merge($config, $c);
     }
     if (isset($config['auto_transactional']) && $config['auto_transactional'] && isset($config['patterns']) && count($config['patterns'])) {
         throw new \InvalidArgumentException("Cannot activate auto_transactional and set patterns at the same time.");
     }
     if (!isset($config['defaults'])) {
         $config['defaults'] = array();
     }
     $config['defaults'] = array_merge(array('conn' => array(), 'pattern' => '.*', 'propagation' => TransactionDefinition::PROPAGATION_REQUIRED, 'isolation' => TransactionDefinition::ISOLATION_DEFAULT, 'noRollbackFor' => array(), 'methods' => array('POST', 'PUT', 'DELETE', 'PATCH'), 'subrequest' => false), $config['defaults']);
     if (isset($config['auto_transactional']) && $config['auto_transactional']) {
         $patterns = array($config['defaults']);
     } else {
         $patterns = array();
         if (isset($config['patterns'])) {
             foreach ($config['patterns'] as $pattern) {
                 $patterns[] = array_merge($config['defaults'], $pattern);
             }
         }
     }
     if (isset($config['annotations']) && $config['annotations'] == true) {
         $args = array($patterns, $config['defaults'], new Reference('annotation_reader'));
     } else {
         $args = array($patterns);
     }
     $def = $builder->getDefinition('simple_things_transactional.transactional_matcher');
     $def->setArguments($args);
     if ($builder->hasParameter('doctrine.connections')) {
         foreach ($builder->getParameter('doctrine.connections') as $alias => $service) {
             $builder->setDefinition('simple_things_transactional.tx.dbal.' . $alias, new DefinitionDecorator('simple_things_transactional.manager.dbal'))->setArguments(array(new Reference($service)));
         }
     }
     if ($builder->hasParameter('doctrine.entity_managers')) {
         foreach ($builder->getParameter('doctrine.entity_managers') as $alias => $service) {
             $builder->setDefinition('simple_things_transactional.tx.orm.' . $alias, new DefinitionDecorator('simple_things_transactional.manager.orm'))->setArguments(array(new Reference('doctrine'), $alias));
         }
     }
     if ($builder->hasParameter('doctrine_couchdb.document_managers')) {
         foreach ($builder->getParameter('doctrine_couchdb.document_managers') as $alias => $service) {
             $builder->setDefinition('simple_things_transactional.tx.couchdb.' . $alias, new DefinitionDecorator('simple_things_transactional.manager.couchdb'))->setArguments(array(new Reference($service)));
         }
     }
     if ($builder->hasParameter('doctrine_mongodb.document_managers')) {
         foreach ($builder->getParameter('doctrine_mongodb.document_managers') as $alias => $service) {
             $builder->setDefinition('simple_things_transactional.tx.mongodb.' . $alias, new DefinitionDecorator('simple_things_transactional.manager.mongodb'))->setArguments(array(new Reference($service)));
         }
     }
 }
 public function testParameters()
 {
     $extension = new ForkExtension();
     $container = new ContainerBuilder();
     $this->assertFalse($container->has('fork'));
     $this->assertFalse($container->hasParameter('sb_fork.class.fork'));
     $this->assertFalse($container->hasParameter('sb_fork.class.process'));
     $extension->load([], $container);
     $this->assertTrue($container->has('fork'));
     $this->assertTrue($container->hasParameter('sb_fork.class.fork'));
     $this->assertTrue($container->hasParameter('sb_fork.class.process'));
 }
 /**
  * {@inheritdoc}
  */
 public function process(ContainerBuilder $container)
 {
     if (!$container->hasDefinition('data_collector.dump')) {
         return;
     }
     $definition = $container->getDefinition('data_collector.dump');
     if ($container->hasParameter('templating.helper.code.file_link_format')) {
         $definition->replaceArgument(1, $container->getParameter('templating.helper.code.file_link_format'));
     }
     if (!$container->hasParameter('web_profiler.debug_toolbar.mode') || WebDebugToolbarListener::DISABLED === $container->getParameter('web_profiler.debug_toolbar.mode')) {
         $definition->replaceArgument(3, null);
     }
 }