org.apache.lucene.queryParser.standard.processors
Class ParametricRangeQueryNodeProcessor
java.lang.Object
org.apache.lucene.queryParser.core.processors.QueryNodeProcessorImpl
org.apache.lucene.queryParser.standard.processors.ParametricRangeQueryNodeProcessor
- All Implemented Interfaces:
- QueryNodeProcessor
public class ParametricRangeQueryNodeProcessor
- extends QueryNodeProcessorImpl
This processor converts ParametricRangeQueryNode objects to
RangeQueryNode objects. It reads the lower and upper bounds value
from the ParametricRangeQueryNode object and try to parse their
values using a DateFormat. If the values cannot be parsed to a date
value, it will only create the RangeQueryNode using the non-parsed
values.
If a LocaleAttribute is defined in the QueryConfigHandler it
will be used to parse the date, otherwise Locale.getDefault() will be
used.
If a DateResolutionAttribute is defined and the DateTools.Resolution is
not null it will also be used to parse the date value.
This processor will also try to retrieve a RangeCollatorAttribute
from the QueryConfigHandler. If a RangeCollatorAttribute is
found and the Collator is not null, it's set on the
RangeQueryNode.
- See Also:
RangeCollatorAttribute,
DateResolutionAttribute,
LocaleAttribute,
RangeQueryNode,
ParametricRangeQueryNode
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ParametricRangeQueryNodeProcessor
public ParametricRangeQueryNodeProcessor()
postProcessNode
protected QueryNode postProcessNode(QueryNode node)
throws QueryNodeException
- Description copied from class:
QueryNodeProcessorImpl
- This method is invoked for every node when walking up the tree.
- Specified by:
postProcessNode in class QueryNodeProcessorImpl
- Parameters:
node - node the query node to be post-processed
- Returns:
- a query node
- Throws:
QueryNodeException - if something goes wrong during the query node processing
preProcessNode
protected QueryNode preProcessNode(QueryNode node)
throws QueryNodeException
- Description copied from class:
QueryNodeProcessorImpl
- This method is invoked for every node when walking down the tree.
- Specified by:
preProcessNode in class QueryNodeProcessorImpl
- Parameters:
node - the query node to be pre-processed
- Returns:
- a query node
- Throws:
QueryNodeException - if something goes wrong during the query node processing
setChildrenOrder
protected List<QueryNode> setChildrenOrder(List<QueryNode> children)
throws QueryNodeException
- Description copied from class:
QueryNodeProcessorImpl
- This method is invoked for every node that has at least on child. It's
invoked right before
QueryNodeProcessorImpl.postProcessNode(QueryNode) is invoked.
- Specified by:
setChildrenOrder in class QueryNodeProcessorImpl
- Parameters:
children - the list containing all current node's children
- Returns:
- a new list containing all children that should be set to the
current node
- Throws:
QueryNodeException - if something goes wrong during the query node processing
Copyright © 2000-2010 Apache Software Foundation. All Rights Reserved.