InventoryIndexer.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  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\InventoryIndexer\Indexer;
  8. use Magento\Framework\Indexer\ActionInterface;
  9. use Magento\InventoryIndexer\Indexer\SourceItem\SourceItemIndexer;
  10. /**
  11. * Inventory indexer
  12. *
  13. * @api
  14. */
  15. class InventoryIndexer implements ActionInterface
  16. {
  17. /**
  18. * Indexer ID in configuration
  19. */
  20. const INDEXER_ID = 'inventory';
  21. /**
  22. * @var SourceItemIndexer
  23. */
  24. private $sourceItemIndexer;
  25. /**
  26. * @param SourceItemIndexer $sourceItemIndexer
  27. */
  28. public function __construct(
  29. SourceItemIndexer $sourceItemIndexer
  30. ) {
  31. $this->sourceItemIndexer = $sourceItemIndexer;
  32. }
  33. /**
  34. * @inheritdoc
  35. */
  36. public function executeFull()
  37. {
  38. $this->sourceItemIndexer->executeFull();
  39. }
  40. /**
  41. * @inheritdoc
  42. */
  43. public function executeRow($sourceItemId)
  44. {
  45. $this->sourceItemIndexer->executeList([$sourceItemId]);
  46. }
  47. /**
  48. * @inheritdoc
  49. */
  50. public function executeList(array $sourceItemIds)
  51. {
  52. $this->sourceItemIndexer->executeList($sourceItemIds);
  53. }
  54. }