public class SortedTermFreqIteratorWrapper extends Object implements TermFreqIterator
TermFreqIterator.TermFreqIteratorWrapper
EMPTY
Constructor and Description |
---|
SortedTermFreqIteratorWrapper(TermFreqIterator source)
Creates a new sorted wrapper, using
BytesRef.getUTF8SortedAsUnicodeComparator() for
sorting. |
SortedTermFreqIteratorWrapper(TermFreqIterator source,
Comparator<BytesRef> comparator)
Creates a new sorted wrapper, sorting by BytesRef
(ascending) then cost (ascending).
|
Modifier and Type | Method and Description |
---|---|
protected long |
decode(BytesRef scratch,
ByteArrayDataInput tmpInput)
decodes the weight at the current position
|
protected void |
encode(OfflineSorter.ByteSequencesWriter writer,
ByteArrayDataOutput output,
byte[] buffer,
BytesRef spare,
long weight)
encodes an entry (bytes+weight) to the provided writer
|
Comparator<BytesRef> |
getComparator()
Return the
BytesRef Comparator used to sort terms provided by the
iterator. |
BytesRef |
next()
Increments the iteration to the next
BytesRef in the iterator. |
long |
weight()
A term's weight, higher numbers mean better suggestions.
|
public SortedTermFreqIteratorWrapper(TermFreqIterator source) throws IOException
BytesRef.getUTF8SortedAsUnicodeComparator()
for
sorting.IOException
public SortedTermFreqIteratorWrapper(TermFreqIterator source, Comparator<BytesRef> comparator) throws IOException
IOException
public Comparator<BytesRef> getComparator()
BytesRefIterator
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.getComparator
in interface BytesRefIterator
public BytesRef next() throws IOException
BytesRefIterator
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.next
in interface BytesRefIterator
BytesRef
in the iterator or null
if
the end of the iterator is reached.IOException
- If there is a low-level I/O error.public long weight()
TermFreqIterator
weight
in interface TermFreqIterator
protected void encode(OfflineSorter.ByteSequencesWriter writer, ByteArrayDataOutput output, byte[] buffer, BytesRef spare, long weight) throws IOException
IOException
protected long decode(BytesRef scratch, ByteArrayDataInput tmpInput)
Copyright © 2000-2015 The Apache Software Foundation. All Rights Reserved.