2021-07-04 01:34:17 +02:00
|
|
|
package it.cavallium.dbengine.lucene.searcher;
|
|
|
|
|
2021-07-06 00:30:14 +02:00
|
|
|
import it.cavallium.dbengine.client.query.current.data.QueryParams;
|
2021-07-05 12:05:45 +02:00
|
|
|
import it.cavallium.dbengine.database.LLKeyScore;
|
|
|
|
import it.cavallium.dbengine.lucene.LuceneUtils;
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.List;
|
2021-07-04 01:34:17 +02:00
|
|
|
import org.apache.lucene.search.IndexSearcher;
|
|
|
|
import org.apache.lucene.search.Query;
|
2021-07-05 12:05:45 +02:00
|
|
|
import org.apache.lucene.search.ScoreDoc;
|
2021-07-04 01:34:17 +02:00
|
|
|
import org.apache.lucene.search.ScoreMode;
|
|
|
|
import org.apache.lucene.search.Sort;
|
|
|
|
import org.jetbrains.annotations.Nullable;
|
|
|
|
import org.warp.commonutils.log.Logger;
|
|
|
|
import org.warp.commonutils.log.LoggerFactory;
|
2021-07-05 12:05:45 +02:00
|
|
|
import reactor.core.publisher.Flux;
|
2021-07-04 01:34:17 +02:00
|
|
|
import reactor.core.publisher.Mono;
|
|
|
|
import reactor.core.scheduler.Scheduler;
|
|
|
|
|
2021-07-06 00:30:14 +02:00
|
|
|
public interface LuceneMultiSearcher {
|
2021-07-04 01:34:17 +02:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Do a lucene query, receiving the single results using a consumer
|
2021-07-06 00:30:14 +02:00
|
|
|
* @param queryParams the query parameters
|
2021-07-04 01:34:17 +02:00
|
|
|
*/
|
2021-07-06 01:30:37 +02:00
|
|
|
Mono<LuceneShardSearcher> createShardSearcher(LocalQueryParams queryParams);
|
2021-07-05 12:05:45 +02:00
|
|
|
|
2021-07-04 01:34:17 +02:00
|
|
|
}
|