The method "unaliases" recursively to return a Definition instance.
public findDefinition ( string $id ) : |
||
$id | string | The service identifier or alias |
return | A Definition instance |
/** * {@inheritdoc} */ public function process(ContainerBuilder $container) { // loaders $loaders = array(); $loadersReferences = array(); foreach ($container->findTaggedServiceIds('translation.loader') as $id => $attributes) { $loaders[$id][] = $attributes[0]['alias']; $loadersReferences[$attributes[0]['alias']] = new Reference($id); if (isset($attributes[0]['legacy-alias'])) { $loaders[$id][] = $attributes[0]['legacy-alias']; $loadersReferences[$attributes[0]['legacy-alias']] = new Reference($id); } } if ($container->hasDefinition('lexik_translation.translator')) { $container->findDefinition('lexik_translation.translator')->replaceArgument(2, $loaders); } if ($container->hasDefinition('lexik_translation.importer.file')) { $container->findDefinition('lexik_translation.importer.file')->replaceArgument(0, $loadersReferences); } // exporters if ($container->hasDefinition('lexik_translation.exporter_collector')) { foreach ($container->findTaggedServiceIds('lexik_translation.exporter') as $id => $attributes) { $container->getDefinition('lexik_translation.exporter_collector')->addMethodCall('addExporter', array($id, new Reference($id))); } } }
public function process(ContainerBuilder $container) { if (!$container->hasDefinition('translator.writer') || !$container->hasDefinition('translator.real')) { return; } $translatorRealDefinition = $container->findDefinition('translator.real'); $translatorDefinition = $container->findDefinition('translator.writer'); $translatorDefinition->replaceArgument(2, $translatorRealDefinition->getArgument(2)); foreach($translatorRealDefinition->getMethodCalls() as $methodCall) { $translatorDefinition->addMethodCall($methodCall[0], $methodCall[1]); // use resources from translator.real to add available locales if ('addResource' === $methodCall[0]) { // $methodCall[1][2] is the locale // @see FrameworkBundle\DependencyInjection\FrameworkExtension::registerTranslatorConfiguration $translatorDefinition->addMethodCall('addLocale', array($methodCall[1][2])); } } foreach($container->findTaggedServiceIds('knplabs_translator.dumper') as $id => $attributes) { $translatorDefinition->addMethodCall('addDumper', array($container->getDefinition($id))); } }
public function process(ContainerBuilder $container) { if ($container->has('fos_rest.serializer')) { $class = $container->getParameterBag()->resolveValue($container->findDefinition('fos_rest.serializer')->getClass()); if (!is_subclass_of($class, 'FOS\\RestBundle\\Serializer\\Serializer')) { throw new \InvalidArgumentException(sprintf('"fos_rest.serializer" must implement FOS\\RestBundle\\Serializer\\Serializer (instance of "%s" given).', $class)); } return; } if (!$container->has('serializer') && !$container->has('jms_serializer.serializer')) { throw new \InvalidArgumentException('Neither a service called "jms_serializer.serializer" nor "serializer" is available and no serializer is explicitly configured. You must either enable the JMSSerializerBundle, enable the FrameworkBundle serializer or configure a custom serializer.'); } if ($container->has('serializer')) { $class = $container->getParameterBag()->resolveValue($container->findDefinition('serializer')->getClass()); if (is_subclass_of($class, 'Symfony\\Component\\Serializer\\SerializerInterface')) { $container->setAlias('fos_rest.serializer', 'fos_rest.serializer.symfony'); $container->removeDefinition('fos_rest.serializer.exception_wrapper_serialize_handler'); } elseif (is_subclass_of($class, 'JMS\\Serializer\\SerializerInterface')) { $container->setAlias('fos_rest.serializer', 'fos_rest.serializer.jms'); } elseif (is_subclass_of($class, 'FOS\\RestBundle\\Serializer\\Serializer')) { $container->setAlias('fos_rest.serializer', 'serializer'); } else { throw new \InvalidArgumentException(sprintf('"fos_rest.serializer" must implement FOS\\RestBundle\\Serializer\\Serializer (instance of "%s" given).', $class)); } return; } else { $container->removeDefinition('fos_rest.serializer.exception_wrapper_normalizer'); } if ($container->has('jms_serializer.serializer')) { $container->setAlias('fos_rest.serializer', 'fos_rest.serializer.jms'); } else { $container->removeDefinition('fos_rest.serializer.exception_wrapper_serialize_handler'); } }
public function process(ContainerBuilder $container) { // log $definition = $container->findDefinition('csa_guzzle.subscriber.log'); $logServiceId = $container->getParameter('csa_guzzle.subscriber.log.service'); if ($container->hasDefinition($logServiceId)) { $definition->replaceArgument(0, new Reference($logServiceId)); } $channel = $container->getParameter('csa_guzzle.subscriber.log.channel'); if (!empty($channel)) { $definition->clearTag('monolog.logger'); $definition->addTag('monolog.logger', array('channel' => $channel)); } // Cache $cacheServiceId = $container->getParameter('csa_guzzle.subscriber.cache.service'); if ($container->hasDefinition($cacheServiceId)) { $container->setDefinition('csa_guzzle.cache_storage', new Definition('%csa_guzzle.cache_storage.class%', array(new Reference($cacheServiceId), $container->getParameter('csa_guzzle.subscriber.cache.prefix')))); $cacheSubscriber = new Definition('%csa_guzzle.subscriber.cache.class%', array(new Reference('csa_guzzle.cache_storage'), $container->getParameter('csa_guzzle.subscriber.cache.enable'))); $cacheSubscriber->addTag('csa_guzzle.subscriber'); $container->setDefinition('csa_guzzle.subscriber.cache', $cacheSubscriber); } // get all Guzzle subscribers $subscribers = $container->findTaggedServiceIds('csa_guzzle.subscriber'); if (!count($subscribers)) { return; } // Factory $factory = $container->findDefinition('csa_guzzle.client_factory'); $arg = []; foreach ($subscribers as $subscriber => $options) { $arg[] = new Reference($subscriber); } $factory->replaceArgument(1, $arg); }
public function process(ContainerBuilder $container) { $clearSpoolsId = 'long_running.swift_mailer.clear_spools'; if (!$container->has($clearSpoolsId)) { return; } if (!$container->hasAlias('swiftmailer.mailer') || $container->getParameter('swiftmailer.mailers') === []) { return; } $spoolServiceReferences = []; $realTransportServiceReferences = []; $mailers = $container->getParameter('swiftmailer.mailers'); foreach ($mailers as $name => $mailer) { if ($container->getParameter(sprintf('swiftmailer.mailer.%s.spool.enabled', $name))) { $transport = sprintf('swiftmailer.mailer.%s.transport', $name); $transportDefinition = $container->findDefinition($transport); if (is_a($transportDefinition->getClass(), 'Swift_Transport_SpoolTransport', true)) { $spool = sprintf('swiftmailer.mailer.%s.spool', $name); $spoolDefinition = $container->findDefinition($spool); if (is_a($spoolDefinition->getClass(), 'Swift_MemorySpool', true)) { $realTransport = sprintf('swiftmailer.mailer.%s.transport.real', $name); $spoolServiceReferences[$name] = new Reference($spool); $realTransportServiceReferences[$name] = new Reference($realTransport); } } } } $definition = $container->getDefinition($clearSpoolsId); $definition->replaceArgument(0, $spoolServiceReferences); $definition->replaceArgument(1, $realTransportServiceReferences); }
public function process(ContainerBuilder $container) { $tags = $container->findTaggedServiceIds('cmf_media.upload_editor_helper'); if (count($tags) > 0) { if ($container->has('cmf_media.upload_file_helper')) { $manager = $container->findDefinition('cmf_media.upload_file_helper'); foreach ($tags as $id => $tag) { $manager->addMethodCall('addEditorHelper', array($tag[0]['alias'], new Reference($id))); } } if ($container->has('cmf_media.upload_image_helper')) { $manager = $container->findDefinition('cmf_media.upload_image_helper'); foreach ($tags as $id => $tag) { $manager->addMethodCall('addEditorHelper', array($tag[0]['alias'], new Reference($id))); } } } $tags = $container->findTaggedServiceIds('cmf_media.browser_file_helper'); if (count($tags) > 0) { if ($container->has('cmf_media.browser_file_helper')) { $manager = $container->findDefinition('cmf_media.browser_file_helper'); foreach ($tags as $id => $tag) { $manager->addMethodCall('addEditorHelper', array($tag[0]['editor'], $tag[0]['browser'], new Reference($id))); } } } }
/** * @param array $configs * @param ContainerBuilder $container */ public function load(array $configs, ContainerBuilder $container) { $configuration = new Configuration(); $config = $this->processConfiguration($configuration, $configs); $this->copyValuesFromParentToProject('locales', $config); $this->copyValuesFromParentToProject('domains', $config); $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('services.yml'); if ($config['auto_add_assets']) { $loader->load('autoAdd.yml'); } $container->setParameter('translation.toolbar.allow_edit', $config['allow_edit']); /* * Set an alias for the adapter */ $adapter = $config['http_adapter']; if ($adapter === 'guzzle5' || $adapter === 'guzzle6') { //Use one of our adapters $adapter = 'happyr.translation.http_adapter.' . $adapter; } $container->setAlias('happyr.translation.http_adapter', $adapter); $targetDir = rtrim($config['target_dir'], '/'); $container->findDefinition('happyr.translation.filesystem')->replaceArgument(2, $targetDir); /* * Set alias for the translation service */ $container->setAlias('happyr.translation', 'happyr.translation.service.' . $config['translation_service']); $container->findDefinition('happyr.translation.service.loco')->replaceArgument(2, $config['projects'])->replaceArgument(3, $targetDir); }
/** * @param $id * * @return string|null */ public function get($id) { if (!$this->has($id)) { return; } return $this->container->findDefinition($id)->getClass(); }
protected function handleConfiguration($config, ContainerBuilder $container) { if (!isset($config['features'])) { return; } if (!$container->hasDefinition('hotflo_feature_toggle.feature_container')) { return; } $featureToggleContainerDefinition = $container->findDefinition('hotflo_feature_toggle.feature_toggle_container'); foreach ($config['toggles'] as $toggle => $properties) { if ($properties['type'] == 'service') { $container->setAlias('hotflo_feature_toggle.toggle.' . $toggle, $properties['service']); } else { if (!class_exists($properties['class'])) { throw new InvalidConfigurationException(sprintf('Class \'%s\' not found.', $properties['class'])); } $toggleDefinition = new Definition($properties['class']); $toggleDefinition->addArgument($properties['options']); $container->setDefinition('hotflo_feature_toggle.toggle.' . $toggle, $toggleDefinition); } $featureToggleContainerDefinition->addMethodCall('addFeatureToggle', [new Reference('hotflo_feature_toggle.toggle.' . $toggle), $toggle]); } $featureContainerDefinition = $container->findDefinition('hotflo_feature_toggle.feature_container'); foreach ($config['features'] as $feature => $properties) { $featureDefinition = new Definition('JoshuaEstes\\Component\\FeatureToggle\\Feature'); $featureDefinition->addArgument($properties['options']); $featureDefinition->addMethodCall('setKey', [$feature]); $featureDefinition->addMethodCall('setToggle', [new Reference('hotflo_feature_toggle.toggle.' . $properties['toggle'])]); $container->setDefinition('hotflo_feature_toggle.feature.' . $feature, $featureDefinition); $featureContainerDefinition->addMethodCall('addFeature', [new Reference('hotflo_feature_toggle.feature.' . $feature)]); } }
public function process(ContainerBuilder $container) { if (!($container->hasDefinition('security.authentication.provider.dao') && $container->hasDefinition('security.authentication.provider.anonymous'))) { return; } $configResolverRef = new Reference('ezpublish.config.resolver'); $repositoryReference = new Reference('ezpublish.api.repository'); // Inject the Repository in the authentication provider. // We need it for checking user credentials $daoAuthenticationProviderDef = $container->findDefinition('security.authentication.provider.dao'); $daoAuthenticationProviderDef->addMethodCall('setRepository', array($repositoryReference)); $anonymousAuthenticationProviderDef = $container->findDefinition('security.authentication.provider.anonymous'); $anonymousAuthenticationProviderDef->addMethodCall('setRepository', array($repositoryReference)); $anonymousAuthenticationProviderDef->addMethodCall('setConfigResolver', array($configResolverRef)); if (!$container->hasDefinition('security.http_utils')) { return; } $httpUtilsDef = $container->findDefinition('security.http_utils'); $httpUtilsDef->addMethodCall('setSiteAccess', array(new Reference('ezpublish.siteaccess'))); if (!$container->hasDefinition('security.authentication.success_handler')) { return; } $successHandlerDef = $container->getDefinition('security.authentication.success_handler'); $successHandlerDef->addMethodCall('setConfigResolver', array($configResolverRef)); }
/** * Loads the logger configuration. * * Usage example: * * <zend:logger priority="info" path="/path/to/some.log" /> * * @param array $config An array of configuration settings * @param ContainerBuilder $container A ContainerBuilder instance */ protected function registerLoggerConfiguration($config, ContainerBuilder $container) { $config = $config['logger']; if (!$container->hasDefinition('zend.logger')) { $loader = new XmlFileLoader($container, __DIR__.'/../Resources/config'); $loader->load('logger.xml'); $container->setAlias('logger', 'zend.logger'); } if (isset($config['priority'])) { $container->setParameter('zend.logger.priority', is_int($config['priority']) ? $config['priority'] : constant('\\Zend\\Log\\Logger::'.strtoupper($config['priority']))); } if (isset($config['path'])) { $container->setParameter('zend.logger.path', $config['path']); } if (isset($config['log_errors'])) { $definition = $container->findDefinition('zend.logger'); if (false === $config['log_errors'] && $definition->hasMethodCall('registerErrorHandler')) { $container->findDefinition('zend.logger')->removeMethodCall('registerErrorHandler'); } else { $container->findDefinition('zend.logger')->addMethodCall('registerErrorHandler'); } } }
/** * @param array $config * @param ContainerBuilder $container */ private function processClient(array $config, ContainerBuilder $container) { if (null === $config['client']) { return; } $container->findDefinition('nexy_paybox_direct.sdk')->addArgument($container->findDefinition('nexy_paybox_direct.http_client.' . $config['client'])); }
/** * {@inheritDoc} */ public function load(array $configs, ContainerBuilder $container) { $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $configuration = new Configuration(); $processor = new Processor(); $config = $processor->processConfiguration($configuration, $configs); if ($config['pdf']['enabled']) { $loader->load('pdf.xml'); $container->setParameter('knp_snappy.pdf.binary', $config['pdf']['binary']); $container->setParameter('knp_snappy.pdf.options', $config['pdf']['options']); $container->setParameter('knp_snappy.pdf.env', $config['pdf']['env']); if (!empty($config['temporary_folder'])) { $container->findDefinition('knp_snappy.pdf.internal_generator')->addMethodCall('setTemporaryFolder', array($config['temporary_folder'])); } } if ($config['image']['enabled']) { $loader->load('image.xml'); $container->setParameter('knp_snappy.image.binary', $config['image']['binary']); $container->setParameter('knp_snappy.image.options', $config['image']['options']); $container->setParameter('knp_snappy.image.env', $config['image']['env']); if (!empty($config['temporary_folder'])) { $container->findDefinition('knp_snappy.image.internal_generator')->addMethodCall('setTemporaryFolder', array($config['temporary_folder'])); } } }
public function process( ContainerBuilder $container ) { if ( !$container->hasAlias( 'session.storage' ) ) { return; } $sessionStorageAlias = $container->getAlias( 'session.storage' ); $sessionStorageProxyDef = $container->findDefinition( 'ezpublish_legacy.session_storage_proxy' ); $sessionStorageProxyDef->replaceArgument( 1, new Reference( (string)$sessionStorageAlias ) ); $container->setAlias( 'session.storage', 'ezpublish_legacy.session_storage_proxy' ); if ( $container->hasAlias( 'session.handler' ) ) { $sessionHandlerAlias = $container->getAlias( 'session.handler' ); $interfaces = class_implements( $container->findDefinition( (string)$sessionHandlerAlias ) ); // Only swap session handler if it implements appropriate interface. if ( isset( $interfaces['SessionHandlerInterface'] ) ) { $sessionHandlerProxyDef = $container->findDefinition( 'ezpublish_legacy.session_handler_proxy' ); $sessionHandlerProxyDef->replaceArgument( 1, new Reference( (string)$sessionHandlerAlias ) ); $container->setAlias( 'session.handler', 'ezpublish_legacy.session_handler_proxy' ); } } }
private function buildServiceProxyFactoryDefinition($taggedServiceName, $tagParameters) { $definition = $this->container->findDefinition($taggedServiceName); $factoryDefinition = new Definition(); $factoryDefinition->setFactory([new Reference('openclassrooms.service_proxy.service_proxy_factory'), 'create']); $factoryDefinition->setArguments([$definition, $tagParameters[0]]); $this->container->setDefinition($taggedServiceName, $factoryDefinition); }
/** * {@inheritdoc} */ public function process(ContainerBuilder $container) { $contextRegistryDefinition = $container->findDefinition('sylius_multi_container.context_registry'); $taggedServices = $container->findTaggedServiceIds('sylius.behat.context'); foreach ($taggedServices as $id => $tags) { $contextRegistryDefinition->addMethodCall('add', [$id, $container->findDefinition($id)->getClass()]); } }
/** * {@inheritdoc} */ public function process(ContainerBuilder $container) { $config = $container->getParameter('bengor_user.config'); foreach ($config['user_class'] as $key => $user) { $container->findDefinition('bengor.user.command.create_' . $key . '_command')->setArguments([$container->getDefinition('bengor_user.' . $key . '.command_bus'), $key, $user['class']]); $container->findDefinition('bengor.user.command.change_' . $key . '_password_command')->setArguments([$container->getDefinition('bengor_user.' . $key . '.command_bus'), $key]); } }
/** * {@inheritdoc} */ public function process(ContainerBuilder $container) { if (!$container->hasDefinition('swp.factory.article') || !$container->hasParameter('swp_content.backend_type_phpcr')) { return; } $baseDefinition = new Definition(Factory::class, [new Parameter('swp.model.article.class')]); $articleFactoryDefinition = new Definition($container->getParameter('swp.factory.article.class'), [$baseDefinition, $container->findDefinition('swp.provider.route'), $container->findDefinition('swp.provider.article'), $container->getParameter('swp_multi_tenancy.persistence.phpcr.content_basepath')]); $container->setDefinition('swp.factory.article', $articleFactoryDefinition); }
private function buildUseCaseProxyFactoryDefinition($taggedServiceName, $tagParameters) { $definition = $this->container->findDefinition($taggedServiceName); $factoryDefinition = new Definition(); $factoryDefinition->setFactoryService('openclassrooms.use_case.use_case_proxy_factory'); $factoryDefinition->setFactoryMethod('create'); $factoryDefinition->setArguments(array($definition, $tagParameters[0])); $this->container->setDefinition($taggedServiceName, $factoryDefinition); }
/** * @param \Symfony\Component\DependencyInjection\ContainerBuilder $container * @param \Symfony\Component\DependencyInjection\Definition $def * @param \Symfony\Component\DependencyInjection\Definition $fooDef * @param \Symfony\Component\DependencyInjection\Definition $barDef * @param \Symfony\Component\DependencyInjection\Definition $bazDef */ public function it_add_builders_in_priority_order($container, $def, $fooDef, $barDef, $bazDef) { $container->findTaggedServiceIds('admin.context')->willReturn(array('builder_foo' => array(array('priority' => 5)), 'builder_bar' => array(array()), 'builder_baz' => array(array('priority' => -10)))); $container->findDefinition('builder_foo')->willReturn($fooDef); $container->findDefinition('builder_bar')->willReturn($barDef); $container->findDefinition('builder_baz')->willReturn($bazDef); $def->replaceArgument(0, array($fooDef, $barDef, $bazDef))->shouldBeCalled(); $this->process($container); }
public function process(ContainerBuilder $container) { if (!$container->has('ezpublish.view_builder.registry')) { return; } $viewBuilderRegistry = $container->findDefinition('ezpublish.view_builder.registry'); $contentViewBuilder = $container->findDefinition('netgen.ezplatform_site.view_builder.content'); $viewBuilderRegistry->addMethodCall('addToRegistry', [[$contentViewBuilder]]); }
/** * Registers the SystemInfoViewBuilder into the view builder registry. * * @param \Symfony\Component\DependencyInjection\ContainerBuilder $container */ public function process(ContainerBuilder $container) { if (!$container->has('ezpublish.view_builder.registry')) { return; } $viewBuilderRegistry = $container->findDefinition('ezpublish.view_builder.registry'); $viewBuilders = [$container->findDefinition('support_tools.view.system_info_view_builder')]; $viewBuilderRegistry->addMethodCall('addToRegistry', [$viewBuilders]); }
/** * Registers the tag view builder into view builder registry. * * @param \Symfony\Component\DependencyInjection\ContainerBuilder $container */ public function process(ContainerBuilder $container) { if (!$container->has('ezpublish.view_builder.registry')) { return; } $viewBuilderRegistry = $container->findDefinition('ezpublish.view_builder.registry'); $tagViewBuilder = $container->findDefinition('eztags.view.tag_view_builder'); $viewBuilderRegistry->addMethodCall('addToRegistry', array(array($tagViewBuilder))); }
/** * Loads the Swift Mailer configuration. * * Usage example: * * <swiftmailer:config transport="gmail"> * <swiftmailer:username>fabien</swift:username> * <swiftmailer:password>xxxxx</swift:password> * <swiftmailer:spool path="/path/to/spool/" /> * </swiftmailer:config> * * @param array $config An array of configuration settings * @param ContainerBuilder $container A ContainerBuilder instance */ public function load(array $configs, ContainerBuilder $container) { $loader = new XmlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config')); $loader->load('swiftmailer.xml'); $container->setAlias('mailer', 'swiftmailer.mailer'); $r = new \ReflectionClass('Swift_Message'); $container->getDefinition('swiftmailer.mailer')->setFile(dirname(dirname(dirname($r->getFilename()))) . '/swift_init.php'); $configuration = new Configuration(); $processor = new Processor(); $config = $processor->process($configuration->getConfigTree($container->getParameter('kernel.debug')), $configs); if (null === $config['transport']) { $transport = 'null'; } elseif ('gmail' === $config['transport']) { $config['encryption'] = 'ssl'; $config['auth_mode'] = 'login'; $config['host'] = 'smtp.gmail.com'; $transport = 'smtp'; } else { $transport = $config['transport']; } if ('smtp' === $transport) { $loader->load('smtp.xml'); } $container->setParameter('swiftmailer.transport.name', $transport); $container->setAlias('swiftmailer.transport', 'swiftmailer.transport.' . $transport); if (false === $config['port']) { $config['port'] = 'ssl' === $config['encryption'] ? 465 : 25; } foreach (array('encryption', 'port', 'host', 'username', 'password', 'auth_mode') as $key) { $container->setParameter('swiftmailer.transport.' . $transport . '.' . $key, $config[$key]); } // spool? if (isset($config['spool'])) { $type = $config['spool']['type']; $loader->load('spool.xml'); $container->setAlias('swiftmailer.transport.real', 'swiftmailer.transport.' . $transport); $container->setAlias('swiftmailer.transport', 'swiftmailer.transport.spool'); $container->setAlias('swiftmailer.spool', 'swiftmailer.spool.' . $type); foreach (array('path') as $key) { $container->setParameter('swiftmailer.spool.' . $type . '.' . $key, $config['spool'][$key]); } } if ($config['logging']) { $container->findDefinition('swiftmailer.transport')->addMethodCall('registerPlugin', array(new Reference('swiftmailer.plugin.messagelogger'))); $container->findDefinition('swiftmailer.data_collector')->addTag('data_collector', array('template' => 'SwiftmailerBundle:Collector:swiftmailer', 'id' => 'swiftmailer')); } if (isset($config['delivery_address']) && $config['delivery_address']) { $container->setParameter('swiftmailer.single_address', $config['delivery_address']); $container->findDefinition('swiftmailer.transport')->addMethodCall('registerPlugin', array(new Reference('swiftmailer.plugin.redirecting'))); } else { $container->setParameter('swiftmailer.single_address', null); } if (isset($config['disable_delivery']) && $config['disable_delivery']) { $container->findDefinition('swiftmailer.transport')->addMethodCall('registerPlugin', array(new Reference('swiftmailer.plugin.blackhole'))); } }
function it_processes(ContainerBuilder $container, Definition $definition, Definition $userRepositoryDefinition) { $container->getParameter('bengor_user.config')->shouldBeCalled()->willReturn(['user_class' => ['user' => ['class' => 'AppBundle\\Entity\\User', 'firewall' => 'main', 'persistence' => 'doctrine_orm', 'default_roles' => ['ROLE_USER'], 'use_cases' => ['security' => ['enabled' => true], 'sign_up' => ['enabled' => true, 'type' => 'default'], 'change_password' => ['enabled' => true, 'type' => 'default'], 'remove' => ['enabled' => true]], 'routes' => ['security' => ['login' => ['name' => 'bengor_user_user_login', 'path' => '/user/login'], 'login_check' => ['name' => 'bengor_user_user_login_check', 'path' => '/user/login_check'], 'logout' => ['name' => 'bengor_user_user_logout', 'path' => '/user/logout'], 'success_redirection_route' => 'bengor_user_user_homepage'], 'sign_up' => ['name' => 'bengor_user_user_sign_up', 'path' => '/user/sign-up', 'success_redirection_route' => 'bengor_user_user_homepage'], 'invite' => ['name' => 'bengor_user_user_invite', 'path' => '/user/invite', 'success_redirection_route' => null], 'enable' => ['name' => 'bengor_user_user_enable', 'path' => '/user/confirmation-token', 'success_redirection_route' => null], 'change_password' => ['name' => 'bengor_user_user_change_password', 'path' => '/user/change-password', 'success_redirection_route' => null], 'request_remember_password' => ['name' => 'bengor_user_user_request_remember_password', 'path' => '/user/remember-password', 'success_redirection_route' => null], 'remove' => ['name' => 'bengor_user_user_remove', 'path' => '/user/remove', 'success_redirection_route' => null]]]]]); $container->getDefinition('bengor_user.user.command_bus')->shouldBeCalled()->willReturn($userRepositoryDefinition); $container->findDefinition('bengor.user.command.create_user_command')->shouldBeCalled()->willReturn($definition); $definition->setArguments(Argument::type('array'))->shouldBeCalled()->willReturn($definition); $container->findDefinition('bengor.user.command.change_user_password_command')->shouldBeCalled()->willReturn($definition); $definition->setArguments(Argument::type('array'))->shouldBeCalled()->willReturn($definition); $this->process($container); }
/** * {@inheritdoc} */ public function process(ContainerBuilder $container) { // we only do a call if the delivery method is immediate. if ($container->getParameter('spy_timeline.spread.deployer.delivery') !== "immediate") { return; } $actionManager = $container->findDefinition('spy_timeline.action_manager'); $deployer = $container->findDefinition('spy_timeline.spread.deployer'); $actionManager->addMethodCall('setDeployer', array($deployer)); }
public function process(ContainerBuilder $container) { $taggedServices = $container->findTaggedServiceIds('atom_uploader.mapping.helper_repo'); $definition = $container->findDefinition('atom_uploader.mapping.helper_repo'); foreach ($taggedServices as $serviceId => $tags) { // all unused drivers will be removed after DI optimization phase $container->findDefinition($serviceId)->setPublic(false); $definition->addMethodCall('addHelper', [new Reference($serviceId)]); } }
/** * {@inheritdoc} */ public function process(ContainerBuilder $container) { $definition = $container->findDefinition('http_kernel.basic'); $definition->replaceArgument(1, new Reference('webprofiler.debug.controller_resolver')); // Replace the regular event_dispatcher service with the debug one. $definition = $container->findDefinition('event_dispatcher'); $definition->setPublic(FALSE); $container->setDefinition('webprofiler.debug.event_dispatcher.default', $definition); $container->register('event_dispatcher', 'Drupal\\webprofiler\\TraceableEventDispatcher')->addArgument(new Reference('webprofiler.debug.event_dispatcher.default'))->addArgument(new Reference('stopwatch'))->setProperty('_serviceId', 'event_dispatcher'); }
/** * You can modify the container here before it is dumped to PHP code. * * @param ContainerBuilder $container * * @api */ public function process(ContainerBuilder $container) { $definition = $container->findDefinition('security.authentication_provider_manager'); $providerDefinitionIds = $container->findTaggedServiceIds('security.authentication_provider'); $definitions = []; foreach ($providerDefinitionIds as $serviceId => $tags) { $definitions[] = $container->findDefinition($serviceId); } $definition->replaceArgument(0, $definitions); }
/** * {@inheritdoc} */ public function process(ContainerBuilder $container) { foreach ($container->getParameter('sylius.review.subjects') as $subject => $configuration) { $factory = $container->findDefinition('sylius.factory.' . $subject . '_review'); $reviewFactoryDefinition = new Definition(ReviewFactory::class); $reviewFactory = $container->setDefinition(sprintf('sylius.factory.' . $subject . '_review'), $reviewFactoryDefinition); $reviewFactory->addArgument($factory); $reviewFactory->addArgument($container->findDefinition('sylius.repository.' . $subject)); } }