org.apache.lucene.search.suggest
Class SortedTermFreqIteratorWrapper

java.lang.Object
  extended by 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.

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
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).
 
Method Summary
protected  long decode(BytesRef scratch, ByteArrayDataInput tmpInput)
          decodes the weight at the current position
protected  void encode(Sort.ByteSequencesWriter writer, ByteArrayDataOutput output, byte[] buffer, BytesRef spare, long weight)
          encodes an entry (bytes+weight) to the provided writer
 Comparator<BytesRef> getComparator()
           
 BytesRef next()
           
 long weight()
          A term's weight, higher numbers mean better suggestions.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SortedTermFreqIteratorWrapper

public SortedTermFreqIteratorWrapper(TermFreqIterator source)
                              throws IOException
Creates a new sorted wrapper, using BytesRef.getUTF8SortedAsUnicodeComparator() for sorting.

Throws:
IOException

SortedTermFreqIteratorWrapper

public SortedTermFreqIteratorWrapper(TermFreqIterator source,
                                     Comparator<BytesRef> comparator)
                              throws IOException
Creates a new sorted wrapper, sorting by BytesRef (ascending) then cost (ascending).

Throws:
IOException
Method Detail

getComparator

public Comparator<BytesRef> getComparator()
Specified by:
getComparator in interface BytesRefIterator

next

public BytesRef next()
              throws IOException
Specified by:
next in interface BytesRefIterator
Throws:
IOException

weight

public long weight()
Description copied from interface: TermFreqIterator
A term's weight, higher numbers mean better suggestions.

Specified by:
weight in interface TermFreqIterator

encode

protected void encode(Sort.ByteSequencesWriter writer,
                      ByteArrayDataOutput output,
                      byte[] buffer,
                      BytesRef spare,
                      long weight)
               throws IOException
encodes an entry (bytes+weight) to the provided writer

Throws:
IOException

decode

protected long decode(BytesRef scratch,
                      ByteArrayDataInput tmpInput)
decodes the weight at the current position



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