/** * Check event status. * * - HttpKernelInterface::MASTER_REQUEST === 1 * - HttpKernelInterface::SUB_REQUEST === 2 * * @param KernelEvent $event The KernelEvent * * @return void * * @api */ public function onCoreController(KernelEvent $event) { if (HttpKernelInterface::MASTER_REQUEST === $event->getRequestType()) { $this->controller = $event->getController(); if (isset($this->controller[0])) { $this->controller = $this->controller[0]; if (method_exists($this->controller, 'preExecute')) { $this->controller->preExecute(); } } } }
/** * @param KernelEvent $event * @return bool */ protected function isActive(KernelEvent $event) { $request = $event->getRequest(); if ($this->active === true) { return true; } $this->active = false; if ($event instanceof FilterControllerEvent) { if (!$event->isMasterRequest()) { return false; } if ($event->getController()[0] instanceof RestApiControllerInterface) { return $this->active = true; } } foreach ($this->whitelist as $whitelist) { if (preg_match($whitelist, $request->getPathInfo())) { return $this->active = true; } } foreach ($this->blacklist as $blacklist) { if (preg_match($blacklist, $request->getPathInfo())) { $this->active = false; } } return $this->active; }