Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
GetList.php
Go to the documentation of this file.
1 <?php
6 declare(strict_types=1);
7 
9 
13 use Magento\Inventory\Model\ResourceModel\SourceItem\CollectionFactory;
15 use Magento\InventoryApi\Api\Data\SourceItemSearchResultsInterfaceFactory;
16 
20 class GetList implements GetListInterface
21 {
25  private $collectionProcessor;
26 
30  private $sourceItemCollectionFactory;
31 
35  private $sourceItemSearchResultsFactory;
36 
42  public function __construct(
43  CollectionProcessorInterface $collectionProcessor,
44  CollectionFactory $sourceItemCollectionFactory,
45  SourceItemSearchResultsInterfaceFactory $sourceItemSearchResultsFactory
46  ) {
47  $this->collectionProcessor = $collectionProcessor;
48  $this->sourceItemCollectionFactory = $sourceItemCollectionFactory;
49  $this->sourceItemSearchResultsFactory = $sourceItemSearchResultsFactory;
50  }
51 
56  {
58  $collection = $this->sourceItemCollectionFactory->create();
59  $this->collectionProcessor->process($searchCriteria, $collection);
60 
62  $searchResult = $this->sourceItemSearchResultsFactory->create();
63  $searchResult->setItems($collection->getItems());
64  $searchResult->setTotalCount($collection->getSize());
65  $searchResult->setSearchCriteria($searchCriteria);
66  return $searchResult;
67  }
68 }
__construct(CollectionProcessorInterface $collectionProcessor, CollectionFactory $sourceItemCollectionFactory, SourceItemSearchResultsInterfaceFactory $sourceItemSearchResultsFactory)
Definition: GetList.php:42
$searchCriteria
execute(SearchCriteriaInterface $searchCriteria)