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 Object
- implements TermFreqIterator
This wrapper buffers incoming elements and makes sure they are sorted based on given comparator.
- WARNING: This API is experimental and might change in incompatible ways in the next release.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SortedTermFreqIteratorWrapper
public SortedTermFreqIteratorWrapper(TermFreqIterator source,
Comparator<BytesRef> comparator)
throws IOException
- Throws:
IOException
SortedTermFreqIteratorWrapper
public SortedTermFreqIteratorWrapper(TermFreqIterator source,
Comparator<BytesRef> comparator,
boolean compareRawBytes)
throws IOException
- Throws:
IOException
next
public BytesRef next()
throws IOException
- Description copied from interface:
BytesRefIterator
- Increments the iteration to the next
BytesRef
in the iterator.
Returns the resulting BytesRef
or null
if 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:
next
in interface BytesRefIterator
- Returns:
- the next
BytesRef
in the iterator or null
if
the end of the iterator is reached.
- Throws:
IOException
getComparator
public Comparator<BytesRef> getComparator()
- Description copied from interface:
BytesRefIterator
- Return the
BytesRef
Comparator 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:
getComparator
in interface BytesRefIterator
weight
public long weight()
- Specified by:
weight
in interface TermFreqIterator
encode
protected void encode(Sort.ByteSequencesWriter writer,
ByteArrayDataOutput output,
byte[] buffer,
BytesRef spare,
long weight)
throws IOException
- Throws:
IOException
decode
protected long decode(BytesRef scratch,
ByteArrayDataInput tmpInput)