aboutsummaryrefslogtreecommitdiffstats
path: root/sample-apps/basic-search/src/main/java/com/yahoo/example/ExampleSearcher.java
diff options
context:
space:
mode:
Diffstat (limited to 'sample-apps/basic-search/src/main/java/com/yahoo/example/ExampleSearcher.java')
-rw-r--r--sample-apps/basic-search/src/main/java/com/yahoo/example/ExampleSearcher.java36
1 files changed, 36 insertions, 0 deletions
diff --git a/sample-apps/basic-search/src/main/java/com/yahoo/example/ExampleSearcher.java b/sample-apps/basic-search/src/main/java/com/yahoo/example/ExampleSearcher.java
new file mode 100644
index 00000000000..76b07a46b93
--- /dev/null
+++ b/sample-apps/basic-search/src/main/java/com/yahoo/example/ExampleSearcher.java
@@ -0,0 +1,36 @@
+package com.yahoo.example;
+
+import com.yahoo.search.Query;
+import com.yahoo.search.Result;
+import com.yahoo.search.Searcher;
+import com.yahoo.search.result.Hit;
+import com.yahoo.search.searchchain.Execution;
+
+/**
+ * A searcher adding a new hit.
+ *
+ * @author Joe Developer
+ */
+public class ExampleSearcher extends Searcher {
+
+ public static final String hitId = "ExampleHit";
+ private final String message;
+
+ public ExampleSearcher(MessageConfig config) {
+ message = config.message();
+ }
+
+ public Result search(Query query, Execution execution) {
+ // Pass on to the next searcher to execute the query
+ Result result = execution.search(query);
+
+ // Add an extra hit to the result
+ Hit hit = new Hit(hitId);
+ hit.setField("message", message);
+ result.hits().add(hit);
+
+ // Return it to the upstream searcher, or to rendering
+ return result;
+ }
+
+}