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 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

    All Methods Instance Methods Concrete Methods
    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 Detail

    - #### 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 Detail

    - #### FacetCountsWithFilterQuery

          protected FacetCountsWithFilterQuery​(Query fastMatchQuery)

      Create `FacetCounts`

  - ### Method Detail

    - #### 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`