public class BooleanSingleChildOptimizationQueryNodeProcessor extends QueryNodeProcessorImpl
BooleanQueryNode
that contains only one
child and returns this child. If this child is ModifierQueryNode
that
was defined by the user. A modifier is not defined by the user when it's a
BooleanModifierNode
ModifierQueryNode
Constructor and Description |
---|
BooleanSingleChildOptimizationQueryNodeProcessor() |
Modifier and Type | Method and Description |
---|---|
protected QueryNode |
postProcessNode(QueryNode node)
This method is invoked for every node when walking up the tree.
|
protected QueryNode |
preProcessNode(QueryNode node)
This method is invoked for every node when walking down the tree.
|
protected List<QueryNode> |
setChildrenOrder(List<QueryNode> children)
This method is invoked for every node that has at least on child.
|
getQueryConfigHandler, process, processChildren, setQueryConfigHandler
public BooleanSingleChildOptimizationQueryNodeProcessor()
protected QueryNode postProcessNode(QueryNode node) throws QueryNodeException
QueryNodeProcessorImpl
postProcessNode
in class QueryNodeProcessorImpl
node
- node the query node to be post-processedQueryNodeException
- if something goes wrong during the query node processingprotected QueryNode preProcessNode(QueryNode node) throws QueryNodeException
QueryNodeProcessorImpl
preProcessNode
in class QueryNodeProcessorImpl
node
- the query node to be pre-processedQueryNodeException
- if something goes wrong during the query node processingprotected List<QueryNode> setChildrenOrder(List<QueryNode> children) throws QueryNodeException
QueryNodeProcessorImpl
QueryNodeProcessorImpl.postProcessNode(QueryNode)
is invoked.setChildrenOrder
in class QueryNodeProcessorImpl
children
- the list containing all current node's childrenQueryNodeException
- if something goes wrong during the query node processingCopyright © 2000-2021 Apache Software Foundation. All Rights Reserved.