public class DisjunctionMaxQuery extends Query implements Iterable<Query>
Modifier and Type | Class and Description |
---|---|
protected class |
DisjunctionMaxQuery.DisjunctionMaxWeight
Expert: the Weight for DisjunctionMaxQuery, used to
normalize, score and explain these queries.
|
Constructor and Description |
---|
DisjunctionMaxQuery(Collection<Query> disjuncts,
float tieBreakerMultiplier)
Creates a new DisjunctionMaxQuery
|
DisjunctionMaxQuery(float tieBreakerMultiplier)
Creates a new empty DisjunctionMaxQuery.
|
Modifier and Type | Method and Description |
---|---|
void |
add(Collection<Query> disjuncts)
Add a collection of disjuncts to this disjunction
via
Iterable<Query> |
void |
add(Query query)
Add a subquery to this disjunction
|
DisjunctionMaxQuery |
clone()
Create a shallow copy of us -- used in rewriting if necessary
|
Weight |
createWeight(IndexSearcher searcher)
Create the Weight used to score us
|
boolean |
equals(Object o)
Return true iff we represent the same query as o
|
void |
extractTerms(Set<Term> terms)
Expert: adds all terms occurring in this query to the terms set.
|
ArrayList<Query> |
getDisjuncts() |
float |
getTieBreakerMultiplier() |
int |
hashCode()
Compute a hash code for hashing us
|
Iterator<Query> |
iterator() |
Query |
rewrite(IndexReader reader)
Optimize our representation and our subqueries representations
|
String |
toString(String field)
Prettyprint us.
|
public DisjunctionMaxQuery(float tieBreakerMultiplier)
tieBreakerMultiplier
- the score of each non-maximum disjunct for a document is multiplied by this weight
and added into the final score. If non-zero, the value should be small, on the order of 0.1, which says that
10 occurrences of word in a lower-scored field that is also in a higher scored field is just as good as a unique
word in the lower scored field (i.e., one that is not in any higher scored field.public DisjunctionMaxQuery(Collection<Query> disjuncts, float tieBreakerMultiplier)
disjuncts
- a Collection<Query>
of all the disjuncts to addtieBreakerMultiplier
- the weight to give to each matching non-maximum disjunctpublic void add(Query query)
query
- the disjunct addedpublic void add(Collection<Query> disjuncts)
Iterable<Query>
disjuncts
- a collection of queries to add as disjuncts.public float getTieBreakerMultiplier()
public Weight createWeight(IndexSearcher searcher) throws IOException
createWeight
in class Query
IOException
public Query rewrite(IndexReader reader) throws IOException
rewrite
in class Query
reader
- the IndexReader we queryIOException
public DisjunctionMaxQuery clone()
public void extractTerms(Set<Term> terms)
Query
rewritten
form.extractTerms
in class Query
public boolean equals(Object o)
Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.