org.apache.lucene.search
Class DisjunctionMaxQuery.DisjunctionMaxWeight

java.lang.Object
  extended by org.apache.lucene.search.Weight
      extended by org.apache.lucene.search.DisjunctionMaxQuery.DisjunctionMaxWeight
Enclosing class:
DisjunctionMaxQuery

protected class DisjunctionMaxQuery.DisjunctionMaxWeight
extends Weight

Expert: the Weight for DisjunctionMaxQuery, used to normalize, score and explain these queries.

NOTE: this API and implementation is subject to change suddenly in the next release.


Field Summary
protected  ArrayList<Weight> weights
          The Weights for our subqueries, in 1-1 correspondence with disjuncts
 
Constructor Summary
DisjunctionMaxQuery.DisjunctionMaxWeight(IndexSearcher searcher)
          Construct the Weight for this Query searched by searcher.
 
Method Summary
 Explanation explain(AtomicReaderContext context, int doc)
          Explain the score we computed for doc
 Query getQuery()
          Return our associated DisjunctionMaxQuery
 float getValueForNormalization()
          Compute the sub of squared weights of us applied to our subqueries.
 void normalize(float norm, float topLevelBoost)
          Apply the computed normalization factor to our subqueries
 Scorer scorer(AtomicReaderContext context, boolean scoreDocsInOrder, boolean topScorer, Bits acceptDocs)
          Create the scorer used to score our associated DisjunctionMaxQuery
 
Methods inherited from class org.apache.lucene.search.Weight
scoresDocsOutOfOrder
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

weights

protected ArrayList<Weight> weights
The Weights for our subqueries, in 1-1 correspondence with disjuncts

Constructor Detail

DisjunctionMaxQuery.DisjunctionMaxWeight

public DisjunctionMaxQuery.DisjunctionMaxWeight(IndexSearcher searcher)
                                         throws IOException
Construct the Weight for this Query searched by searcher. Recursively construct subquery weights.

Throws:
IOException
Method Detail

getQuery

public Query getQuery()
Return our associated DisjunctionMaxQuery

Specified by:
getQuery in class Weight

getValueForNormalization

public float getValueForNormalization()
                               throws IOException
Compute the sub of squared weights of us applied to our subqueries. Used for normalization.

Specified by:
getValueForNormalization in class Weight
Throws:
IOException

normalize

public void normalize(float norm,
                      float topLevelBoost)
Apply the computed normalization factor to our subqueries

Specified by:
normalize in class Weight

scorer

public Scorer scorer(AtomicReaderContext context,
                     boolean scoreDocsInOrder,
                     boolean topScorer,
                     Bits acceptDocs)
              throws IOException
Create the scorer used to score our associated DisjunctionMaxQuery

Specified by:
scorer in class Weight
Parameters:
context - the AtomicReaderContext for which to return the Scorer.
scoreDocsInOrder - specifies whether in-order scoring of documents is required. Note that if set to false (i.e., out-of-order scoring is required), this method can return whatever scoring mode it supports, as every in-order scorer is also an out-of-order one. However, an out-of-order scorer may not support DocIdSetIterator.nextDoc() and/or DocIdSetIterator.advance(int), therefore it is recommended to request an in-order scorer if use of these methods is required.
topScorer - if true, Scorer.score(Collector) will be called; if false, DocIdSetIterator.nextDoc() and/or DocIdSetIterator.advance(int) will be called.
acceptDocs - Bits that represent the allowable docs to match (typically deleted docs but possibly filtering other documents)
Returns:
a Scorer which scores documents in/out-of order.
Throws:
IOException - if there is a low-level I/O error

explain

public Explanation explain(AtomicReaderContext context,
                           int doc)
                    throws IOException
Explain the score we computed for doc

Specified by:
explain in class Weight
Parameters:
context - the readers context to create the Explanation for.
doc - the document's id relative to the given context's reader
Returns:
an Explanation for the score
Throws:
IOException - if an IOException occurs


Copyright © 2000-2014 Apache Software Foundation. All Rights Reserved.