10 use Magento\Catalog\Model\ResourceModel\Product\CollectionFactory;
28 private $collectionProcessor;
33 private $collectionFactory;
38 private $productRenderCollectorComposite;
43 private $searchResultFactory;
48 private $productRenderFactory;
53 private $productAttributes;
58 private $collectionModifier;
72 CollectionFactory $collectionFactory,
75 ProductRenderSearchResultsFactory $searchResultFactory,
76 ProductRenderFactory $productRenderDtoFactory,
79 array $productAttributes
81 $this->collectionProcessor = $collectionProcessor;
82 $this->collectionFactory = $collectionFactory;
83 $this->productRenderCollectorComposite = $productRenderCollectorComposite;
84 $this->searchResultFactory = $searchResultFactory;
85 $this->productRenderFactory = $productRenderDtoFactory;
86 $this->productAttributes = array_merge($productAttributes,
$config->getProductAttributes());
87 $this->collectionModifier = $collectionModifier;
107 $productRenderInfo = $this->productRenderFactory->create();
108 $productRenderInfo->setStoreId(
$storeId);
109 $productRenderInfo->setCurrencyCode($currencyCode);
110 $this->productRenderCollectorComposite->collect(
$item, $productRenderInfo);
114 $searchResult = $this->searchResultFactory->create();
115 $searchResult->setItems(
$items);
116 $searchResult->setTotalCount(count(
$items));
119 return $searchResult;
getList(\Magento\Framework\Api\SearchCriteriaInterface $searchCriteria, $storeId, $currencyCode)
__construct(CollectionFactory $collectionFactory, CollectionProcessorInterface $collectionProcessor, ProductRenderCollectorComposite $productRenderCollectorComposite, ProductRenderSearchResultsFactory $searchResultFactory, ProductRenderFactory $productRenderDtoFactory, \Magento\Catalog\Model\Config $config, CollectionModifier $collectionModifier, array $productAttributes)