diff options
author | Jon Bratseth <bratseth@oath.com> | 2018-05-25 11:57:04 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@oath.com> | 2018-05-25 11:57:04 +0200 |
commit | f0866e796d96468b0063712ca6d194e5b0d18aca (patch) | |
tree | 151fe8c80fd7463f4fac6e53065ead5675c334db /container-search/src/main/java/com/yahoo/prelude/searcher | |
parent | dc8ab0b7dd552b7587d37043b9d3ffa3e9b72625 (diff) |
Iterate the old way
Diffstat (limited to 'container-search/src/main/java/com/yahoo/prelude/searcher')
-rw-r--r-- | container-search/src/main/java/com/yahoo/prelude/searcher/JuniperSearcher.java | 8 | ||||
-rw-r--r-- | container-search/src/main/java/com/yahoo/prelude/searcher/QuotingSearcher.java | 17 |
2 files changed, 25 insertions, 0 deletions
diff --git a/container-search/src/main/java/com/yahoo/prelude/searcher/JuniperSearcher.java b/container-search/src/main/java/com/yahoo/prelude/searcher/JuniperSearcher.java index 5c56379efc0..350d2094834 100644 --- a/container-search/src/main/java/com/yahoo/prelude/searcher/JuniperSearcher.java +++ b/container-search/src/main/java/com/yahoo/prelude/searcher/JuniperSearcher.java @@ -106,6 +106,13 @@ public class JuniperSearcher extends Searcher { Object searchDefinitionField = hit.getField(MAGIC_FIELD); if (searchDefinitionField == null) continue; + // TODO: Loop using callback (see below) + for (String fieldName : hit.fields().keySet()) { + Index index = indexFacts.getIndex(fieldName, searchDefinitionField.toString()); + if (index.getDynamicSummary() || index.getHighlightSummary()) + insertTags(hit.buildHitField(fieldName, true, true), bolding, index.getDynamicSummary()); + } + /* for (Index index : indexFacts.getIndexes(searchDefinitionField.toString())) { if (index.getDynamicSummary() || index.getHighlightSummary()) { HitField fieldValue = hit.buildHitField(index.getName(), true, true); @@ -113,6 +120,7 @@ public class JuniperSearcher extends Searcher { insertTags(fieldValue, bolding, index.getDynamicSummary()); } } + */ } } diff --git a/container-search/src/main/java/com/yahoo/prelude/searcher/QuotingSearcher.java b/container-search/src/main/java/com/yahoo/prelude/searcher/QuotingSearcher.java index 5dcc533fb1f..3f7b7c52f82 100644 --- a/container-search/src/main/java/com/yahoo/prelude/searcher/QuotingSearcher.java +++ b/container-search/src/main/java/com/yahoo/prelude/searcher/QuotingSearcher.java @@ -113,6 +113,22 @@ public class QuotingSearcher extends Searcher { } private void quoteFields(FastHit hit, QuoteTable translations) { + // TODO: Iterate using callback (see below) + for (Iterator<?> i = ((Set<?>) hit.fields().keySet()).iterator(); i.hasNext(); ) { + String propertyName = (String) i.next(); + Object entry = hit.getField(propertyName); + if (entry == null) { + continue; + } + Class<? extends Object> propertyType = entry.getClass(); + if (propertyType.equals(HitField.class)) { + quoteField((HitField) entry, translations); + } else if (propertyType.equals(String.class)) { + quoteField(hit, propertyName, (String)entry, translations); + } + } + + /* hit.forEachField((fieldName, fieldValue) -> { if (fieldValue != null) { Class<?> fieldType = fieldValue.getClass(); @@ -122,6 +138,7 @@ public class QuotingSearcher extends Searcher { quoteField(hit, fieldName, (String) fieldValue, translations); } }); + */ } private void quoteField(Hit hit, String fieldname, String toQuote, QuoteTable translations) { |