Class MultiTermQueryConstantScoreWrapper<Q extends MultiTermQuery>


  • final class MultiTermQueryConstantScoreWrapper<Q extends MultiTermQuery>
    extends Query
    This class also provides the functionality behind MultiTermQuery.CONSTANT_SCORE_REWRITE. It tries to rewrite per-segment as a boolean query that returns a constant score and otherwise fills a bit set with matches and builds a Scorer on top of this bit set.
    • Field Detail

      • BOOLEAN_REWRITE_TERM_COUNT_THRESHOLD

        private static final int BOOLEAN_REWRITE_TERM_COUNT_THRESHOLD
        See Also:
        Constant Field Values
    • Constructor Detail

      • MultiTermQueryConstantScoreWrapper

        protected MultiTermQueryConstantScoreWrapper​(Q query)
        Wrap a MultiTermQuery as a Filter.
    • Method Detail

      • toString

        public java.lang.String toString​(java.lang.String field)
        Description copied from class: Query
        Prints a query to a string, with field assumed to be the default field and omitted.
        Specified by:
        toString in class Query
      • equals

        public final boolean equals​(java.lang.Object other)
        Description copied from class: Query
        Override and implement query instance equivalence properly in a subclass. This is required so that QueryCache works properly. Typically a query will be equal to another only if it's an instance of the same class and its document-filtering properties are identical that other instance. Utility methods are provided for certain repetitive code.
        Specified by:
        equals in class Query
        See Also:
        Query.sameClassAs(Object), Query.classHash()
      • hashCode

        public final int hashCode()
        Description copied from class: Query
        Override and implement query hash code properly in a subclass. This is required so that QueryCache works properly.
        Specified by:
        hashCode in class Query
        See Also:
        Query.equals(Object)
      • getQuery

        public Q getQuery()
        Returns the encapsulated query
      • getField

        public final java.lang.String getField()
        Returns the field name for this query
      • createWeight

        public Weight createWeight​(IndexSearcher searcher,
                                   ScoreMode scoreMode,
                                   float boost)
                            throws java.io.IOException
        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 class Query
        scoreMode - How the produced scorers will be consumed.
        boost - The boost that is propagated by the parent queries.
        Throws:
        java.io.IOException
      • visit

        public void visit​(QueryVisitor visitor)
        Description copied from class: Query
        Recurse through the query tree, visiting any child queries
        Overrides:
        visit in class Query
        Parameters:
        visitor - a QueryVisitor to be called by each query in the tree