/**
  * @param string $provider
  * @param OAuth2User $oauthUser
  * @return User
  */
 public function authenticate($provider, OAuth2User $oauthUser)
 {
     if ($user = $this->userManager->getByOAuthUser($provider, $oauthUser)) {
         return $this->saveLoggedUser($user);
     }
     if ($user = $this->userManager->create($provider, $oauthUser)) {
         return $this->saveLoggedUser($user);
     }
     $this->session->set('oauth2.data', array('provider' => $provider, 'user' => $oauthUser));
 }