# All Classes and Interfaces

Class
Description
AssociationAggregationFunction
Specify aggregation logic used in `TaxonomyFacetIntAssociations` and `TaxonomyFacetFloatAssociations`.
AssociationFacetField
Add an instance of this to your `Document` to add a facet label associated with an arbitrary byte[].
ConcurrentSortedSetDocValuesFacetCounts
Like `SortedSetDocValuesFacetCounts`, but aggregates counts concurrently across segments.
DefaultSortedSetDocValuesReaderState
Default implementation of `SortedSetDocValuesFacetCounts`.
DimRange
Defines a single range in a `FacetSet` dimension.
DirectoryTaxonomyReader
A `TaxonomyReader` which retrieves stored taxonomy information from a `Directory`.
DirectoryTaxonomyWriter
`TaxonomyWriter` which uses a `Directory` to store the taxonomy information on disk, and keeps an additional in-memory cache of some or all categories.
DirectoryTaxonomyWriter.DiskOrdinalMap
`DirectoryTaxonomyWriter.OrdinalMap` maintained on file system
DirectoryTaxonomyWriter.MemoryOrdinalMap
`DirectoryTaxonomyWriter.OrdinalMap` maintained in memory
DirectoryTaxonomyWriter.OrdinalMap
Mapping from old ordinal to new ordinals, used when merging indexes with separate taxonomies.
DoubleFacetSet
A `FacetSet` which encodes double dimension values.
DoubleRange
Represents a range over double values.
DoubleRange
Represents a double range for RangeOnRange faceting
DoubleRangeFacetCounts
`Facets` implementation that computes counts for dynamic double ranges.
DoubleRangeOnRangeFacetCounts
Represents counts for double range on range faceting.
DrillDownQuery
A `Query` for drill-down over facet categories.
DrillSideways
Computes drill down and sideways counts for the provided `DrillDownQuery`.
DrillSideways.ConcurrentDrillSidewaysResult<R>
Result of a concurrent drill sideways search, including the `Facets` and `TopDocs`.
DrillSideways.DrillSidewaysResult
Result of a drill sideways search, including the `Facets` and `TopDocs`.
DrillSideways.Result<T,R>
`DrillSideways.search(DrillDownQuery, CollectorManager, List)` result.
DynamicRangeUtil
Methods to create dynamic ranges for numeric fields.
DynamicRangeUtil.DynamicRangeInfo
Holds parameters of a dynamic numeric range.
ExactFacetSetMatcher
A `FacetSetMatcher` which considers a set as a match only if all dimension values are equal to the given one.
FacetCountsWithFilterQuery
Base class for facet counts.
FacetField
Add an instance of this to your `Document` for every facet label.
FacetLabel
Holds a sequence of string components, specifying the hierarchical name of a category.
FacetQuery
A term `Query` over a `FacetField`.
FacetResult
Counts or aggregates for a single dimension.
Facets
Common base class for all facets implementations.
FacetsCollector
Collects hits for subsequent faceting.
FacetsCollector.MatchingDocs
Holds the documents that were matched in the `LeafReaderContext`.
FacetsCollectorManager
A `CollectorManager` implementation which produces FacetsCollector and produces a merged FacetsCollector.
FacetsCollectorManager.FacetsResult
Holds results of a search run via static utility methods exposed by this class.
FacetsConfig
Records per-dimension configuration.
FacetsConfig.DimConfig
Holds the configuration for one dimension
FacetsConfig.DrillDownTermsIndexing
Drill down terms indexing option to control whether dimension and sub-path terms should be indexed.
FacetSet
Holds a set of facet dimension values.
FacetSetDecoder
A functional interface for decoding facet set values into comparable `long` ones.
FacetSetMatcher
Matches the encoded `FacetSet` that was indexed in `FacetSetsField`.
FacetSetsField
A `BinaryDocValuesField` which encodes a list of `facet sets`.
FacetUtils
Utility class with a single method for getting a DocIdSetIterator that skips deleted docs
FastTaxonomyFacetCounts
Computes facets counts, assuming the default encoding into DocValues was used.
FloatAssociationFacetField
Add an instance of this to your `Document` to add a facet label associated with a float.
FloatFacetSet
A `FacetSet` which encodes float dimension values.
IntAssociationFacetField
Add an instance of this to your `Document` to add a facet label associated with an int.
IntFacetSet
A `FacetSet` which encodes integer dimension values.
LabelAndValue
Single label and its value, usually contained in a `FacetResult`.
LabelToOrdinal
Abstract class for storing Label->Ordinal mappings in a taxonomy.
LongFacetSet
A `FacetSet` which encodes long dimension values.
LongRange
Represents a range over long values.
LongRange
Represents a long range for RangeOnRange faceting
LongRangeFacetCounts
`Facets` implementation that computes counts for dynamic long ranges.
LongRangeOnRangeFacetCounts
Represents counts for long range on range faceting.
LongValueFacetCounts
`Facets` implementation that computes counts for all unique long values, more efficiently counting small values (0-1023) using an int array, and switching to a `HashMap` for values above 1023.
LRUHashMap<K,V>
LRUHashMap is an extension of Java's HashMap, which has a bounded size(); When it reaches that size, each time a new element is added, the least recently used (LRU) entry is removed.
LruTaxonomyWriterCache
LRU `TaxonomyWriterCache` - good choice for huge taxonomies.
LruTaxonomyWriterCache.LRUType
Determines cache type.
MatchingFacetSetsCounts
Returns the counts for each given `FacetSet`
MultiDoubleValues
Per-segment, per-document double values, which can be calculated at search-time.
MultiDoubleValuesSource
Base class for producing `MultiDoubleValues`.
MultiFacetQuery
A multi-terms `Query` over a `FacetField`.
MultiFacets
Maps specified dims to provided Facets impls; else, uses the default Facets impl.
MultiLongValues
Per-segment, per-document long values, which can be calculated at search-time.
MultiLongValuesSource
Base class for producing `MultiLongValues`.
NameHashIntCacheLRU
An LRU cache of mapping from name to int.
OrdinalMappingLeafReader
A `FilterLeafReader` for updating facets ordinal references, based on an ordinal map.
ParallelTaxonomyArrays
Returns 3 arrays for traversing the taxonomy: `parents`: `parents[i]` denotes the parent of category ordinal `i`.
ParallelTaxonomyArrays.IntArray
Abstraction that looks like an int[], but read-only.
PrintTaxonomyStats
Prints how many ords are under each dimension.
RandomSamplingFacetsCollector
Collects hits for subsequent faceting, using sampling if needed.
Range
Base class for a single labeled range.
Range
Base class for a single labeled range.
RangeFacetSetMatcher
A `FacetSetMatcher` which considers a set as a match if all dimensions fall within the given corresponding range.
ReindexingEnrichedDirectoryTaxonomyWriter
Use this `TaxonomyWriter` to append arbitrary fields to the ordinal documents in the taxonomy.
SearcherTaxonomyManager
Manages near-real-time reopen of both an IndexSearcher and a TaxonomyReader.
SearcherTaxonomyManager.SearcherAndTaxonomy
Holds a matched pair of `IndexSearcher` and `TaxonomyReader`
SortedSetDocValuesFacetCounts
Compute facets counts from previously indexed `SortedSetDocValuesFacetField`, without require a separate taxonomy index.
SortedSetDocValuesFacetField
Add an instance of this to your Document for every facet label to be indexed via SortedSetDocValues.
SortedSetDocValuesReaderState
Wraps a `IndexReader` and resolves ords using existing `SortedSetDocValues` APIs without a separate taxonomy index.
SortedSetDocValuesReaderState.DimTree
Holds children and sibling information for a single dimension.
SortedSetDocValuesReaderState.OrdRange
Holds start/end range of ords, which maps to one dimension.
StringDocValuesReaderState
Stores an `OrdinalMap` created for a specific `IndexReader` (`reader`) + `field`.
StringValueFacetCounts
Compute facet counts from a previously indexed `SortedSetDocValues` or `SortedDocValues` field.
TaxonomyFacetFloatAssociations
Aggregates float values associated with facet fields.
TaxonomyFacetIntAssociations
Aggregates int values previously indexed with `IntAssociationFacetField`, assuming the default encoding.
TaxonomyFacetLabels
Utility class to easily retrieve previously indexed facet labels, allowing you to skip also adding stored fields for these values, reducing your index size.
TaxonomyMergeUtils
Utility methods for merging index and taxonomy directories.
TaxonomyReader
TaxonomyReader is the read-only interface with which the faceted-search library uses the taxonomy during search time.
TaxonomyReader.ChildrenIterator
An iterator over a category's children.
TaxonomyWriter
TaxonomyWriter is the interface which the faceted-search library uses to dynamically build the taxonomy at indexing time.
TaxonomyWriterCache
TaxonomyWriterCache is a relatively simple interface for a cache of category->ordinal mappings, used in TaxonomyWriter implementations (such as `DirectoryTaxonomyWriter`).
TopOrdAndFloatQueue
Keeps highest results, first by largest float value, then tie-break by smallest ord.
TopOrdAndFloatQueue.OrdAndFloat
Holds an ordinal and a float value.
TopOrdAndIntQueue
Keeps highest results, first by largest int value, then tie-break by smallest ord.
TopOrdAndIntQueue.OrdAndInt
Holds an ordinal and an int value.
TopOrdAndNumberQueue
Keeps highest results, first by largest value, then tie-break by smallest ord.
TopOrdAndNumberQueue.OrdAndValue
Holds a single entry.