org.apache.lucene.index
Class SortedSetDocValues

java.lang.Object
  extended by org.apache.lucene.index.SortedSetDocValues
Direct Known Subclasses:
MultiDocValues.MultiSortedSetDocValues, SingletonSortedSetDocValues

public abstract class SortedSetDocValues
extends Object

A per-document set of presorted byte[] values.

Per-Document values in a SortedDocValues are deduplicated, dereferenced, and sorted into a dictionary of unique values. A pointer to the dictionary value (ordinal) can be retrieved for each document. Ordinals are dense and in increasing sorted order.


Field Summary
static SortedSetDocValues EMPTY
          An empty SortedDocValues which returns NO_MORE_ORDS for every document
static long NO_MORE_ORDS
          When returned by nextOrd() it means there are no more ordinals for the document.
 
Constructor Summary
protected SortedSetDocValues()
          Sole constructor.
 
Method Summary
abstract  long getValueCount()
          Returns the number of unique values.
abstract  void lookupOrd(long ord, BytesRef result)
          Retrieves the value for the specified ordinal.
 long lookupTerm(BytesRef key)
          If key exists, returns its ordinal, else returns -insertionPoint-1, like Arrays.binarySearch.
abstract  long nextOrd()
          Returns the next ordinal for the current document (previously set by setDocument(int).
abstract  void setDocument(int docID)
          Sets iteration to the specified docID
 TermsEnum termsEnum()
          Returns a TermsEnum over the values.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NO_MORE_ORDS

public static final long NO_MORE_ORDS
When returned by nextOrd() it means there are no more ordinals for the document.

See Also:
Constant Field Values

EMPTY

public static final SortedSetDocValues EMPTY
An empty SortedDocValues which returns NO_MORE_ORDS for every document

Constructor Detail

SortedSetDocValues

protected SortedSetDocValues()
Sole constructor. (For invocation by subclass constructors, typically implicit.)

Method Detail

nextOrd

public abstract long nextOrd()
Returns the next ordinal for the current document (previously set by setDocument(int).

Returns:
next ordinal for the document, or NO_MORE_ORDS. ordinals are dense, start at 0, then increment by 1 for the next value in sorted order.

setDocument

public abstract void setDocument(int docID)
Sets iteration to the specified docID

Parameters:
docID - document ID

lookupOrd

public abstract void lookupOrd(long ord,
                               BytesRef result)
Retrieves the value for the specified ordinal.

Parameters:
ord - ordinal to lookup
result - will be populated with the ordinal's value
See Also:
nextOrd()

getValueCount

public abstract long getValueCount()
Returns the number of unique values.

Returns:
number of unique values in this SortedDocValues. This is also equivalent to one plus the maximum ordinal.

lookupTerm

public long lookupTerm(BytesRef key)
If key exists, returns its ordinal, else returns -insertionPoint-1, like Arrays.binarySearch.

Parameters:
key - Key to look up

termsEnum

public TermsEnum termsEnum()
Returns a TermsEnum over the values. The enum supports TermsEnum.ord() and TermsEnum.seekExact(long).



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