Class CommonGramsQueryFilter
- java.lang.Object
-
- org.apache.lucene.util.AttributeSource
-
- org.apache.lucene.analysis.TokenStream
-
- org.apache.lucene.analysis.TokenFilter
-
- org.apache.lucene.analysis.commongrams.CommonGramsQueryFilter
-
- All Implemented Interfaces:
Closeable,AutoCloseable,Unwrappable<TokenStream>
public final class CommonGramsQueryFilter extends TokenFilter
Wrap a CommonGramsFilter optimizing phrase queries by only returning single words when they are not a member of a bigram.Example:
- query input to CommonGramsFilter: "the rain in spain falls mainly"
- output of CommomGramsFilter/input to CommonGramsQueryFilter: |"the, "the-rain"|"rain" "rain-in"|"in, "in-spain"|"spain"|"falls"|"mainly"
- output of CommonGramsQueryFilter:"the-rain", "rain-in" ,"in-spain", "falls", "mainly"
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.lucene.util.AttributeSource
AttributeSource.State
-
-
Field Summary
-
Fields inherited from class org.apache.lucene.analysis.TokenFilter
input
-
Fields inherited from class org.apache.lucene.analysis.TokenStream
DEFAULT_TOKEN_ATTRIBUTE_FACTORY
-
-
Constructor Summary
Constructors Constructor Description CommonGramsQueryFilter(CommonGramsFilter input)Constructs a new CommonGramsQueryFilter based on the provided CommomGramsFilter
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanincrementToken()Output bigrams whenever possible to optimize queries.booleanisGramType()Convenience method to check if the current type is a gram typevoidreset()-
Methods inherited from class org.apache.lucene.analysis.TokenFilter
close, end, unwrap
-
Methods inherited from class org.apache.lucene.util.AttributeSource
addAttribute, addAttributeImpl, captureState, clearAttributes, cloneAttributes, copyTo, endAttributes, equals, getAttribute, getAttributeClassesIterator, getAttributeFactory, getAttributeImplsIterator, hasAttribute, hasAttributes, hashCode, reflectAsString, reflectWith, removeAllAttributes, restoreState, toString
-
-
-
-
Constructor Detail
-
CommonGramsQueryFilter
public CommonGramsQueryFilter(CommonGramsFilter input)
Constructs a new CommonGramsQueryFilter based on the provided CommomGramsFilter- Parameters:
input- CommonGramsFilter the QueryFilter will use
-
-
Method Detail
-
reset
public void reset() throws IOException- Overrides:
resetin classTokenFilter- Throws:
IOException
-
incrementToken
public boolean incrementToken() throws IOExceptionOutput bigrams whenever possible to optimize queries. Only output unigrams when they are not a member of a bigram. Example:- input: "the rain in spain falls mainly"
- output:"the-rain", "rain-in" ,"in-spain", "falls", "mainly"
- Specified by:
incrementTokenin classTokenStream- Throws:
IOException
-
isGramType
public boolean isGramType()
Convenience method to check if the current type is a gram type- Returns:
trueif the current type is a gram type,falseotherwise
-
-