UpdateSourceItemsUponConfigChangeObserver.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. declare(strict_types=1);
  7. namespace Magento\InventoryCatalogAdminUi\Observer;
  8. use Magento\Framework\Event\Observer as EventObserver;
  9. use Magento\Framework\Event\ObserverInterface;
  10. use Magento\InventoryIndexer\Indexer\InventoryIndexer;
  11. use Magento\Framework\Indexer\IndexerRegistry;
  12. /**
  13. * Invalidate inventory index on global inventory configuration changes
  14. */
  15. class UpdateSourceItemsUponConfigChangeObserver implements ObserverInterface
  16. {
  17. /**
  18. * @var IndexerRegistry
  19. */
  20. private $indexerRegistry;
  21. /**
  22. * @param IndexerRegistry $indexerRegistry
  23. */
  24. public function __construct(IndexerRegistry $indexerRegistry)
  25. {
  26. $this->indexerRegistry = $indexerRegistry;
  27. }
  28. /**
  29. * @param EventObserver $observer
  30. * @SuppressWarnings(PHPMD.UnusedFormalParameter)
  31. */
  32. public function execute(EventObserver $observer)
  33. {
  34. $indexer = $this->indexerRegistry->get(InventoryIndexer::INDEXER_ID);
  35. if ($indexer->isValid()) {
  36. $indexer->invalidate();
  37. }
  38. }
  39. }