src/Controller/Api/Franchise/FranchiseByUrlController.php line 13

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Controller\Api\Franchise;
  4. use App\Exception\Global\InvalidParameterException;
  5. use App\Provider\Franchise\FranchiseProvider;
  6. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  7. use Symfony\Component\HttpFoundation\Request;
  8. use Symfony\Component\HttpFoundation\Response;
  9. class FranchiseByUrlController extends AbstractController
  10. {
  11.     public function __construct(
  12.         private FranchiseProvider $franchiseProvider,
  13.     ) {
  14.     }
  15.     public function __invoke(Request $request): Response
  16.     {
  17.         $url $request->get('url');
  18.         if (null === $url || '' === $url) {
  19.             throw new InvalidParameterException();
  20.         }
  21.         return new Response($this->franchiseProvider->provide($url));
  22.     }
  23. }