Package org.apache.lucene.facet

# Class FacetCountsWithFilterQuery

java.lang.Object
org.apache.lucene.facet.Facets
org.apache.lucene.facet.FacetCountsWithFilterQuery

Direct Known Subclasses:
  `DoubleRangeFacetCounts`, `DoubleRangeOnRangeFacetCounts`, `LongRangeFacetCounts`, `LongRangeOnRangeFacetCounts`, `MatchingFacetSetsCounts`

public abstract class FacetCountsWithFilterQuery extends Facets
Base class for facet counts. It allows for a query to be passed in to filter the match set.

WARNING: This API is experimental and might change in incompatible ways in the next release.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected final Query`
  `fastMatchQuery`
  Optional: if specified, we first test this Query to see whether the document should be checked for matching ranges.

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `FacetCountsWithFilterQuery(Query fastMatchQuery)`
  Create `FacetCounts`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected DocIdSetIterator`
  `createIterator(FacetsCollector.MatchingDocs hits, DocIdSetIterator... iterators)`
  Create a `DocIdSetIterator` from the provided `hits` that relies on `fastMatchQuery` if available for first-pass filtering.

  ### Methods inherited from class org.apache.lucene.facet.Facets

  `getAllChildren, getAllDims, getSpecificValue, getTopChildren, getTopDims, validateTopN`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### fastMatchQuery

    protected final Query fastMatchQuery
    Optional: if specified, we first test this Query to see whether the document should be checked for matching ranges. If this is null, all documents are checked.

- ## Constructor Details

  - ### FacetCountsWithFilterQuery

    protected FacetCountsWithFilterQuery(Query fastMatchQuery)
    Create `FacetCounts`

- ## Method Details

  - ### createIterator

    protected DocIdSetIterator createIterator(FacetsCollector.MatchingDocs hits, DocIdSetIterator... iterators) throws IOException
    Create a `DocIdSetIterator` from the provided `hits` that relies on `fastMatchQuery` if available for first-pass filtering. If `iterators` is not empty then all iterators are intersected. If any of the iterators is null, it indicates no documents will be matched by it, and therefore no documents will be matched overall. A null response indicates no documents will match.
    Throws:
      `IOException`