<?php
declare(strict_types=1);
namespace Slivki\Controller\MobileApi\V2\WorkExample;
use OpenApi\Annotations as OA;
use Nelmio\ApiDocBundle\Annotation\Model;
use Slivki\Message\Query\WorkExample\GetWorkExamplesSettingsQuery;
use Slivki\Messenger\Query\QueryBusInterface;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\Routing\Annotation\Route;
use Slivki\Response\WorkExample\GetWorkExamplesSettingsResponse;
final class GetWorkExamplesSettingsAction
{
public QueryBusInterface $queryBus;
public function __construct(QueryBusInterface $queryBus)
{
$this->queryBus = $queryBus;
}
/**
* @Route("/mobile/api/v2/work_examples/settings", methods={"GET"}, name="mobile_api_v2_work_examples_settings_get"),
* @OA\Tag(name="Work examples"),
* @OA\Response(
* response=200,
* description="",
* @Model(type=GetWorkExamplesSettingsResponse::class),
* ),
*/
public function __invoke(): JsonResponse
{
return new JsonResponse($this->queryBus->handle(new GetWorkExamplesSettingsQuery()));
}
}