/** * Handle logout process * * @param GetResponseEvent $event */ public function onKernelRequest(GetResponseEvent $event) { if ($this->logout->matches($event->getRequest())) { $this->authentication->clearIdentity(); if ($this->target) { // Target can be null for user defined controller behaviour $event->setResponse(new RedirectResponse((string) $this->target)); } } }
/** * Check if request need to be processed * * @param Request $request * @return bool */ protected function isRequestNeedProcessing(Request $request) { if (!$this->pattern->matches($request)) { return false; } foreach ($this->whitelist as $whitelist) { if ($whitelist->matches($request)) { return false; } } return true; }