vendor/wns/security-compliance-suite/src/Diagnostics/Controller/ScheduledTaskCheckController.php line 28

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace WnsSecurityComplianceSuite\Diagnostics\Controller;
  4. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  5. use Symfony\Component\HttpFoundation\JsonResponse;
  6. use Symfony\Component\Routing\Annotation\Route;
  7. use WnsSecurityComplianceSuite\Diagnostics\Provider\ScheduledTaskStatusProvider;
  8. /**
  9. * @Route(defaults={"_routeScope"={"api"}})
  10. */
  11. class ScheduledTaskCheckController extends AbstractController
  12. {
  13. private ScheduledTaskStatusProvider $scheduledTaskStatusProvider;
  14. public function __construct(
  15. ScheduledTaskStatusProvider $scheduledTaskStatusProvider
  16. ) {
  17. $this->scheduledTaskStatusProvider = $scheduledTaskStatusProvider;
  18. }
  19. /**
  20. * @Route("/api/wscs/diagnostics/scheduled-task-check", name="api.wscs.diagnostics.scheduled-task-check", methods={"GET"})
  21. */
  22. public function scheduledTaskCheck(): JsonResponse
  23. {
  24. try {
  25. return new JsonResponse([
  26. 'success' => true,
  27. 'scheduledTasks' => $this->scheduledTaskStatusProvider->getScheduledTaskStatus(),
  28. ]);
  29. } catch (\Exception $e) {
  30. return new JsonResponse([
  31. 'success' => false,
  32. 'error' => $e->getMessage(),
  33. ]);
  34. }
  35. }
  36. }