Package org.apache.lucene.facet.taxonomy
Class TaxonomyFacets
- java.lang.Object
-
- org.apache.lucene.facet.Facets
-
- org.apache.lucene.facet.taxonomy.TaxonomyFacets
-
- Direct Known Subclasses:
FloatTaxonomyFacets
,IntTaxonomyFacets
public abstract class TaxonomyFacets extends Facets
Base class for all taxonomy-based facets impls.
-
-
Field Summary
Fields Modifier and Type Field Description protected FacetsConfig
config
FacetsConfig
provided to the constructor.protected String
indexFieldName
Index field name provided to the constructor.protected int[]
parents
Maps an ordinal to its parent, or -1 if there is no parent (root node).protected TaxonomyReader
taxoReader
TaxonomyReader
provided to the constructor.
-
Constructor Summary
Constructors Modifier Constructor Description protected
TaxonomyFacets(String indexFieldName, TaxonomyReader taxoReader, FacetsConfig config)
Sole constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
childrenLoaded()
Returns true if the (costly, and lazily initialized) children int[] was initialized.List<FacetResult>
getAllDims(int topN)
Returns topN labels for any dimension that had hits, sorted by the number of hits that dimension matched; this is used for "sparse" faceting, where many different dimensions were indexed, for example depending on the type of document.protected int[]
getChildren()
Returns int[] mapping each ordinal to its first child; this is a large array and is computed (and then saved) the first time this method is invoked.protected int[]
getSiblings()
Returns int[] mapping each ordinal to its next sibling; this is a large array and is computed (and then saved) the first time this method is invoked.boolean
siblingsLoaded()
Returns true if the (costly, and lazily initialized) sibling int[] was initialized.protected FacetsConfig.DimConfig
verifyDim(String dim)
Verifies and returnsFacetsConfig.DimConfig
for the given dimension name.-
Methods inherited from class org.apache.lucene.facet.Facets
getSpecificValue, getTopChildren
-
-
-
-
Field Detail
-
indexFieldName
protected final String indexFieldName
Index field name provided to the constructor.
-
taxoReader
protected final TaxonomyReader taxoReader
TaxonomyReader
provided to the constructor.
-
config
protected final FacetsConfig config
FacetsConfig
provided to the constructor.
-
parents
protected final int[] parents
Maps an ordinal to its parent, or -1 if there is no parent (root node).
-
-
Constructor Detail
-
TaxonomyFacets
protected TaxonomyFacets(String indexFieldName, TaxonomyReader taxoReader, FacetsConfig config) throws IOException
Sole constructor.- Throws:
IOException
-
-
Method Detail
-
getChildren
protected int[] getChildren() throws IOException
Returns int[] mapping each ordinal to its first child; this is a large array and is computed (and then saved) the first time this method is invoked.- Throws:
IOException
-
getSiblings
protected int[] getSiblings() throws IOException
Returns int[] mapping each ordinal to its next sibling; this is a large array and is computed (and then saved) the first time this method is invoked.- Throws:
IOException
-
childrenLoaded
public boolean childrenLoaded()
Returns true if the (costly, and lazily initialized) children int[] was initialized.- WARNING: This API is experimental and might change in incompatible ways in the next release.
-
siblingsLoaded
public boolean siblingsLoaded()
Returns true if the (costly, and lazily initialized) sibling int[] was initialized.- WARNING: This API is experimental and might change in incompatible ways in the next release.
-
verifyDim
protected FacetsConfig.DimConfig verifyDim(String dim)
Verifies and returnsFacetsConfig.DimConfig
for the given dimension name.- Returns:
FacetsConfig.DimConfig
for the given dim, orFacetsConfig.DEFAULT_DIM_CONFIG
if it was never manually configured.- Throws:
IllegalArgumentException
- if the provided dimension was manually configured, but itsFacetsConfig.DimConfig.indexFieldName
does not matchindexFieldName
.
-
getAllDims
public List<FacetResult> getAllDims(int topN) throws IOException
Description copied from class:Facets
Returns topN labels for any dimension that had hits, sorted by the number of hits that dimension matched; this is used for "sparse" faceting, where many different dimensions were indexed, for example depending on the type of document.- Specified by:
getAllDims
in classFacets
- Throws:
IOException
-
-