try { $this->signatureHasher->
acceptSignatureHash($userIdentifier,
$expires,
$hash);
$user =
$this->userProvider->
loadUserByIdentifier($userIdentifier);
$this->signatureHasher->
verifySignatureHash($user,
$expires,
$hash);
} catch (UserNotFoundException
$e) { throw new InvalidLoginLinkException('User not found.', 0,
$e);
} catch (ExpiredSignatureException
$e) { throw new ExpiredLoginLinkException(ucfirst(str_ireplace('signature', 'login link',
$e->
getMessage())), 0,
$e);
} catch (InvalidSignatureException
$e) { throw new InvalidLoginLinkException(ucfirst(str_ireplace('signature', 'login link',
$e->
getMessage())), 0,
$e);
} return $user;
}}