entityManager = $entityManager; } public function revokeTokens(String $userIdentifier): void { $accessTokens = $this->entityManager->getRepository(AccessToken::class)->findBy(['userIdentifier' => $userIdentifier, 'revoked' => false]); foreach($accessTokens as $accessToken) { $accessToken->revoke(); $this->entityManager->persist($accessToken); $this->entityManager->flush(); } } public function getUserFromToken(string $token) { $data = json_decode(base64_decode(strtr($token, '-_', '+/')), true); if (isset($data['user_identifier'])) { return $data['user_identifier']; } return null; } }