|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.lucene.search.FieldComparator
org.apache.lucene.search.FieldComparator.StringOrdValComparator
public static final class FieldComparator.StringOrdValComparator
Sorts by field's natural String sort order, using
ordinals. This is functionally equivalent to FieldComparator.StringValComparator, but it first resolves the string
to their relative ordinal positions (using the index
returned by FieldCache.getStringIndex(org.apache.lucene.index.IndexReader, java.lang.String)), and
does most comparisons using the ordinals. For medium
to large results, this comparator will be much faster
than FieldComparator.StringValComparator. For very small
result sets it may be slower.
| Nested Class Summary |
|---|
| Constructor Summary | |
|---|---|
FieldComparator.StringOrdValComparator(int numHits,
String field,
int sortPos,
boolean reversed)
|
|
| Method Summary | |
|---|---|
int |
compare(int slot1,
int slot2)
Compare hit at slot1 with hit at slot2. |
int |
compareBottom(int doc)
Compare the bottom of the queue with doc. |
void |
copy(int slot,
int doc)
This method is called when a new hit is competitive. |
int |
getBottomSlot()
|
String |
getField()
|
String[] |
getValues()
|
void |
setBottom(int bottom)
Set the bottom slot, ie the "weakest" (sorted last) entry in the queue. |
void |
setNextReader(IndexReader reader,
int docBase)
Set a new Reader. |
Comparable |
value(int slot)
Return the actual value in the slot. |
| Methods inherited from class org.apache.lucene.search.FieldComparator |
|---|
binarySearch, binarySearch, setScorer |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public FieldComparator.StringOrdValComparator(int numHits,
String field,
int sortPos,
boolean reversed)
| Method Detail |
|---|
public int compare(int slot1,
int slot2)
FieldComparator
compare in class FieldComparatorslot1 - first slot to compareslot2 - second slot to compare
public int compareBottom(int doc)
FieldComparatorFieldComparator.compare(int,int)} as if bottom were slot1 and the new
document were slot 2.
For a search that hits many results, this method will be the hotspot (invoked by far the most frequently).
compareBottom in class FieldComparatordoc - that was hit
public void copy(int slot,
int doc)
FieldComparator
copy in class FieldComparatorslot - which slot to copy the hit todoc - docID relative to current reader
public void setNextReader(IndexReader reader,
int docBase)
throws IOException
FieldComparator
setNextReader in class FieldComparatorreader - current readerdocBase - docBase of this reader
IOExceptionpublic void setBottom(int bottom)
FieldComparatorFieldComparator.compareBottom(int) is
called, you should compare against this slot. This
will always be called before FieldComparator.compareBottom(int).
setBottom in class FieldComparatorbottom - the currently weakest (sorted last) slot in the queuepublic Comparable value(int slot)
FieldComparator
value in class FieldComparatorslot - the value
public String[] getValues()
public int getBottomSlot()
public String getField()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||