From 995d931f56d28573125a4183eec5191b2be7855e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABl=20Gangloff?= Date: Mon, 3 Mar 2025 15:29:21 +0100 Subject: [PATCH] refactor: use Dto class instead of array --- src/Controller/ConnectorController.php | 8 +------- src/Service/Connector/AbstractProvider.php | 5 ++--- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/src/Controller/ConnectorController.php b/src/Controller/ConnectorController.php index 16e2a69..9ec3c50 100644 --- a/src/Controller/ConnectorController.php +++ b/src/Controller/ConnectorController.php @@ -14,7 +14,6 @@ use Symfony\Component\DependencyInjection\ContainerInterface; use Symfony\Component\HttpKernel\Exception\BadRequestHttpException; use Symfony\Component\Routing\Attribute\Route; use Symfony\Component\Serializer\Exception\ExceptionInterface; -use Symfony\Component\Serializer\Normalizer\NormalizerInterface; class ConnectorController extends AbstractController { @@ -23,7 +22,6 @@ class ConnectorController extends AbstractController private readonly LoggerInterface $logger, #[Autowire(service: 'service_container')] private readonly ContainerInterface $locator, - private readonly NormalizerInterface $normalizer, ) { } @@ -76,11 +74,7 @@ class ConnectorController extends AbstractController /** @var AbstractProvider $providerClient */ $providerClient = $this->locator->get($provider->getConnectorProvider()); - $authData = $this->normalizer->normalize($providerClient->authenticate($connector->getAuthData()), 'json'); - if (!is_array($authData)) { - throw new BadRequestHttpException('Authentication data cannot be normalized.'); - } - $connector->setAuthData((array) $authData); + $connector->setAuthData($providerClient->authenticate($connector->getAuthData())); $this->logger->info('User {username} authentication data with the {provider} provider has been validated.', [ 'username' => $user->getUserIdentifier(), diff --git a/src/Service/Connector/AbstractProvider.php b/src/Service/Connector/AbstractProvider.php index 61db50c..28f067c 100644 --- a/src/Service/Connector/AbstractProvider.php +++ b/src/Service/Connector/AbstractProvider.php @@ -4,7 +4,6 @@ namespace App\Service\Connector; use App\Dto\Connector\DefaultProviderDto; use App\Entity\Domain; -use Exception; use Psr\Cache\CacheItemInterface; use Psr\Cache\CacheItemPoolInterface; use Symfony\Component\DependencyInjection\Attribute\Autoconfigure; @@ -127,12 +126,12 @@ abstract class AbstractProvider * @throws ExceptionInterface * @throws \Exception */ - public function authenticate(array $authData): DefaultProviderDto + public function authenticate(array $authData): array { $this->authData = $this->verifyAuthData($authData); $this->assertAuthentication(); - return $this->authData; + return $authData; } abstract protected function getCachedTldList(): CacheItemInterface;