custom/plugins/cnh-product-exporter-main/src/Subscriber/ProductSubscriber.php line 32

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace CnhProductExporter\Subscriber;
  4. use CnhProductExporter\Services\API\TransferService;
  5. use Shopware\Core\Content\Product\ProductEvents;
  6. use Shopware\Core\Framework\DataAbstractionLayer\Event\EntityWrittenEvent;
  7. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  8. class ProductSubscriber implements EventSubscriberInterface
  9. {
  10.     /**
  11.      * @var TransferService
  12.      */
  13.     private TransferService $transferService;
  14.     public function __construct(TransferService $transferService)
  15.     {
  16.         $this->transferService $transferService;
  17.     }
  18.     public static function getSubscribedEvents(): array
  19.     {
  20.         return [
  21.             ProductEvents::PRODUCT_WRITTEN_EVENT => 'onProductWrite'
  22.         ];
  23.     }
  24.     public function onProductWrite(EntityWrittenEvent $event)
  25.     {
  26.         foreach ($event->getIds() as $productId) {
  27.             $this->transferService->transferProduct($productId);
  28.         }
  29.     }
  30. }