src/Subscriber/Media/ImagesetImageUploadSubscriber.php line 32

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Subscriber\Media;
  4. use App\Event\Content\ImagesetImageUploadSuccessEvent;
  5. use App\Service\System\JobService;
  6. use Psr\Log\LoggerInterface;
  7. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  8. class ImagesetImageUploadSubscriber implements EventSubscriberInterface
  9. {
  10.     private JobService $jobService;
  11.     private LoggerInterface $logger;
  12.     public function __construct(JobService $jobServiceLoggerInterface $logger)
  13.     {
  14.         $this->jobService $jobService;
  15.         $this->logger $logger;
  16.     }
  17.     public static function getSubscribedEvents(): array
  18.     {
  19.         return [
  20.             ImagesetImageUploadSuccessEvent::class => [
  21.                 ['onUploadQueueImagesetImageGeneratorJobs'0],
  22.             ],
  23.         ];
  24.     }
  25.     public function onUploadQueueImagesetImageGeneratorJobs(ImagesetImageUploadSuccessEvent $event)
  26.     {
  27.         try {
  28.             $this->jobService->createJobsToGenerateImagesetImages($event->getEntity()->getContentImageset()->getContent(), ['default'], $_ENV['APP_SYSTEM_JOBQUEUE']);
  29.         } catch (\Exception $e) {
  30.             $this->logger->critical($e->getMessage().PHP_EOL.$e->getTraceAsString());
  31.         }
  32.     }
  33. }