diff options
author | Jon Bratseth <bratseth@oath.com> | 2018-05-02 15:06:14 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@oath.com> | 2018-05-02 15:06:14 +0200 |
commit | 1bff8727f27b23eab841d1b6de7124f8b3342d60 (patch) | |
tree | fba80a897dabbc96e7b777fe2e9a43017fd582c4 /container-search/src | |
parent | 5edc036ae21e6b81a073cd9c53a8a7f052ee5b69 (diff) |
Deprecate Hit.getTypeString()
Diffstat (limited to 'container-search/src')
6 files changed, 19 insertions, 20 deletions
diff --git a/container-search/src/main/java/com/yahoo/prelude/templates/DefaultTemplateSet.java b/container-search/src/main/java/com/yahoo/prelude/templates/DefaultTemplateSet.java index f06b97b1a5a..e8e7f6f2f93 100644 --- a/container-search/src/main/java/com/yahoo/prelude/templates/DefaultTemplateSet.java +++ b/container-search/src/main/java/com/yahoo/prelude/templates/DefaultTemplateSet.java @@ -19,6 +19,7 @@ import java.io.IOException; import java.io.Writer; import java.util.Iterator; import java.util.Map; +import java.util.stream.Collectors; /** * <p>A template set which provides XML rendering of results and hits.</p> @@ -175,8 +176,8 @@ public class DefaultTemplateSet extends UserTemplate<XMLWriter> { /** * Writes a hit's default attributes like 'type', 'source', 'relevancy'. */ - protected void renderHitAttributes(Hit hit,XMLWriter writer) throws IOException { - writer.attribute(TYPE,hit.getTypeString()); + protected void renderHitAttributes(Hit hit, XMLWriter writer) throws IOException { + writer.attribute(TYPE, hit.types().stream().collect(Collectors.joining(" "))); if (hit.getRelevance() != null) { writer.attribute(RELEVANCY, hit.getRelevance().toString()); } diff --git a/container-search/src/main/java/com/yahoo/prelude/templates/TiledTemplateSet.java b/container-search/src/main/java/com/yahoo/prelude/templates/TiledTemplateSet.java index 2d04097cf9b..6bba0f620ee 100644 --- a/container-search/src/main/java/com/yahoo/prelude/templates/TiledTemplateSet.java +++ b/container-search/src/main/java/com/yahoo/prelude/templates/TiledTemplateSet.java @@ -20,6 +20,7 @@ import java.io.IOException; import java.io.Writer; import java.util.Iterator; import java.util.Map; +import java.util.stream.Collectors; /** * A template set which implements the 'tiled' format. @@ -147,13 +148,13 @@ public class TiledTemplateSet extends DefaultTemplateSet { @Override protected void renderHitAttributes(Hit hit, XMLWriter writer) throws IOException { if (hit instanceof HitGroup) { - String type = hit.getTypeString(); // TODO: This logic is somewhat crazy - if("group".equals(type)) + String type = hit.types().stream().collect(Collectors.joining(" ")); + if ("group".equals(type)) type = String.valueOf(hit.getField("type")); writer.attribute("type", type); } else { - writer.attribute("type", hit.getTypeString()); + writer.attribute("type", hit.types().stream().collect(Collectors.joining(" "))); } if (hit.getRelevance() != null) diff --git a/container-search/src/main/java/com/yahoo/search/rendering/DefaultRenderer.java b/container-search/src/main/java/com/yahoo/search/rendering/DefaultRenderer.java index b49ff0f7482..f0c7b1a183f 100644 --- a/container-search/src/main/java/com/yahoo/search/rendering/DefaultRenderer.java +++ b/container-search/src/main/java/com/yahoo/search/rendering/DefaultRenderer.java @@ -35,6 +35,7 @@ import java.nio.charset.CharsetEncoder; import java.util.Iterator; import java.util.Map; import java.util.concurrent.Executor; +import java.util.stream.Collectors; // TODO: Rename to XmlRenderer and make this a deprecated empty subclass. @@ -250,10 +251,9 @@ public final class DefaultRenderer extends AsynchronousSectionedRenderer<Result> } private void renderHitAttributes(XMLWriter writer, Hit hit) { - writer.attribute(TYPE, hit.getTypeString()); - if (hit.getRelevance() != null) { + writer.attribute(TYPE, hit.types().stream().collect(Collectors.joining(" "))); + if (hit.getRelevance() != null) writer.attribute(RELEVANCY, hit.getRelevance().toString()); -} writer.attribute(SOURCE, hit.getSource()); } diff --git a/container-search/src/main/java/com/yahoo/search/rendering/SyncDefaultRenderer.java b/container-search/src/main/java/com/yahoo/search/rendering/SyncDefaultRenderer.java index a4fe077fce2..dc72061e224 100644 --- a/container-search/src/main/java/com/yahoo/search/rendering/SyncDefaultRenderer.java +++ b/container-search/src/main/java/com/yahoo/search/rendering/SyncDefaultRenderer.java @@ -32,6 +32,7 @@ import java.io.Writer; import java.util.Iterator; import java.util.Map; import java.util.logging.Logger; +import java.util.stream.Collectors; /** * @author tonytv @@ -337,7 +338,7 @@ public final class SyncDefaultRenderer extends Renderer { } private void renderHitAttributes(XMLWriter writer, Hit hit) { - writer.attribute(TYPE, hit.getTypeString()); + writer.attribute(TYPE, hit.types().stream().collect(Collectors.joining(" "))); if (hit.getRelevance() != null) { writer.attribute(RELEVANCY, hit.getRelevance().toString()); } diff --git a/container-search/src/main/java/com/yahoo/search/result/Hit.java b/container-search/src/main/java/com/yahoo/search/result/Hit.java index cb24418b50c..d90cca3406b 100644 --- a/container-search/src/main/java/com/yahoo/search/result/Hit.java +++ b/container-search/src/main/java/com/yahoo/search/result/Hit.java @@ -21,6 +21,7 @@ import java.util.LinkedHashSet; import java.util.Map; import java.util.Set; import java.util.TreeMap; +import java.util.stream.Collectors; /** * <p>A search hit. The identifier of the hit is the uri @@ -490,16 +491,11 @@ public class Hit extends ListenableFreezableClass implements Data, Comparable<Hi * @return all the types of this hit on the form "type1 type2 type3" * (in no particular order). An empty string (never null) if * no types are added + * @deprecated do not use */ + @Deprecated public String getTypeString() { - StringBuilder buffer = new StringBuilder(types.size() * 7); - - for (Iterator<String> i = types.iterator(); i.hasNext();) { - buffer.append(i.next()); - if (i.hasNext()) - buffer.append(" "); - } - return buffer.toString(); + return types().stream().collect(Collectors.joining(" ")); } /** @@ -578,11 +574,11 @@ public class Hit extends ListenableFreezableClass implements Data, Comparable<Hi } /** @deprecated do not use */ - @Deprecated + @Deprecated // TODO: Remove on Vespa 7 public int getSourceNumber() { return sourceNumber; } /** @deprecated do not use */ - @Deprecated + @Deprecated // TODO: Remove on Vespa 7 public void setSourceNumber(int number) { this.sourceNumber = number; } /** Returns the query which produced this hit, or null if not known */ diff --git a/container-search/src/test/java/com/yahoo/search/federation/vespa/test/ResultBuilderTestCase.java b/container-search/src/test/java/com/yahoo/search/federation/vespa/test/ResultBuilderTestCase.java index 494e3f06a61..50186e03ae8 100644 --- a/container-search/src/test/java/com/yahoo/search/federation/vespa/test/ResultBuilderTestCase.java +++ b/container-search/src/test/java/com/yahoo/search/federation/vespa/test/ResultBuilderTestCase.java @@ -75,7 +75,7 @@ public class ResultBuilderTestCase { assertEquals("reward_for_thumb", g1.get(1).getField("id").toString()); assertEquals(10, g2.size()); HitGroup g3 = (HitGroup) g2.get(3); - assertEquals("badge", g3.getTypeString()); + assertEquals("badge", g3.types().iterator().next()); assertEquals(2, g3.size()); assertEquals("badge/Topic Explorer 5", g3.get(0).getField("name").toString()); } |