From 3c280b7b800653b422ae5fb9049aa2eabaa4998f Mon Sep 17 00:00:00 2001 From: MariusArhaug Date: Thu, 23 May 2024 14:55:24 +0200 Subject: Update document frequency from hashmap to treemap --- .../vespasignificance/SignificanceModelGenerator.java | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'vespaclient-java/src') diff --git a/vespaclient-java/src/main/java/com/yahoo/vespasignificance/SignificanceModelGenerator.java b/vespaclient-java/src/main/java/com/yahoo/vespasignificance/SignificanceModelGenerator.java index e27158da3cb..7972a70cd10 100644 --- a/vespaclient-java/src/main/java/com/yahoo/vespasignificance/SignificanceModelGenerator.java +++ b/vespaclient-java/src/main/java/com/yahoo/vespasignificance/SignificanceModelGenerator.java @@ -38,7 +38,9 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.util.HashMap; +import java.util.Map; import java.util.Set; +import java.util.TreeMap; import java.util.stream.Collectors; import java.util.stream.StreamSupport; @@ -49,7 +51,8 @@ public class SignificanceModelGenerator { private final ClientParameters clientParameters; private final Tokenizer tokenizer; - private final HashMap documentFrequency = new HashMap<>(); + private final TreeMap documentFrequency = new TreeMap<>(); + private final Language language; private final ObjectMapper objectMapper; private final static JsonFactory parserFactory = new JsonFactory(); @@ -110,10 +113,9 @@ public class SignificanceModelGenerator { put(clientParameters.language, new DocumentFrequencyFile(DOC_FREQ_DESCRIPTION, pageCount, getFinalDocumentFrequency())); }}; - modelFile = new SignificanceModelFile(VERSION, ID, SIGNIFICANCE_DESCRIPTION, languages); + modelFile = new SignificanceModelFile(VERSION, ID, SIGNIFICANCE_DESCRIPTION + clientParameters.inputFile, languages); } try { - //objectMapper.setVisibility(PropertyAccessor.FIELD, JsonAutoDetect.Visibility.ANY); ObjectWriter writer = objectMapper.writerWithDefaultPrettyPrinter(); writer.writeValue(new File(clientParameters.outputFile), modelFile); } catch (IOException e) { @@ -139,9 +141,14 @@ public class SignificanceModelGenerator { } } - public HashMap getFinalDocumentFrequency() { + public Map getFinalDocumentFrequency() { return documentFrequency.entrySet().stream() .filter(k -> k.getValue() > 1) - .collect(HashMap::new, (m, v) -> m.put(v.getKey(), v.getValue()), HashMap::putAll); + .collect(Collectors.toMap( + Map.Entry::getKey, + Map.Entry::getValue, + (e1, e2) -> e1, + TreeMap::new + )); } } -- cgit v1.2.3