Class ValueSourceQuery
- java.lang.Object
-
- org.apache.lucene.search.Query
-
- org.apache.lucene.search.function.ValueSourceQuery
-
- All Implemented Interfaces:
Serializable
,Cloneable
- Direct Known Subclasses:
FieldScoreQuery
public class ValueSourceQuery extends Query
Expert: A Query that sets the scores of document to the values obtained from aValueSource
.This query provides a score for each and every undeleted document in the index.
The value source can be based on a (cached) value of an indexed field, but it can also be based on an external source, e.g. values read from an external database.
Score is set as: Score(doc,query) = query.getBoost()2 * valueSource(doc).
- See Also:
- Serialized Form
- WARNING: This API is experimental and might change in incompatible ways in the next release.
-
-
Constructor Summary
Constructors Constructor Description ValueSourceQuery(ValueSource valSrc)
Create a value source query
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Weight
createWeight(Searcher searcher)
Expert: Constructs an appropriate Weight implementation for this query.boolean
equals(Object o)
Returns true ifo
is equal to this.void
extractTerms(Set<Term> terms)
Expert: adds all terms occurring in this query to the terms set.int
hashCode()
Returns a hash code value for this object.Query
rewrite(IndexReader reader)
Expert: called to re-write queries into primitive queries.String
toString(String field)
Prints a query to a string, withfield
assumed to be the default field and omitted.-
Methods inherited from class org.apache.lucene.search.Query
clone, combine, getBoost, getSimilarity, mergeBooleanQueries, setBoost, toString, weight
-
-
-
-
Constructor Detail
-
ValueSourceQuery
public ValueSourceQuery(ValueSource valSrc)
Create a value source query- Parameters:
valSrc
- provides the values defines the function to be used for scoring
-
-
Method Detail
-
rewrite
public Query rewrite(IndexReader reader) throws IOException
Description copied from class:Query
Expert: called to re-write queries into primitive queries. For example, a PrefixQuery will be rewritten into a BooleanQuery that consists of TermQuerys.- Overrides:
rewrite
in classQuery
- Throws:
IOException
-
extractTerms
public void extractTerms(Set<Term> terms)
Description copied from class:Query
Expert: adds all terms occurring in this query to the terms set. Only works if this query is in itsrewritten
form.- Overrides:
extractTerms
in classQuery
-
createWeight
public Weight createWeight(Searcher searcher)
Description copied from class:Query
Expert: Constructs an appropriate Weight implementation for this query.Only implemented by primitive queries, which re-write to themselves.
- Overrides:
createWeight
in classQuery
-
toString
public String toString(String field)
Description copied from class:Query
Prints a query to a string, withfield
assumed to be the default field and omitted.The representation used is one that is supposed to be readable by
QueryParser
. However, there are the following limitations:- If the query was created by the parser, the printed representation may not be exactly what was parsed. For example, characters that need to be escaped will be represented without the required backslash.
- Some of the more complicated queries (e.g. span queries) don't have a representation that can be parsed by QueryParser.
-
equals
public boolean equals(Object o)
Returns true ifo
is equal to this.
-
-