Class FacetLabel

java.lang.Object
org.apache.lucene.facet.taxonomy.FacetLabel
All Implemented Interfaces:
Comparable<FacetLabel>

public class FacetLabel extends Object implements Comparable<FacetLabel>
Holds a sequence of string components, specifying the hierarchical name of a category.
NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.
  • Field Details

    • MAX_CATEGORY_PATH_LENGTH

      public static final int MAX_CATEGORY_PATH_LENGTH
      The maximum number of characters a FacetLabel can have.
      See Also:
    • components

      public final String[] components
      The components of this FacetLabel. Note that this array may be shared with other FacetLabel instances, e.g. as a result of subpath(int), therefore you should traverse the array up to length for this path's components.
    • length

      public final int length
      The number of components of this FacetLabel.
  • Constructor Details

    • FacetLabel

      public FacetLabel(String... components)
      Construct from the given path components.
    • FacetLabel

      public FacetLabel(String dim, String[] path)
      Construct from the dimension plus the given path components.
  • Method Details

    • compareTo

      public int compareTo(FacetLabel other)
      Compares this path with another FacetLabel for lexicographic order.
      Specified by:
      compareTo in interface Comparable<FacetLabel>
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • longHashCode

      public long longHashCode()
      Calculate a 64-bit hash function for this path. This is necessary for NameHashIntCacheLRU (the default cache impl for LruTaxonomyWriterCache) to reduce the chance of "silent but deadly" collisions.
    • subpath

      public FacetLabel subpath(int length)
      Returns a sub-path of this path up to length components.
    • toString

      public String toString()
      Returns a string representation of the path.
      Overrides:
      toString in class Object