## org.apache.lucene.facet.search.params.association
Class AssociationIntSumFacetRequest

    java.lang.Object
      org.apache.lucene.facet.search.params.FacetRequest
          org.apache.lucene.facet.search.params.association.AssociationIntSumFacetRequest

All Implemented Interfaces:
  Cloneable

    public class AssociationIntSumFacetRequest

extends FacetRequest

Facet request for weighting facets according to their integer association by summing the association values.

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

Nested Class Summary

Nested classes/interfaces inherited from class org.apache.lucene.facet.search.params.FacetRequest
`FacetRequest.ResultMode, FacetRequest.SortBy, FacetRequest.SortOrder`

Field Summary

Fields inherited from class org.apache.lucene.facet.search.params.FacetRequest
`DEFAULT_DEPTH, DEFAULT_RESULT_MODE, DEFAULT_SORT_BY`

Constructor Summary
`AssociationIntSumFacetRequest(CategoryPath path, int num)` Create an integer association facet request for a given node in the taxonomy.

Method Summary
`Aggregator` `createAggregator(boolean useComplements, FacetArrays arrays, org.apache.lucene.index.IndexReader reader, TaxonomyReader taxonomy)` Create an aggregator for this facet request.
`double` `getValueOf(FacetArrays arrays, int ordinal)` Return the value of a category used for facets computations for this request.
`boolean` `requireDocumentScore()` Indicates whether the results of this request depends on each result document's score
`boolean` `supportsComplements()` Indicates whether this facet request is eligible for applying the complements optimization.

Methods inherited from class org.apache.lucene.facet.search.params.FacetRequest
`clone, createCategoryListIterator, createFacetResultsHandler, equals, getCategoryPath, getDepth, getNumLabel, getNumResults, getResultMode, getSortBy, getSortOrder, hashCode, setDepth, setNumLabel, setResultMode, setSortBy, setSortOrder, toString`

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

Constructor Detail

### AssociationIntSumFacetRequest

    public AssociationIntSumFacetRequest(CategoryPath path,
                                         int num)

  Create an integer association facet request for a given node in the taxonomy.

Method Detail

### createAggregator

    public Aggregator createAggregator(boolean useComplements,
                                       FacetArrays arrays,
                                       org.apache.lucene.index.IndexReader reader,
                                       TaxonomyReader taxonomy)
                                throws IOException

  Description copied from class: `FacetRequest`
  Create an aggregator for this facet request. Aggregator action depends on request definition. For a count request, it will usually increment the count for that facet.

  Specified by:
    `createAggregator` in class `FacetRequest`
  Parameters:
    `useComplements` - whether the complements optimization is being used for current computation.
    `arrays` - provider for facet arrays in use for current computation.
    `reader` - index reader in effect.
    `taxonomy` - reader of taxonomy in effect.
  Throws:
    `IOException`

### getValueOf

    public double getValueOf(FacetArrays arrays,
                             int ordinal)

  Description copied from class: `FacetRequest`
  Return the value of a category used for facets computations for this request. For a count request this would be the count for that facet, i.e. an integer number. but for other requests this can be the result of a more complex operation, and the result can be any double precision number. Having this method with a general name value which is double precision allows to have more compact API and code for handling counts and perhaps other requests (such as for associations) very similarly, and by the same code and API, avoiding code duplication.

  Specified by:
    `getValueOf` in class `FacetRequest`
  Parameters:
    `arrays` - provider for facet arrays in use for current computation.
    `ordinal` - an index into the count arrays now in effect in `arrays`. E.g., for ordinal number n, with partition, of size partitionSize, now covering n, `getValueOf` would be invoked with `idx` being n % partitionSize.

### supportsComplements

    public boolean supportsComplements()

  Description copied from class: `FacetRequest`
  Indicates whether this facet request is eligible for applying the complements optimization.

  Overrides:
    `supportsComplements` in class `FacetRequest`

### requireDocumentScore

    public boolean requireDocumentScore()

  Description copied from class: `FacetRequest`
  Indicates whether the results of this request depends on each result document's score

  Specified by:
    `requireDocumentScore` in class `FacetRequest`