## org.apache.lucene.search
Class ConstantScoreQuery

    java.lang.Object
      org.apache.lucene.search.Query
          org.apache.lucene.search.ConstantScoreQuery

All Implemented Interfaces:
  Serializable, Cloneable

    public class ConstantScoreQuery

extends Query

A query that wraps another query or a filter and simply returns a constant score equal to the query boost for every document that matches the filter or query. For queries it therefore simply strips of all scores and returns a constant one.

NOTE: if the wrapped filter is an instance of `CachingWrapperFilter`, you'll likely want to enforce deletions in the filter (using either `CachingWrapperFilter.DeletesMode.RECACHE` or `CachingWrapperFilter.DeletesMode.DYNAMIC`).

See Also:
  Serialized Form

Nested Class Summary
`protected class` `ConstantScoreQuery.ConstantScorer`
`protected class` `ConstantScoreQuery.ConstantWeight`

Field Summary
`protected Filter` `filter`
`protected Query` `query`

Constructor Summary
`ConstantScoreQuery(Filter filter)` Wraps a Filter as a Query.
`ConstantScoreQuery(Query query)` Strips off scores from the passed in Query.

Method Summary
`Weight` `createWeight(Searcher searcher)` Expert: Constructs an appropriate Weight implementation for this query.
`boolean` `equals(Object o)`
`void` `extractTerms(Set<Term> terms)` Expert: adds all terms occurring in this query to the terms set.
`Filter` `getFilter()` Returns the encapsulated filter, returns `null` if a query is wrapped.
`Query` `getQuery()` Returns the encapsulated query, returns `null` if a filter is wrapped.
`int` `hashCode()`
`Query` `rewrite(IndexReader reader)` Expert: called to re-write queries into primitive queries.
`String` `toString(String field)` Prints a query to a string, with `field` 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`

Methods inherited from class java.lang.Object
`finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### filter

    protected final Filter filter

### query

    protected final Query query

Constructor Detail

### ConstantScoreQuery

    public ConstantScoreQuery(Query query)

  Strips off scores from the passed in Query. The hits will get a constant score dependent on the boost factor of this query.

### ConstantScoreQuery

    public ConstantScoreQuery(Filter filter)

  Wraps a Filter as a Query. The hits will get a constant score dependent on the boost factor of this query. If you simply want to strip off scores from a Query, no longer use `new ConstantScoreQuery(new QueryWrapperFilter(query))`, instead use `ConstantScoreQuery(Query)`!

Method Detail

### getFilter

    public Filter getFilter()

  Returns the encapsulated filter, returns `null` if a query is wrapped.

### getQuery

    public Query getQuery()

  Returns the encapsulated query, returns `null` if a filter is wrapped.

### 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 class `Query`
  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 its `rewritten` form.

  Overrides:
    `extractTerms` in class `Query`

### createWeight

    public Weight createWeight(Searcher searcher)
                        throws 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`
  Throws:
    `IOException`

### toString

    public String toString(String field)

  Description copied from class: `Query`
  Prints a query to a string, with `field` 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.

  Specified by:
    `toString` in class `Query`

### equals

    public boolean equals(Object o)

  Overrides:
    `equals` in class `Query`

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `Query`