org.apache.lucene.facet.search

## Class AdaptiveFacetsAccumulator

- java.lang.Object
- - org.apache.lucene.facet.search.FacetsAccumulator
  - - org.apache.lucene.facet.search.StandardFacetsAccumulator
    - - org.apache.lucene.facet.search.AdaptiveFacetsAccumulator

    public final class AdaptiveFacetsAccumulator
    extends StandardFacetsAccumulator

`FacetsAccumulator` whose behavior regarding complements, sampling, etc. is not set up front but rather is determined at accumulation time according to the statistics of the accumulated set of documents and the index.

Note: Sampling accumulation (Accumulation over a sampled-set of the results), does not guarantee accurate values for `FacetResult.getNumValidDescendants()`.

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

### Field Summary

### Fields inherited from class org.apache.lucene.facet.search.StandardFacetsAccumulator

`DEFAULT_COMPLEMENT_THRESHOLD, DISABLE_COMPLEMENT, FORCE_COMPLEMENT, isUsingComplements, maxPartitions, partitionSize`

### Fields inherited from class org.apache.lucene.facet.search.FacetsAccumulator

`facetArrays, indexReader, searchParams, taxonomyReader`

### Constructor Summary

Constructors
Constructor and Description
`AdaptiveFacetsAccumulator(FacetSearchParams searchParams, IndexReader indexReader, TaxonomyReader taxonomyReader)` Create an `AdaptiveFacetsAccumulator`
`AdaptiveFacetsAccumulator(FacetSearchParams searchParams, IndexReader indexReader, TaxonomyReader taxonomyReader, FacetArrays facetArrays)` Create an `AdaptiveFacetsAccumulator`

### Method Summary

Methods
`List<FacetResult>` `accumulate(ScoredDocIDs docids)`
`Sampler` `getSampler()`
`void` `setSampler(Sampler sampler)` Set the sampler.

### Methods inherited from class org.apache.lucene.facet.search.StandardFacetsAccumulator

`accumulate, actualDocsToAccumulate, createFacetResultsHandler, getCategoryListMap, getComplementThreshold, getTotalCountsFactor, isUsingComplements, mayComplement, setComplementThreshold, shouldComplement`

### Methods inherited from class org.apache.lucene.facet.search.FacetsAccumulator

`create, getAggregator, getCategoryLists`

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

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

### Constructor Detail

#### AdaptiveFacetsAccumulator

    public AdaptiveFacetsAccumulator(FacetSearchParams searchParams,
                             IndexReader indexReader,
                             TaxonomyReader taxonomyReader)

Create an `AdaptiveFacetsAccumulator`

See Also:
  `StandardFacetsAccumulator.StandardFacetsAccumulator(FacetSearchParams, IndexReader, TaxonomyReader)`

#### AdaptiveFacetsAccumulator

    public AdaptiveFacetsAccumulator(FacetSearchParams searchParams,
                             IndexReader indexReader,
                             TaxonomyReader taxonomyReader,
                             FacetArrays facetArrays)

Create an `AdaptiveFacetsAccumulator`

See Also:
  `StandardFacetsAccumulator.StandardFacetsAccumulator(FacetSearchParams, IndexReader, TaxonomyReader, FacetArrays)`

### Method Detail

#### setSampler

    public void setSampler(Sampler sampler)

Set the sampler.

Parameters:
  `sampler` - sampler to set

#### accumulate

    public List<FacetResult> accumulate(ScoredDocIDs docids)
                                 throws IOException

Overrides:
  `accumulate` in class `StandardFacetsAccumulator`
Throws:
  `IOException`

#### getSampler

    public final Sampler getSampler()

Returns:
  the sampler in effect