/**
  * Returns scan results iterator.
  *
  * @param Repository $repository
  * @param int        $chunkSize
  *
  * @return RawResultIterator
  */
 protected function getResults(Repository $repository, $chunkSize)
 {
     $search = $repository->createSearch();
     $search->setScroll()->setSize($chunkSize);
     $search->addQuery(new MatchAllQuery());
     return $repository->execute($search, Repository::RESULTS_RAW_ITERATOR);
 }
示例#2
0
 /**
  * Tests prefix filter and ids filter without cache.
  */
 public function testPrefixFilterAndIdsFilterWithoutCache()
 {
     $search = $this->repository->createSearch();
     $search->addFilter(new PrefixFilter('title', 'foo'));
     $search->addFilter(new IdsFilter(['1', '2']), 'must');
     $search->setBoolFilterParameters(['_cache' => false]);
     $expected = [$this->getProductsArray()[0]];
     $this->assertEquals($expected, $this->getSearchResultsArray($search));
 }
 /**
  * Create and execute highlighted search.
  *
  * @param Repository $repository
  * @param TermQuery  $termQuery
  * @param Highlight  $highlight
  * @param string     $resultsType
  *
  * @return array|Product[]
  */
 private function executeHighlight($repository, $termQuery, $highlight, $resultsType = Repository::RESULTS_RAW)
 {
     $search = $repository->createSearch()->addQuery($termQuery)->setHighlight($highlight);
     $results = $repository->execute($search, $resultsType);
     return $results;
 }