Пример #1
0
 /**
  * {@inheritdoc}
  */
 public function process(ContextInterface $context)
 {
     /** @var GetListContext $context */
     if ($context->hasResult()) {
         // result data are already retrieved
         return;
     }
     $query = $context->getQuery();
     if (!$query instanceof SearchQuery) {
         // unsupported query
         return;
     }
     $searchResult = $this->searchIndex->query($query);
     $context->setResult($searchResult->toArray());
     // set callback to be used to calculate total count
     $context->setTotalCountCallback(function () use($searchResult) {
         return $searchResult->getRecordsCount();
     });
 }