org.apache.lucene.search
Class ScoringRewrite<Q extends Query>
java.lang.Object
   org.apache.lucene.search.MultiTermQuery.RewriteMethod
org.apache.lucene.search.MultiTermQuery.RewriteMethod
       org.apache.lucene.search.ScoringRewrite<Q>
org.apache.lucene.search.ScoringRewrite<Q>
- All Implemented Interfaces: 
- Serializable
- public abstract class ScoringRewrite<Q extends Query> 
- extends MultiTermQuery.RewriteMethod
- See Also:
- Serialized Form
- NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.
- Only public to be accessible by spans package.
 
 
 
 
 
| Methods inherited from class java.lang.Object | 
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
SCORING_BOOLEAN_QUERY_REWRITE
public static final ScoringRewrite<BooleanQuery> SCORING_BOOLEAN_QUERY_REWRITE
- A rewrite method that first translates each term into
  BooleanClause.Occur.SHOULDclause in a
  BooleanQuery, and keeps the scores as computed by the
  query.  Note that typically such scores are
  meaningless to the user, and require non-trivial CPU
  to compute, so it's almost always better to useMultiTermQuery.CONSTANT_SCORE_AUTO_REWRITE_DEFAULTinstead.NOTE: This rewrite method will hit BooleanQuery.TooManyClausesif the number of terms
  exceedsBooleanQuery.getMaxClauseCount().
 
 
- See Also:
- MultiTermQuery.setRewriteMethod(org.apache.lucene.search.MultiTermQuery.RewriteMethod)
 
CONSTANT_SCORE_BOOLEAN_QUERY_REWRITE
public static final MultiTermQuery.RewriteMethod CONSTANT_SCORE_BOOLEAN_QUERY_REWRITE
- Like SCORING_BOOLEAN_QUERY_REWRITEexcept
  scores are not computed.  Instead, each matching
  document receives a constant score equal to the
  query's boost.NOTE: This rewrite method will hit BooleanQuery.TooManyClausesif the number of terms
  exceedsBooleanQuery.getMaxClauseCount().
 
 
- See Also:
- MultiTermQuery.setRewriteMethod(org.apache.lucene.search.MultiTermQuery.RewriteMethod)
 
ScoringRewrite
public ScoringRewrite()
rewrite
public Q rewrite(IndexReader reader,
                 MultiTermQuery query)
                        throws IOException
- 
- Specified by:
- rewritein class- MultiTermQuery.RewriteMethod
 
- 
- Throws:
- IOException
 
getTopLevelQuery
protected abstract Q getTopLevelQuery()
                                             throws IOException
- Return a suitable top-level Query for holding all expanded terms.
 
- 
- Throws:
- IOException
 
addClause
protected abstract void addClause(Q topLevel,
                                  Term term,
                                  float boost)
                           throws IOException
- Add a MultiTermQuery term to the top-level query
 
- 
- Throws:
- IOException
 
collectTerms
protected final void collectTerms(IndexReader reader,
                                  MultiTermQuery query,
                                  TermCollectingRewrite.TermCollector collector)
                           throws IOException
- 
- Throws:
- IOException