|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.jalios.jcms.search.spell.SpellChecker
public class SpellChecker
Spell Checker class (Main class)
(initially inspired by the David Spencer code).
Example Usage:
SpellChecker spellchecker = new SpellChecker(spellIndexDirectory); // To index a field of a user index: spellchecker.indexDictionary(new LuceneDictionary(my_lucene_reader, a_field)); // To index a file containing words: spellchecker.indexDictionary(new PlainTextDictionary(new File("myfile.txt"))); String[] suggestions = spellchecker.suggestSimilar("misspelt", 5);
Nested Class Summary | |
---|---|
class |
SpellChecker.IndexSearcherWrapper
For optimized used of the searcher, we keep it open as much as possible and delay its close only when it is replaced by a new one when modifying index. |
Field Summary | |
---|---|
static String |
MAX_BUFFERED_DOCS
Optionnal integer property name to define the maxBufferedDocs when writing in spellchecker index |
static String |
MAX_MERGE_DOCS
Optionnal integer property name to define the maxMergeDocs when writing in spellchecker index |
static String |
MERGE_FACTOR
Optionnal integer property name to define the mergeFactor when writing in spellchecker index |
static String |
REVISION
|
Constructor Summary | |
---|---|
SpellChecker(org.apache.lucene.store.Directory gramIndex)
Build a new SpellChecker. |
Method Summary | |
---|---|
void |
clearIndex()
Completely clear index from its content |
void |
closeAll()
|
boolean |
exist(String word)
Check whether the word exists in the index. |
void |
indexDictionary(Dictionary dict)
Index a Dictionary |
void |
renewReaderAndSeacher()
Renew internal reader and searcher, call this method after index change. |
String[] |
suggestSimilar(String word,
int num_sug)
Suggest similar words |
String[] |
suggestSimilar(String word,
int num_sug,
org.apache.lucene.index.IndexReader ir,
String field,
boolean morePopular)
Suggest similar words (restricted or not to a field of a user index) |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final String REVISION
public static final String MERGE_FACTOR
public static final String MAX_MERGE_DOCS
public static final String MAX_BUFFERED_DOCS
Constructor Detail |
---|
public SpellChecker(org.apache.lucene.store.Directory gramIndex) throws IOException
gramIndex
- the lucene directory in which to look and put indexed words (grams)
IOException
Method Detail |
---|
public void closeAll()
public String[] suggestSimilar(String word, int num_sug) throws IOException
word
- String the word you want a spell check done onnum_sug
- int the number of suggest words
IOException
public String[] suggestSimilar(String word, int num_sug, org.apache.lucene.index.IndexReader ir, String field, boolean morePopular) throws IOException
word
- String the word you want a spell check done onnum_sug
- int the number of suggest wordsir
- the indexReader of the user index (can be null see field param)field
- String the field of the user index: if field is not null, the suggested
words are restricted to the words present in this field.morePopular
- boolean return only the suggest words that are more frequent than the searched word
(only if restricted mode = (indexReader!=null and field!=null)
IOException
public boolean exist(String word) throws IOException
word
- String
IOException
public void indexDictionary(Dictionary dict) throws IOException
dict
- the dictionary to index
IOException
public void clearIndex() throws IOException
IOException
public void renewReaderAndSeacher() throws IOException
IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |