| Current Path : /home/rtorresani/www/vendor/magento/module-inventory-indexer/Indexer/Source/ |
| Current File : //home/rtorresani/www/vendor/magento/module-inventory-indexer/Indexer/Source/SourceIndexer.php |
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
declare(strict_types=1);
namespace Magento\InventoryIndexer\Indexer\Source;
use Magento\InventoryIndexer\Indexer\Stock\StockIndexer;
/**
* Source indexer
*
* @api
*/
class SourceIndexer
{
/**
* @var GetAssignedStockIds
*/
private $getAssignedStockIds;
/**
* @var StockIndexer
*/
private $stockIndexer;
/**
* @param GetAssignedStockIds $getAssignedStockIds
* @param StockIndexer $stockIndexer
*/
public function __construct(
GetAssignedStockIds $getAssignedStockIds,
StockIndexer $stockIndexer
) {
$this->getAssignedStockIds = $getAssignedStockIds;
$this->stockIndexer = $stockIndexer;
}
/**
* @return void
*/
public function executeFull()
{
$this->stockIndexer->executeFull();
}
/**
* @param string $sourceCode
* @return void
*/
public function executeRow(string $sourceCode)
{
$this->executeList([$sourceCode]);
}
/**
* @param array $sourceCodes
*/
public function executeList(array $sourceCodes)
{
$stockIds = $this->getAssignedStockIds->execute($sourceCodes);
$this->stockIndexer->executeList($stockIds);
}
}