summaryrefslogtreecommitdiffstats
path: root/container-search/src/main/java/com/yahoo/search/querytransform
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@verizonmedia.com>2019-04-09 13:44:59 +0200
committerJon Bratseth <bratseth@verizonmedia.com>2019-04-09 13:44:59 +0200
commitd623049d2ba3b12c90a1592580e4b4f238f14731 (patch)
tree32db702508cf315d010eb92c695dda8fffcb9a0c /container-search/src/main/java/com/yahoo/search/querytransform
parentb8f02d9ef033d418764d1af6ebfd773fb2673086 (diff)
Make QueryTree.and public
- Make QueryTree.and public as it handles more cases than most alternatives - Implement QueryTreeUtils methodas by calling QueryTree.and - Deprecate QueryTreeUtils
Diffstat (limited to 'container-search/src/main/java/com/yahoo/search/querytransform')
-rw-r--r--container-search/src/main/java/com/yahoo/search/querytransform/QueryTreeUtil.java33
1 files changed, 17 insertions, 16 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/querytransform/QueryTreeUtil.java b/container-search/src/main/java/com/yahoo/search/querytransform/QueryTreeUtil.java
index e4841ae6bd1..759c8ba1ee4 100644
--- a/container-search/src/main/java/com/yahoo/search/querytransform/QueryTreeUtil.java
+++ b/container-search/src/main/java/com/yahoo/search/querytransform/QueryTreeUtil.java
@@ -3,6 +3,7 @@ package com.yahoo.search.querytransform;
import com.yahoo.prelude.query.AndItem;
import com.yahoo.prelude.query.Item;
+import com.yahoo.prelude.query.QueryCanonicalizer;
import com.yahoo.search.Query;
import com.yahoo.search.query.QueryTree;
@@ -10,27 +11,27 @@ import com.yahoo.search.query.QueryTree;
* Utility class for manipulating a QueryTree.
*
* @author geirst
+ * @deprecated use QueryTree.and instead // TODO: Remove on Vespa 8
*/
+@Deprecated
public class QueryTreeUtil {
- static public void andQueryItemWithRoot(Query query, Item item) {
- andQueryItemWithRoot(query.getModel().getQueryTree(), item);
+ /**
+ * Adds the given item to this query
+ *
+ * @return the new root of the query tree
+ */
+ static public Item andQueryItemWithRoot(Query query, Item item) {
+ return andQueryItemWithRoot(query.getModel().getQueryTree(), item);
}
- static public void andQueryItemWithRoot(QueryTree tree, Item item) {
- if (tree.isEmpty()) {
- tree.setRoot(item);
- } else {
- Item oldRoot = tree.getRoot();
- if (oldRoot.getClass() == AndItem.class) {
- ((AndItem) oldRoot).addItem(item);
- } else {
- AndItem newRoot = new AndItem();
- newRoot.addItem(oldRoot);
- newRoot.addItem(item);
- tree.setRoot(newRoot);
- }
- }
+ /**
+ * Adds the given item to this query
+ *
+ * @return the new root of the query tree
+ */
+ static public Item andQueryItemWithRoot(QueryTree tree, Item item) {
+ return tree.and(item);
}
}