Easy_solution/src/Service/AccessTokenService.php

29 lines
758 B
PHP

<?php
namespace App\Service;
use Doctrine\ORM\EntityManagerInterface;
use League\Bundle\OAuth2ServerBundle\Model\AccessToken;
class AccessTokenService
{
private EntityManagerInterface $entityManager;
public function __construct(EntityManagerInterface $entityManager)
{
$this->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();
}
}
}