public class QueryRewrite extends Object
Modifier and Type | Class and Description |
---|---|
private static class |
QueryRewrite.Recall |
Constructor and Description |
---|
QueryRewrite() |
Modifier and Type | Method and Description |
---|---|
private static Item |
collapseSingleComposites(Item item) |
static void |
collapseSingleComposites(Query query)
Collapses all single-child
CompositeItem s into their parent item. |
private static CompositeItem |
extractAndNot(AndItem parent) |
private static CompositeItem |
extractAndNotRecursively(CompositeItem parent) |
private static Item |
optimizeAndNot(Item node) |
static void |
optimizeAndNot(Query query)
Optimize multiple NotItems under and or by collapsing them in to one and leaving
the positive ones behind in its place and moving itself with the original and as its positive item
and the union of all the negative items of all the original NotItems as its negative items.
|
private static QueryRewrite.Recall |
optimizeByRestrict(Item item,
String restrictParam) |
static void |
optimizeByRestrict(Query query)
Optimizes the given query tree based on its
Model.getRestrict() parameter, if any. |
private static QueryRewrite.Recall |
optimizeCompositeItemByRestrict(CompositeItem item,
String restrictParam) |
private static QueryRewrite.Recall |
optimizeIndexedItemByRestrict(SimpleIndexedItem item,
String restrictParam) |
private static QueryRewrite.Recall |
optimizeNotItemByRestrict(NotItem item,
String restrictParam) |
private static void |
removeOtherNonrankedChildren(CompositeItem parent,
int indexOfChildToKeep) |
private static Item |
rewriteSddocname(Item item) |
static void |
rewriteSddocname(Query query)
Replaces and
SimpleIndexedItem searching in the Hit.SDDOCNAME_FIELD with an item
appropriate for the search node. |
public static void optimizeAndNot(Query query)
public static void optimizeByRestrict(Query query)
Model.getRestrict()
parameter, if any.public static void collapseSingleComposites(Query query)
CompositeItem
s into their parent item.public static void rewriteSddocname(Query query)
SimpleIndexedItem
searching in the Hit.SDDOCNAME_FIELD
with an item
appropriate for the search node.private static CompositeItem extractAndNotRecursively(CompositeItem parent)
private static CompositeItem extractAndNot(AndItem parent)
private static QueryRewrite.Recall optimizeByRestrict(Item item, String restrictParam)
private static QueryRewrite.Recall optimizeIndexedItemByRestrict(SimpleIndexedItem item, String restrictParam)
private static QueryRewrite.Recall optimizeNotItemByRestrict(NotItem item, String restrictParam)
private static QueryRewrite.Recall optimizeCompositeItemByRestrict(CompositeItem item, String restrictParam)
private static void removeOtherNonrankedChildren(CompositeItem parent, int indexOfChildToKeep)
Copyright © 2018. All rights reserved.