org.apache.lucene.facet.taxonomy.writercache
Class LabelToOrdinal

java.lang.Object
  extended by org.apache.lucene.facet.taxonomy.writercache.LabelToOrdinal
Direct Known Subclasses:
CompactLabelToOrdinal

public abstract class LabelToOrdinal
extends Object

Abstract class for storing Label->Ordinal mappings in a taxonomy.

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

Field Summary
protected  int counter
          How many ordinals we've seen.
static int INVALID_ORDINAL
          Returned by getOrdinal(org.apache.lucene.facet.taxonomy.FacetLabel) when the label isn't recognized.
 
Constructor Summary
LabelToOrdinal()
          Default constructor.
 
Method Summary
abstract  void addLabel(FacetLabel label, int ordinal)
          Adds a new label if its not yet in the table.
 int getMaxOrdinal()
          return the maximal Ordinal assigned so far
 int getNextOrdinal()
          Returns the next unassigned ordinal.
abstract  int getOrdinal(FacetLabel label)
          Returns the ordinal assigned to the given label, or INVALID_ORDINAL if the label cannot be found in this table.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

counter

protected int counter
How many ordinals we've seen.


INVALID_ORDINAL

public static final int INVALID_ORDINAL
Returned by getOrdinal(org.apache.lucene.facet.taxonomy.FacetLabel) when the label isn't recognized.

See Also:
Constant Field Values
Constructor Detail

LabelToOrdinal

public LabelToOrdinal()
Default constructor.

Method Detail

getMaxOrdinal

public int getMaxOrdinal()
return the maximal Ordinal assigned so far


getNextOrdinal

public int getNextOrdinal()
Returns the next unassigned ordinal. The default behavior of this method is to simply increment a counter.


addLabel

public abstract void addLabel(FacetLabel label,
                              int ordinal)
Adds a new label if its not yet in the table. Throws an IllegalArgumentException if the same label with a different ordinal was previoulsy added to this table.


getOrdinal

public abstract int getOrdinal(FacetLabel label)
Returns the ordinal assigned to the given label, or INVALID_ORDINAL if the label cannot be found in this table.



Copyright © 2000-2014 Apache Software Foundation. All Rights Reserved.