Package org.apache.lucene.search.suggest
Class SortedTermFreqIteratorWrapper
- java.lang.Object
-
- org.apache.lucene.search.suggest.SortedTermFreqIteratorWrapper
-
- All Implemented Interfaces:
TermFreqIterator,BytesRefIterator
public class SortedTermFreqIteratorWrapper extends java.lang.Object implements TermFreqIterator
This wrapper buffers incoming elements and makes sure they are sorted based on given comparator.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.lucene.search.spell.TermFreqIterator
TermFreqIterator.TermFreqIteratorWrapper
-
-
Field Summary
-
Fields inherited from interface org.apache.lucene.util.BytesRefIterator
EMPTY
-
-
Constructor Summary
Constructors Constructor Description SortedTermFreqIteratorWrapper(TermFreqIterator source)Creates a new sorted wrapper, usingBytesRef.getUTF8SortedAsUnicodeComparator()for sorting.SortedTermFreqIteratorWrapper(TermFreqIterator source, java.util.Comparator<BytesRef> comparator)Creates a new sorted wrapper, sorting by BytesRef (ascending) then cost (ascending).
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Comparator<BytesRef>getComparator()Return theBytesRefComparator used to sort terms provided by the iterator.BytesRefnext()Increments the iteration to the nextBytesRefin the iterator.longweight()A term's weight, higher numbers mean better suggestions.
-
-
-
Constructor Detail
-
SortedTermFreqIteratorWrapper
public SortedTermFreqIteratorWrapper(TermFreqIterator source) throws java.io.IOException
Creates a new sorted wrapper, usingBytesRef.getUTF8SortedAsUnicodeComparator()for sorting.- Throws:
java.io.IOException
-
SortedTermFreqIteratorWrapper
public SortedTermFreqIteratorWrapper(TermFreqIterator source, java.util.Comparator<BytesRef> comparator) throws java.io.IOException
Creates a new sorted wrapper, sorting by BytesRef (ascending) then cost (ascending).- Throws:
java.io.IOException
-
-
Method Detail
-
getComparator
public java.util.Comparator<BytesRef> getComparator()
Description copied from interface:BytesRefIteratorReturn theBytesRefComparator used to sort terms provided by the iterator. This may return null if there are no items or the iterator is not sorted. Callers may invoke this method many times, so it's best to cache a single instance & reuse it.- Specified by:
getComparatorin interfaceBytesRefIterator
-
next
public BytesRef next() throws java.io.IOException
Description copied from interface:BytesRefIteratorIncrements the iteration to the nextBytesRefin the iterator. Returns the resultingBytesRefornullif the end of the iterator is reached. The returned BytesRef may be re-used across calls to next. After this method returns null, do not call it again: the results are undefined.- Specified by:
nextin interfaceBytesRefIterator- Returns:
- the next
BytesRefin the iterator ornullif the end of the iterator is reached. - Throws:
java.io.IOException- If there is a low-level I/O error.
-
weight
public long weight()
Description copied from interface:TermFreqIteratorA term's weight, higher numbers mean better suggestions.- Specified by:
weightin interfaceTermFreqIterator
-
-