From 4ae8afea62c0a8c7af6ffdfddcae83eefc6557d1 Mon Sep 17 00:00:00 2001 From: Fabien Potencier Date: Fri, 27 Aug 2010 11:23:24 +0200 Subject: [PATCH] [Framework] made a small optimization --- .../Framework/DependencyInjection/KernelExtension.php | 1 + src/Symfony/Framework/bootstrap.php | 8 +++++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/Symfony/Framework/DependencyInjection/KernelExtension.php b/src/Symfony/Framework/DependencyInjection/KernelExtension.php index fc86ae4d6b..a1c794da46 100644 --- a/src/Symfony/Framework/DependencyInjection/KernelExtension.php +++ b/src/Symfony/Framework/DependencyInjection/KernelExtension.php @@ -86,6 +86,7 @@ class KernelExtension extends Extension if ($container->getParameter('kernel.debug')) { $loader->load('debug.xml'); $container->setDefinition('event_dispatcher', $container->findDefinition('debug.event_dispatcher')); + $container->setAlias('debug.event_dispatcher', 'event_dispatcher'); } } diff --git a/src/Symfony/Framework/bootstrap.php b/src/Symfony/Framework/bootstrap.php index a6032d8c48..e35da87c64 100644 --- a/src/Symfony/Framework/bootstrap.php +++ b/src/Symfony/Framework/bootstrap.php @@ -99,7 +99,8 @@ class KernelExtension extends Extension { $loader->load('services.xml'); if ($container->getParameter('kernel.debug')) { $loader->load('debug.xml'); - $container->setDefinition('event_dispatcher', $container->findDefinition('debug.event_dispatcher')); } } + $container->setDefinition('event_dispatcher', $container->findDefinition('debug.event_dispatcher')); + $container->setAlias('debug.event_dispatcher', 'event_dispatcher'); } } if (isset($config['charset'])) { $container->setParameter('kernel.charset', $config['charset']); } if (array_key_exists('error_handler', $config)) { @@ -187,6 +188,7 @@ use Symfony\Component\EventDispatcher\EventDispatcher as BaseEventDispatcher; use Symfony\Component\EventDispatcher\Event; use Symfony\Component\DependencyInjection\ContainerInterface; class EventDispatcher extends BaseEventDispatcher { - public function __construct(ContainerInterface $container) { + public function setContainer(ContainerInterface $container) { foreach ($container->findTaggedServiceIds('kernel.listener') as $id => $attributes) { - $container->get($id)->register($this); } } } + $priority = isset($attributes[0]['priority']) ? $attributes[0]['priority'] : 0; + $container->get($id)->register($this, $priority); } } }