Class TaxonomyFacets

  • Direct Known Subclasses:
    FastTaxonomyFacetCounts, FloatTaxonomyFacets, IntTaxonomyFacets

    @Deprecated
    public abstract class TaxonomyFacets
    extends Facets
    Deprecated.
    Visibility of this class will be reduced to pkg-private in a future version. This class is meant to host common code as an internal implementation detail to taxonomy faceting,and is not intended as an extension point for user-created Facets implementations. If your code is relying on this, please migrate necessary functionality down into your own class.
    Base class for all taxonomy-based facets impls.
    • Field Detail

      • indexFieldName

        protected final String indexFieldName
        Deprecated.
        Index field name provided to the constructor.
      • taxoReader

        protected final TaxonomyReader taxoReader
        Deprecated.
        TaxonomyReader provided to the constructor.
      • config

        protected final FacetsConfig config
        Deprecated.
        FacetsConfig provided to the constructor.
      • valueComparator

        protected Comparator<Number> valueComparator
        Deprecated.
        Defines comparison between aggregated values.
    • Method Detail

      • useHashTable

        protected boolean useHashTable​(FacetsCollector fc,
                                       TaxonomyReader taxoReader)
        Deprecated.
        Return true if a sparse hash table should be used for counting, instead of a dense int[].
      • initializeValueCounters

        protected void initializeValueCounters()
        Deprecated.
        If not done already, initialize the data structures storing counts.
      • setCount

        protected void setCount​(int ordinal,
                                int newValue)
        Deprecated.
        Set the count for this ordinal to newValue.
      • getCount

        protected int getCount​(int ordinal)
        Deprecated.
        Get the count for this ordinal.
      • getAggregationValue

        protected Number getAggregationValue​(int ordinal)
        Deprecated.
        Get the aggregation value for this ordinal.
      • aggregate

        protected Number aggregate​(Number existingVal,
                                   Number newVal)
        Deprecated.
        Apply an aggregation to the two values and return the result.
      • childrenLoaded

        public boolean childrenLoaded()
        Deprecated.
        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()
        Deprecated.
        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.
      • updateValueFromRollup

        protected void updateValueFromRollup​(int ordinal,
                                             int childOrdinal)
                                      throws IOException
        Deprecated.
        Roll-up the aggregation values from childOrdinal to ordinal. Overrides should probably call this to update the counts. Overriding allows us to work with primitive types for the aggregation values, keeping aggregation efficient.
        Throws:
        IOException
      • missingAggregationValue

        protected Number missingAggregationValue()
        Deprecated.
        Return the value for a missing aggregation, i.e. -1 or -1f.
      • rollup

        protected void rollup()
                       throws IOException
        Deprecated.
        Rolls up any single-valued hierarchical dimensions.
        Throws:
        IOException
      • getAllChildren

        public FacetResult getAllChildren​(String dim,
                                          String... path)
                                   throws IOException
        Deprecated.
        Description copied from class: Facets
        Returns all child labels with non-zero counts under the specified path. Users should make no assumptions about ordering of the children. Returns null if the specified path doesn't exist or if this dimension was never seen.
        Specified by:
        getAllChildren in class Facets
        Throws:
        IOException
      • getTopChildrenForPath

        protected org.apache.lucene.facet.taxonomy.TaxonomyFacets.TopChildrenForPath getTopChildrenForPath​(FacetsConfig.DimConfig dimConfig,
                                                                                                           int pathOrd,
                                                                                                           int topN)
                                                                                                    throws IOException
        Deprecated.
        Determine the top-n children for a specified dimension + path. Results are in an intermediate form.
        Throws:
        IOException
      • getTopChildren

        public FacetResult getTopChildren​(int topN,
                                          String dim,
                                          String... path)
                                   throws IOException
        Deprecated.
        Description copied from class: Facets
        Returns the topN child labels under the specified path. Returns null if the specified path doesn't exist or if this dimension was never seen.
        Specified by:
        getTopChildren in class Facets
        Throws:
        IOException
      • getAllDims

        public List<FacetResult> getAllDims​(int topN)
                                     throws IOException
        Deprecated.
        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 class Facets
        Throws:
        IOException
      • getTopDims

        public List<FacetResult> getTopDims​(int topNDims,
                                            int topNChildren)
                                     throws IOException
        Deprecated.
        Description copied from class: Facets
        Returns labels for topN dimensions and their topNChildren sorted by the number of hits/aggregated values that dimension matched. Results should be the same as calling getAllDims and then only using the first topNDims. Note that dims should be configured as requiring dim counts if using this functionality to ensure accurate counts are available (see: FacetsConfig.setRequireDimCount(String, boolean)).

        Sub-classes may want to override this implementation with a more efficient one if they are able.

        Overrides:
        getTopDims in class Facets
        Throws:
        IOException