org.apache.lucene.search.suggest.fst
Class WFSTCompletionLookup

java.lang.Object
  extended by org.apache.lucene.search.suggest.Lookup
      extended by org.apache.lucene.search.suggest.fst.WFSTCompletionLookup

public class WFSTCompletionLookup
extends Lookup

Suggester based on a weighted FST: it first traverses the prefix, then walks the n shortest paths to retrieve top-ranked suggestions.

NOTE: Input weights must be between 0 and Integer.MAX_VALUE, any other values will be rejected.

WARNING: This API is experimental and might change in incompatible ways in the next release.

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.lucene.search.suggest.Lookup
Lookup.LookupPriorityQueue, Lookup.LookupResult
 
Field Summary
 
Fields inherited from class org.apache.lucene.search.suggest.Lookup
CHARSEQUENCE_COMPARATOR
 
Constructor Summary
WFSTCompletionLookup()
          Calls WFSTCompletionLookup(true)
WFSTCompletionLookup(boolean exactFirst)
          Creates a new suggester.
 
Method Summary
 void build(InputIterator iterator)
          Builds up a new internal Lookup representation based on the given InputIterator.
 Object get(CharSequence key)
          Returns the weight associated with an input string, or null if it does not exist.
 long getCount()
          Get the number of entries the lookup was built with
 boolean load(DataInput input)
          Discard current lookup data and load it from a previously saved copy.
 List<Lookup.LookupResult> lookup(CharSequence key, boolean onlyMorePopular, int num)
          Look up a key and return possible completion for this key.
 long sizeInBytes()
          Returns byte size of the underlying FST.
 boolean store(DataOutput output)
          Persist the constructed lookup data to a directory.
 
Methods inherited from class org.apache.lucene.search.suggest.Lookup
build, load, store
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WFSTCompletionLookup

public WFSTCompletionLookup()
Calls WFSTCompletionLookup(true)


WFSTCompletionLookup

public WFSTCompletionLookup(boolean exactFirst)
Creates a new suggester.

Parameters:
exactFirst - true if suggestions that match the prefix exactly should always be returned first, regardless of score. This has no performance impact, but could result in low-quality suggestions.
Method Detail

build

public void build(InputIterator iterator)
           throws IOException
Description copied from class: Lookup
Builds up a new internal Lookup representation based on the given InputIterator. The implementation might re-sort the data internally.

Specified by:
build in class Lookup
Throws:
IOException

store

public boolean store(DataOutput output)
              throws IOException
Description copied from class: Lookup
Persist the constructed lookup data to a directory. Optional operation.

Specified by:
store in class Lookup
Parameters:
output - DataOutput to write the data to.
Returns:
true if successful, false if unsuccessful or not supported.
Throws:
IOException - when fatal IO error occurs.

load

public boolean load(DataInput input)
             throws IOException
Description copied from class: Lookup
Discard current lookup data and load it from a previously saved copy. Optional operation.

Specified by:
load in class Lookup
Parameters:
input - the DataInput to load the lookup data.
Returns:
true if completed successfully, false if unsuccessful or not supported.
Throws:
IOException - when fatal IO error occurs.

lookup

public List<Lookup.LookupResult> lookup(CharSequence key,
                                        boolean onlyMorePopular,
                                        int num)
Description copied from class: Lookup
Look up a key and return possible completion for this key.

Specified by:
lookup in class Lookup
Parameters:
key - lookup key. Depending on the implementation this may be a prefix, misspelling, or even infix.
onlyMorePopular - return only more popular results
num - maximum number of results to return
Returns:
a list of possible completions, with their relative weight (e.g. popularity)

get

public Object get(CharSequence key)
Returns the weight associated with an input string, or null if it does not exist.


sizeInBytes

public long sizeInBytes()
Returns byte size of the underlying FST.

Specified by:
sizeInBytes in class Lookup
Returns:
ram size of the lookup implementation in bytes

getCount

public long getCount()
Description copied from class: Lookup
Get the number of entries the lookup was built with

Specified by:
getCount in class Lookup
Returns:
total number of suggester entries


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