Package org.apache.lucene.search.suggest
Class Lookup
- java.lang.Object
-
- org.apache.lucene.search.suggest.Lookup
-
- Direct Known Subclasses:
AnalyzingInfixSuggester,AnalyzingSuggester,FreeTextSuggester,FSTCompletionLookup,JaspellLookup,TSTLookup,WFSTCompletionLookup
public abstract class Lookup extends java.lang.ObjectSimple Lookup interface forCharSequencesuggestions.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classLookup.LookupPriorityQueueAPriorityQueuecollecting a fixed size of high priorityLookup.LookupResultstatic classLookup.LookupResultResult of a lookup.
-
Field Summary
Fields Modifier and Type Field Description static java.util.Comparator<java.lang.CharSequence>CHARSEQUENCE_COMPARATORA simple char-by-char comparator forCharSequence
-
Constructor Summary
Constructors Constructor Description Lookup()Sole constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidbuild(Dictionary dict)Build lookup from a dictionary.abstract voidbuild(InputIterator inputIterator)Builds up a new internalLookuprepresentation based on the givenInputIterator.abstract longgetCount()Get the number of entries the lookup was built withbooleanload(java.io.InputStream input)abstract booleanload(DataInput input)Discard current lookup data and load it from a previously saved copy.abstract java.util.List<Lookup.LookupResult>lookup(java.lang.CharSequence key, boolean onlyMorePopular, int num)Look up a key and return possible completion for this key.abstract longsizeInBytes()Get the size of the underlying lookup implementation in memorybooleanstore(java.io.OutputStream output)abstract booleanstore(DataOutput output)Persist the constructed lookup data to a directory.
-
-
-
Method Detail
-
build
public void build(Dictionary dict) throws java.io.IOException
Build lookup from a dictionary. Some implementations may require sorted or unsorted keys from the dictionary's iterator - useSortedInputIteratororUnsortedInputIteratorin such case.- Throws:
java.io.IOException
-
load
public boolean load(java.io.InputStream input) throws java.io.IOException- Throws:
java.io.IOException
-
store
public boolean store(java.io.OutputStream output) throws java.io.IOException- Throws:
java.io.IOException
-
getCount
public abstract long getCount()
Get the number of entries the lookup was built with- Returns:
- total number of suggester entries
-
build
public abstract void build(InputIterator inputIterator) throws java.io.IOException
Builds up a new internalLookuprepresentation based on the givenInputIterator. The implementation might re-sort the data internally.- Throws:
java.io.IOException
-
lookup
public abstract java.util.List<Lookup.LookupResult> lookup(java.lang.CharSequence key, boolean onlyMorePopular, int num)
Look up a key and return possible completion for this key.- Parameters:
key- lookup key. Depending on the implementation this may be a prefix, misspelling, or even infix.onlyMorePopular- return only more popular resultsnum- maximum number of results to return- Returns:
- a list of possible completions, with their relative weight (e.g. popularity)
-
store
public abstract boolean store(DataOutput output) throws java.io.IOException
Persist the constructed lookup data to a directory. Optional operation.- Parameters:
output-DataOutputto write the data to.- Returns:
- true if successful, false if unsuccessful or not supported.
- Throws:
java.io.IOException- when fatal IO error occurs.
-
load
public abstract boolean load(DataInput input) throws java.io.IOException
Discard current lookup data and load it from a previously saved copy. Optional operation.- Parameters:
input- theDataInputto load the lookup data.- Returns:
- true if completed successfully, false if unsuccessful or not supported.
- Throws:
java.io.IOException- when fatal IO error occurs.
-
sizeInBytes
public abstract long sizeInBytes()
Get the size of the underlying lookup implementation in memory- Returns:
- ram size of the lookup implementation in bytes
-
-