* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Security\Core\Exception; use Symfony\Component\Security\Core\User\UserInterface; /** * AccountStatusException is the base class for authentication exceptions * caused by the user account status. * * @author Fabien Potencier * @author Alexander */ abstract class AccountStatusException extends AuthenticationException { private $user; /** * Get the user. * * @return UserInterface|null */ public function getUser() { return $this->user; } public function setUser(UserInterface $user) { $this->user = $user; } /** * {@inheritdoc} */ public function __serialize(): array { return [$this->user, parent::__serialize()]; } /** * {@inheritdoc} */ public function __unserialize(array $data): void { [$this->user, $parentData] = $data; $parentData = \is_array($parentData) ? $parentData : unserialize($parentData); parent::__unserialize($parentData); } }