コード例 #1
0
 /**
  * Load messages from flash-bag cookie into flash-bag service.
  *
  * @param GetResponseEvent $event
  */
 public function onKernelRequest(GetResponseEvent $event)
 {
     if (HttpKernel::MASTER_REQUEST !== $event->getRequestType() || $event->getRequest()->isXmlHttpRequest()) {
         return;
     }
     $messages = $this->flashBagCookie->getValue();
     if (!is_array($messages) || !count($messages)) {
         return;
     }
     $this->flashBagService->initialize($messages);
 }
コード例 #2
0
 /**
  * {@inheritdoc}
  */
 public function handle(GetResponseEvent $event)
 {
     $cookieData = $this->cookie->getValue();
     if (!$this->authCookieService->validateCookie($cookieData)) {
         $this->tokenStorage->setToken(null);
         return false;
     }
     $token = new SessionlessToken($cookieData['username'], $cookieData['expiration'], $event->getRequest()->getClientIp(), $cookieData['signature']);
     try {
         $regeneratedToken = $this->authenticationManager->authenticate($token);
         $this->tokenStorage->setToken($regeneratedToken);
     } catch (AuthenticationException $e) {
         $this->cookie->setClear(true);
         $this->tokenStorage->setToken(null);
         return false;
     }
     return $regeneratedToken;
 }