com.swabunga.spell.event

Class AbstractWordTokenizer

public abstract class AbstractWordTokenizer extends Object implements WordTokenizer

This class tokenizes a input string.

It also allows for the string to be mutated. The result after the spell checking is completed is available to the call to getFinalText

Author: Jason Height(jheight@chariot.net.au) Anthony Roy (ajr@antroy.co.uk)

Field Summary
protected WordcurrentWord
The word being analyzed
protected WordFinderfinder
The word finder used to filter out words which are non pertinent to spell checking
protected BreakIteratorsentenceIterator
An iterator to work through the sentence
protected intwordCount
The cumulative word count that have been processed
Constructor Summary
AbstractWordTokenizer(String text)
Creates a new AbstractWordTokenizer object.
AbstractWordTokenizer(WordFinder wf)
Creates a new AbstractWordTokenizer object.
Method Summary
StringgetContext()
Returns the current text that is being tokenized (includes any changes that have been made)
intgetCurrentWordCount()
Returns the current number of words that have been processed
intgetCurrentWordEnd()
Returns the end of the current word in the text
intgetCurrentWordPosition()
Returns the index of the start of the current word in the text
booleanhasMoreWords()
Returns true if there are more words that can be processed in the string
booleanisNewSentence()
returns true if the current word is at the start of a sentence
StringnextWord()
Returns searches for the next word in the text, and returns that word.
abstract voidreplaceWord(String newWord)
Replaces the current word token

Field Detail

currentWord

protected Word currentWord
The word being analyzed

finder

protected WordFinder finder
The word finder used to filter out words which are non pertinent to spell checking

sentenceIterator

protected BreakIterator sentenceIterator
An iterator to work through the sentence

wordCount

protected int wordCount
The cumulative word count that have been processed

Constructor Detail

AbstractWordTokenizer

public AbstractWordTokenizer(String text)
Creates a new AbstractWordTokenizer object.

Parameters: text the text to process.

AbstractWordTokenizer

public AbstractWordTokenizer(WordFinder wf)
Creates a new AbstractWordTokenizer object.

Parameters: wf the custom WordFinder to use in searching for words.

Method Detail

getContext

public String getContext()
Returns the current text that is being tokenized (includes any changes that have been made)

Returns: the text being tokenized.

getCurrentWordCount

public int getCurrentWordCount()
Returns the current number of words that have been processed

Returns: number of words so far iterated.

getCurrentWordEnd

public int getCurrentWordEnd()
Returns the end of the current word in the text

Returns: index in string of the end of the current word.

Throws: WordNotFoundException current word has not yet been set.

getCurrentWordPosition

public int getCurrentWordPosition()
Returns the index of the start of the current word in the text

Returns: index in string of the start of the current word.

Throws: WordNotFoundException current word has not yet been set.

hasMoreWords

public boolean hasMoreWords()
Returns true if there are more words that can be processed in the string

Returns: true if there are further words in the text.

isNewSentence

public boolean isNewSentence()
returns true if the current word is at the start of a sentence

Returns: true if the current word starts a sentence.

Throws: WordNotFoundException current word has not yet been set.

nextWord

public String nextWord()
Returns searches for the next word in the text, and returns that word.

Returns: the string representing the current word.

Throws: WordNotFoundException search string contains no more words.

replaceWord

public abstract void replaceWord(String newWord)
Replaces the current word token

Parameters: newWord replacement word.

Throws: WordNotFoundException current word has not yet been set.