From 3e36bfe732f4b00b4eacf3c895693ce5a2d6a800 Mon Sep 17 00:00:00 2001 From: Andrea Cavalli Date: Fri, 12 Feb 2021 21:12:10 +0100 Subject: [PATCH] Update LuceneIndex.java and SearchResultItem.java --- .../java/it/cavallium/dbengine/client/LuceneIndex.java | 2 +- .../it/cavallium/dbengine/client/SearchResultItem.java | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main/java/it/cavallium/dbengine/client/LuceneIndex.java b/src/main/java/it/cavallium/dbengine/client/LuceneIndex.java index af79a35..0ef7586 100644 --- a/src/main/java/it/cavallium/dbengine/client/LuceneIndex.java +++ b/src/main/java/it/cavallium/dbengine/client/LuceneIndex.java @@ -94,7 +94,7 @@ public class LuceneIndex implements LLSnapshottable { ValueGetter valueGetter) { var mappedKeys = llSearchResult .results() - .map(flux -> flux.flatMap(item -> { + .map(flux -> flux.flatMapSequential(item -> { var key = indicizer.getKey(item.getKey()); return valueGetter.get(key).map(value -> new SearchResultItem<>(key, value, item.getScore())); })); diff --git a/src/main/java/it/cavallium/dbengine/client/SearchResultItem.java b/src/main/java/it/cavallium/dbengine/client/SearchResultItem.java index c7fa0c5..e07d6d3 100644 --- a/src/main/java/it/cavallium/dbengine/client/SearchResultItem.java +++ b/src/main/java/it/cavallium/dbengine/client/SearchResultItem.java @@ -2,8 +2,9 @@ package it.cavallium.dbengine.client; import java.util.Objects; import java.util.StringJoiner; +import org.jetbrains.annotations.NotNull; -public class SearchResultItem { +public class SearchResultItem implements Comparable> { private final T key; private final U value; private final float score; @@ -51,4 +52,9 @@ public class SearchResultItem { .add("score=" + score) .toString(); } + + @Override + public int compareTo(@NotNull SearchResultItem o) { + return Float.compare(o.score, this.score); + } }