Class PathQueryNode
java.lang.Object
org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl
org.apache.lucene.queryparser.flexible.core.nodes.PathQueryNode
A
PathQueryNode
is used to store queries like /company/USA/California
/product/shoes/brown. QueryText are objects that contain the text, begin position and end
position in the query.
Example how the text parser creates these objects:
List values = ArrayList(); values.add(new PathQueryNode.QueryText("company", 1, 7)); values.add(new PathQueryNode.QueryText("USA", 9, 12)); values.add(new PathQueryNode.QueryText("California", 14, 23)); QueryNode q = new PathQueryNode(values);
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Term text with a beginning and end position -
Field Summary
Fields inherited from class org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl
PLAINTEXT_FIELD_NAME, toQueryStringIgnoreFields
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionRecursive clone the QueryNode tree The tags are not copied to the new tree when you call the cloneTree() methodReturns the CharSequence value of a specific QueryText elementgetPathElement
(int index) Returns the a specific QueryText elementReturns the a List with all QueryText elementsgetPathElements
(int startIndex) Returns a List QueryText element from position startIndexvoid
setPathElements
(List<PathQueryNode.QueryText> elements) Returns the a List with all QueryText elementstoQueryString
(EscapeQuerySyntax escaper) convert to a query string understood by the query parsertoString()
Every implementation of this class should return pseudo xml like this:Methods inherited from class org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl
add, add, allocate, clone, containsTag, getChildren, getParent, getTag, getTagMap, isDefaultField, isLeaf, isRoot, removeChildren, removeFromParent, set, setLeaf, setTag, unsetTag
-
Constructor Details
-
PathQueryNode
- Parameters:
pathElements
- - List of QueryText objects
-
-
Method Details
-
getPathElements
Returns the a List with all QueryText elements- Returns:
- QueryText List size
-
setPathElements
Returns the a List with all QueryText elements -
getPathElement
Returns the a specific QueryText element- Returns:
- QueryText List size
-
getFirstPathElement
Returns the CharSequence value of a specific QueryText element- Returns:
- the CharSequence for a specific QueryText element
-
getPathElements
Returns a List QueryText element from position startIndex- Returns:
- a List QueryText element from position startIndex
-
toQueryString
Description copied from interface:QueryNode
convert to a query string understood by the query parser -
toString
Description copied from class:QueryNodeImpl
Every implementation of this class should return pseudo xml like this:For FieldQueryNode: <field start='1' end='2' field='subject' text='foo'/>
- Specified by:
toString
in interfaceQueryNode
- Overrides:
toString
in classQueryNodeImpl
- See Also:
-
cloneTree
Description copied from interface:QueryNode
Recursive clone the QueryNode tree The tags are not copied to the new tree when you call the cloneTree() method- Specified by:
cloneTree
in interfaceQueryNode
- Overrides:
cloneTree
in classQueryNodeImpl
- Returns:
- the cloned tree
- Throws:
CloneNotSupportedException
-