Class AnalyzerQueryNodeProcessor
- java.lang.Object
-
- org.apache.lucene.queryparser.flexible.core.processors.QueryNodeProcessorImpl
-
- org.apache.lucene.queryparser.flexible.standard.processors.AnalyzerQueryNodeProcessor
-
- All Implemented Interfaces:
QueryNodeProcessor
public class AnalyzerQueryNodeProcessor extends QueryNodeProcessorImpl
This processor verifies ifStandardQueryConfigHandler.ConfigurationKeys.ANALYZER
is defined in theQueryConfigHandler
. If it is and the analyzer is notnull
, it looks for everyFieldQueryNode
that is notWildcardQueryNode
,FuzzyQueryNode
orRangeQueryNode
contained in the query node tree, then it applies the analyzer to thatFieldQueryNode
object.
If the analyzer return only one term, the returned term is set to theFieldQueryNode
and it's returned.
If the analyzer return more than one term, aTokenizedPhraseQueryNode
orMultiPhraseQueryNode
is created, whether there is one or more terms at the same position, and it's returned.
If no term is returned by the analyzer aNoTokenFoundQueryNode
object is returned.
-
-
Constructor Summary
Constructors Constructor Description AnalyzerQueryNodeProcessor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description QueryNode
process(QueryNode queryTree)
Processes a query node tree.-
Methods inherited from class org.apache.lucene.queryparser.flexible.core.processors.QueryNodeProcessorImpl
getQueryConfigHandler, setQueryConfigHandler
-
-
-
-
Method Detail
-
process
public QueryNode process(QueryNode queryTree) throws QueryNodeException
Description copied from interface:QueryNodeProcessor
Processes a query node tree. It may return the same or another query tree. I should never returnnull
.- Specified by:
process
in interfaceQueryNodeProcessor
- Overrides:
process
in classQueryNodeProcessorImpl
- Parameters:
queryTree
- tree root node- Returns:
- the processed query tree
- Throws:
QueryNodeException
-
-