public function setUpEventHandlers() { $triggered = new \stdClass(); $events = func_get_args(); foreach ($events as $e) { if (is_string($e)) { $triggered->{$e} = 0; } } $that = $this; EventDispatcherProxy::setDispatcherGetter(function () use($that, &$triggered, $events) { $c = $that->getContainer(); $d = new ContainerAwareEventDispatcher($c); foreach ($events as $e) { if ($e instanceof EventSubscriberInterface) { $d->addSubscriber($e); } else { $d->addListener($e, function () use($e, &$triggered) { $triggered->{$e}++; }); } } return $d; }); return $triggered; }
protected function boot() { $dispatcher = new EventDispatcher($this->container); $resolver = new ControllerResolver($this->container); $this->httpKernel = new HttpKernel($dispatcher, $resolver); $this->legacyKernel = new LegacyIntranetKernel($dispatcher); $locator = new FileLocator(array(__DIR__ . '/config')); $loader = new YamlFileLoader($locator); $collection = $loader->load('routes.yml'); $context = new RequestContext(); $matcher = new UrlMatcher($collection, $context); $dispatcher->addSubscriber(new RouterListener($matcher, $context)); }
/** * {@inheritdoc} */ public function addSubscriber(EventSubscriberInterface $subscriber) { $this->originalDispatcher->addSubscriber($subscriber); }