summaryrefslogtreecommitdiff
path: root/core/src/main/java/org/elasticsearch/common/lucene/search/function/FiltersFunctionScoreQuery.java
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/main/java/org/elasticsearch/common/lucene/search/function/FiltersFunctionScoreQuery.java')
-rw-r--r--core/src/main/java/org/elasticsearch/common/lucene/search/function/FiltersFunctionScoreQuery.java18
1 files changed, 4 insertions, 14 deletions
diff --git a/core/src/main/java/org/elasticsearch/common/lucene/search/function/FiltersFunctionScoreQuery.java b/core/src/main/java/org/elasticsearch/common/lucene/search/function/FiltersFunctionScoreQuery.java
index fe12622748..abf145406c 100644
--- a/core/src/main/java/org/elasticsearch/common/lucene/search/function/FiltersFunctionScoreQuery.java
+++ b/core/src/main/java/org/elasticsearch/common/lucene/search/function/FiltersFunctionScoreQuery.java
@@ -135,9 +135,9 @@ public class FiltersFunctionScoreQuery extends Query {
}
@Override
- public Weight createWeight(IndexSearcher searcher, boolean needsScores) throws IOException {
+ public Weight createWeight(IndexSearcher searcher, boolean needsScores, float boost) throws IOException {
if (needsScores == false && minScore == null) {
- return subQuery.createWeight(searcher, needsScores);
+ return subQuery.createWeight(searcher, needsScores, boost);
}
boolean subQueryNeedsScores = combineFunction != CombineFunction.REPLACE;
@@ -146,7 +146,7 @@ public class FiltersFunctionScoreQuery extends Query {
subQueryNeedsScores |= filterFunctions[i].function.needsScores();
filterWeights[i] = searcher.createNormalizedWeight(filterFunctions[i].filter, false);
}
- Weight subQueryWeight = subQuery.createWeight(searcher, subQueryNeedsScores);
+ Weight subQueryWeight = subQuery.createWeight(searcher, subQueryNeedsScores, boost);
return new CustomBoostFactorWeight(this, subQueryWeight, filterWeights, subQueryNeedsScores);
}
@@ -168,16 +168,6 @@ public class FiltersFunctionScoreQuery extends Query {
subQueryWeight.extractTerms(terms);
}
- @Override
- public float getValueForNormalization() throws IOException {
- return subQueryWeight.getValueForNormalization();
- }
-
- @Override
- public void normalize(float norm, float boost) {
- subQueryWeight.normalize(norm, boost);
- }
-
private FiltersFunctionFactorScorer functionScorer(LeafReaderContext context) throws IOException {
Scorer subQueryScorer = subQueryWeight.scorer(context);
if (subQueryScorer == null) {
@@ -281,7 +271,7 @@ public class FiltersFunctionScoreQuery extends Query {
return scoreCombiner.combine(subQueryScore, factor, maxBoost);
}
- protected double computeScore(int docId, float subQueryScore) {
+ protected double computeScore(int docId, float subQueryScore) throws IOException {
double factor = 1d;
switch(scoreMode) {
case FIRST: