Replace getOperator() with getField().getName()
The index fields may be named differently then the operators supplied by a user. This offers some flexibility in aliasing operators like "change" to have different backend fields based on the input string format, or "age" being aliased to a range query on "updated". Change-Id: Icb16b91cf7687d23694835ebaa4faf318b6af30c
This commit is contained in:
@@ -286,7 +286,7 @@ public class LuceneChangeIndex implements ChangeIndex, LifecycleListener {
|
||||
} catch (IllegalArgumentException e) {
|
||||
throw new QueryParseException("not an integer: " + p.getValue());
|
||||
}
|
||||
return new TermQuery(intTerm(p.getOperator(), value));
|
||||
return new TermQuery(intTerm(p.getField().getName(), value));
|
||||
}
|
||||
|
||||
private static Query sortKeyQuery(SortKeyPredicate p) {
|
||||
@@ -327,7 +327,7 @@ public class LuceneChangeIndex implements ChangeIndex, LifecycleListener {
|
||||
if (p instanceof RegexPredicate<?>) {
|
||||
return regexQuery(p);
|
||||
} else {
|
||||
return new TermQuery(new Term(p.getOperator(), p.getValue()));
|
||||
return new TermQuery(new Term(p.getField().getName(), p.getValue()));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -340,11 +340,11 @@ public class LuceneChangeIndex implements ChangeIndex, LifecycleListener {
|
||||
re = re.substring(0, re.length() - 1);
|
||||
}
|
||||
|
||||
return new RegexpQuery(new Term(p.getOperator(), re));
|
||||
return new RegexpQuery(new Term(p.getField().getName(), re));
|
||||
}
|
||||
|
||||
private Query prefixQuery(IndexPredicate<ChangeData> p) {
|
||||
return new PrefixQuery(new Term(p.getOperator(), p.getValue()));
|
||||
return new PrefixQuery(new Term(p.getField().getName(), p.getValue()));
|
||||
}
|
||||
|
||||
private class QuerySource implements ChangeDataSource {
|
||||
|
||||
Reference in New Issue
Block a user