Package com.swabunga.spell.engine
Class SpellDictionaryDichoDisk
- java.lang.Object
-
- com.swabunga.spell.engine.SpellDictionaryASpell
-
- com.swabunga.spell.engine.SpellDictionaryDichoDisk
-
- All Implemented Interfaces:
SpellDictionary
- Direct Known Subclasses:
SpellDictionaryCachedDichoDisk
public class SpellDictionaryDichoDisk extends SpellDictionaryASpell
Another implementation ofSpellDictionary
that doesn't cache any words in memory. Avoids the huge footprint ofSpellDictionaryHashMap
at the cost of relatively minor latency. A future version of this class that implements some caching strategies might be a good idea in the future, if there's any demand for it. This implementation requires a special dictionary file, with "code*word" lines sorted by code. It's using a dichotomy algorithm to search for words in the dictionary- Version:
- 0.1
- Author:
- Damien Guillaume
-
-
Field Summary
-
Fields inherited from class com.swabunga.spell.engine.SpellDictionaryASpell
tf
-
-
Constructor Summary
Constructors Constructor Description SpellDictionaryDichoDisk(java.io.File wordList)
Dictionary convenience Constructor.SpellDictionaryDichoDisk(java.io.File wordList, java.io.File phonetic)
Dictionary constructor that uses an aspell phonetic file to build the transformation table.SpellDictionaryDichoDisk(java.io.File wordList, java.io.File phonetic, java.lang.String encoding)
Dictionary constructor that uses an aspell phonetic file to build the transformation table.SpellDictionaryDichoDisk(java.io.File wordList, java.lang.String encoding)
Dictionary convenience Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addWord(java.lang.String word)
Add a word permanently to the dictionary (and the dictionary file).java.util.List
getWords(java.lang.String code)
Returns a list of strings (words) for the code.-
Methods inherited from class com.swabunga.spell.engine.SpellDictionaryASpell
getCode, getSuggestions, getSuggestions, isCorrect
-
-
-
-
Constructor Detail
-
SpellDictionaryDichoDisk
public SpellDictionaryDichoDisk(java.io.File wordList) throws java.io.FileNotFoundException, java.io.IOException
Dictionary convenience Constructor.- Parameters:
wordList
- The file containing the words list for the dictionary- Throws:
java.io.FileNotFoundException
- indicates problems locating the words list file on the systemjava.io.IOException
- indicates problems reading the words list file
-
SpellDictionaryDichoDisk
public SpellDictionaryDichoDisk(java.io.File wordList, java.lang.String encoding) throws java.io.FileNotFoundException, java.io.IOException
Dictionary convenience Constructor.- Parameters:
wordList
- The file containing the words list for the dictionaryencoding
- Uses the character set encoding specified- Throws:
java.io.FileNotFoundException
- indicates problems locating the words list file on the systemjava.io.IOException
- indicates problems reading the words list file
-
SpellDictionaryDichoDisk
public SpellDictionaryDichoDisk(java.io.File wordList, java.io.File phonetic) throws java.io.FileNotFoundException, java.io.IOException
Dictionary constructor that uses an aspell phonetic file to build the transformation table.- Parameters:
wordList
- The file containing the words list for the dictionaryphonetic
- The file to use for phonetic transformation of the wordlist.- Throws:
java.io.FileNotFoundException
- indicates problems locating the file on the systemjava.io.IOException
- indicates problems reading the words list file
-
SpellDictionaryDichoDisk
public SpellDictionaryDichoDisk(java.io.File wordList, java.io.File phonetic, java.lang.String encoding) throws java.io.FileNotFoundException, java.io.IOException
Dictionary constructor that uses an aspell phonetic file to build the transformation table.- Parameters:
wordList
- The file containing the words list for the dictionaryphonetic
- The file to use for phonetic transformation of the wordlist.encoding
- Uses the character set encoding specified- Throws:
java.io.FileNotFoundException
- indicates problems locating the file on the systemjava.io.IOException
- indicates problems reading the words list file
-
-
Method Detail
-
addWord
public void addWord(java.lang.String word)
Add a word permanently to the dictionary (and the dictionary file). not implemented !- Parameters:
word
- The word to add.
-
getWords
public java.util.List getWords(java.lang.String code)
Returns a list of strings (words) for the code.- Specified by:
getWords
in classSpellDictionaryASpell
- Parameters:
code
- The phonetic code common to the list of words- Returns:
- A list of words having the same phonetic code
-
-