Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
OperationRepository.php
Go to the documentation of this file.
1 <?php
7 declare(strict_types=1);
8 
10 
13 use Magento\AsynchronousOperations\Api\Data\OperationSearchResultsInterfaceFactory as SearchResultFactory;
14 use Magento\AsynchronousOperations\Api\Data\OperationExtensionInterfaceFactory;
15 use Magento\AsynchronousOperations\Model\ResourceModel\Operation\CollectionFactory;
19 
24 {
28  private $entityManager;
29 
33  private $collectionFactory;
34 
38  private $searchResultFactory;
39 
43  private $joinProcessor;
44 
48  private $operationExtensionFactory;
49 
53  private $collectionProcessor;
54 
58  private $logger;
59 
71  public function __construct(
72  EntityManager $entityManager,
73  CollectionFactory $collectionFactory,
74  SearchResultFactory $searchResultFactory,
75  JoinProcessorInterface $joinProcessor,
76  OperationExtensionInterfaceFactory $operationExtension,
77  CollectionProcessorInterface $collectionProcessor,
78  \Psr\Log\LoggerInterface $logger
79  ) {
80  $this->entityManager = $entityManager;
81  $this->collectionFactory = $collectionFactory;
82  $this->searchResultFactory = $searchResultFactory;
83  $this->joinProcessor = $joinProcessor;
84  $this->operationExtensionFactory = $operationExtension;
85  $this->collectionProcessor = $collectionProcessor;
86  $this->logger = $logger;
87  $this->collectionProcessor = $collectionProcessor;
88  }
89 
93  public function getList(\Magento\Framework\Api\SearchCriteriaInterface $searchCriteria)
94  {
96  $searchResult = $this->searchResultFactory->create();
97 
99  $collection = $this->collectionFactory->create();
100  $this->joinProcessor->process($collection, \Magento\AsynchronousOperations\Api\Data\OperationInterface::class);
101  $this->collectionProcessor->process($searchCriteria, $collection);
102  $searchResult->setSearchCriteria($searchCriteria);
103  $searchResult->setTotalCount($collection->getSize());
104  $searchResult->setItems($collection->getItems());
105 
106  return $searchResult;
107  }
108 }
getList(\Magento\Framework\Api\SearchCriteriaInterface $searchCriteria)
$logger
$searchCriteria
__construct(EntityManager $entityManager, CollectionFactory $collectionFactory, SearchResultFactory $searchResultFactory, JoinProcessorInterface $joinProcessor, OperationExtensionInterfaceFactory $operationExtension, CollectionProcessorInterface $collectionProcessor, \Psr\Log\LoggerInterface $logger)