Class CapitalizationFilter
- All Implemented Interfaces:
Closeable,AutoCloseable
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource
AttributeSource.AttributeFactory, AttributeSource.State -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final int -
Constructor Summary
ConstructorsConstructorDescriptionCreates a CapitalizationFilter with the default parameters.CapitalizationFilter(TokenStream in, boolean onlyFirstWord, CharArraySet keep, boolean forceFirstLetter, Collection<char[]> okPrefix, int minWordLength, int maxWordCount, int maxTokenLength) Creates a CapitalizationFilter with the specified parameters. -
Method Summary
Modifier and TypeMethodDescriptionbooleanConsumers (i.e.,IndexWriter) use this method to advance the stream to the next token.Methods inherited from class org.apache.lucene.analysis.TokenFilter
close, end, resetMethods inherited from class org.apache.lucene.util.AttributeSource
addAttribute, addAttributeImpl, captureState, clearAttributes, cloneAttributes, copyTo, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, reflectAsString, reflectWith, restoreState, toString
-
Field Details
-
DEFAULT_MAX_WORD_COUNT
public static final int DEFAULT_MAX_WORD_COUNT- See Also:
-
DEFAULT_MAX_TOKEN_LENGTH
public static final int DEFAULT_MAX_TOKEN_LENGTH- See Also:
-
-
Constructor Details
-
CapitalizationFilter
Creates a CapitalizationFilter with the default parameters. -
CapitalizationFilter
public CapitalizationFilter(TokenStream in, boolean onlyFirstWord, CharArraySet keep, boolean forceFirstLetter, Collection<char[]> okPrefix, int minWordLength, int maxWordCount, int maxTokenLength) Creates a CapitalizationFilter with the specified parameters.- Parameters:
in- input tokenstreamonlyFirstWord- should each word be capitalized or all of the words?keep- a keep word list. Each word that should be kept separated by whitespace.forceFirstLetter- Force the first letter to be capitalized even if it is in the keep list.okPrefix- do not change word capitalization if a word begins with something in this list.minWordLength- how long the word needs to be to get capitalization applied. If the minWordLength is 3, "and" > "And" but "or" stays "or".maxWordCount- if the token contains more then maxWordCount words, the capitalization is assumed to be correct.maxTokenLength- ???
-
-
Method Details
-
incrementToken
Description copied from class:TokenStreamConsumers (i.e.,IndexWriter) use this method to advance the stream to the next token. Implementing classes must implement this method and update the appropriateAttributeImpls with the attributes of the next token.The producer must make no assumptions about the attributes after the method has been returned: the caller may arbitrarily change it. If the producer needs to preserve the state for subsequent calls, it can use
AttributeSource.captureState()to create a copy of the current attribute state.This method is called for every token of a document, so an efficient implementation is crucial for good performance. To avoid calls to
AttributeSource.addAttribute(Class)andAttributeSource.getAttribute(Class), references to allAttributeImpls that this stream uses should be retrieved during instantiation.To ensure that filters and consumers know which attributes are available, the attributes must be added during instantiation. Filters and consumers are not required to check for availability of attributes in
TokenStream.incrementToken().- Specified by:
incrementTokenin classTokenStream- Returns:
- false for end of stream; true otherwise
- Throws:
IOException
-