2021-10-15 00:03:41 +02:00
|
|
|
package it.cavallium.dbengine.lucene.collector;
|
|
|
|
|
2022-06-30 15:06:10 +02:00
|
|
|
import it.cavallium.dbengine.database.DiscardingCloseable;
|
2021-10-15 00:03:41 +02:00
|
|
|
import it.cavallium.dbengine.lucene.FullDocs;
|
|
|
|
import it.cavallium.dbengine.lucene.LLDoc;
|
2022-06-30 13:54:55 +02:00
|
|
|
import it.cavallium.dbengine.utils.SimpleResource;
|
2023-02-09 23:34:25 +01:00
|
|
|
import java.util.stream.Stream;
|
2021-10-15 00:03:41 +02:00
|
|
|
import org.apache.lucene.search.SortField;
|
|
|
|
import org.apache.lucene.search.TotalHits;
|
|
|
|
|
2022-06-30 15:06:10 +02:00
|
|
|
public class FullFieldDocs<T extends LLDoc> extends SimpleResource implements FullDocs<T>, DiscardingCloseable {
|
2021-10-15 00:03:41 +02:00
|
|
|
|
|
|
|
private final FullDocs<T> fullDocs;
|
|
|
|
private final SortField[] fields;
|
|
|
|
|
|
|
|
public FullFieldDocs(FullDocs<T> fullDocs, SortField[] fields) {
|
|
|
|
this.fullDocs = fullDocs;
|
|
|
|
this.fields = fields;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2023-02-09 23:34:25 +01:00
|
|
|
public Stream<T> iterate() {
|
2021-10-15 00:03:41 +02:00
|
|
|
return fullDocs.iterate();
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
2023-02-09 23:34:25 +01:00
|
|
|
public Stream<T> iterate(long skips) {
|
2021-10-15 00:03:41 +02:00
|
|
|
return fullDocs.iterate(skips);
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public TotalHits totalHits() {
|
|
|
|
return fullDocs.totalHits();
|
|
|
|
}
|
|
|
|
|
|
|
|
public SortField[] fields() {
|
|
|
|
return fields;
|
|
|
|
}
|
2021-12-18 21:01:14 +01:00
|
|
|
|
|
|
|
@Override
|
2022-06-30 13:54:55 +02:00
|
|
|
protected void onClose() {
|
2021-12-18 21:01:14 +01:00
|
|
|
fullDocs.close();
|
|
|
|
}
|
2021-10-15 00:03:41 +02:00
|
|
|
}
|