Class PathQueryNode

  • All Implemented Interfaces:
    java.lang.Cloneable, QueryNode

    public class PathQueryNode
    extends QueryNodeImpl
    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);
     
    • Constructor Detail

      • PathQueryNode

        public PathQueryNode​(java.util.List<PathQueryNode.QueryText> pathElements)
        Parameters:
        pathElements - - List of QueryText objects
    • Method Detail

      • getPathElements

        public java.util.List<PathQueryNode.QueryText> getPathElements()
        Returns the a List with all QueryText elements
        Returns:
        QueryText List size
      • setPathElements

        public void setPathElements​(java.util.List<PathQueryNode.QueryText> elements)
        Returns the a List with all QueryText elements
      • getPathElement

        public PathQueryNode.QueryText getPathElement​(int index)
        Returns the a specific QueryText element
        Returns:
        QueryText List size
      • getFirstPathElement

        public java.lang.CharSequence getFirstPathElement()
        Returns the CharSequence value of a specific QueryText element
        Returns:
        the CharSequence for a specific QueryText element
      • getPathElements

        public java.util.List<PathQueryNode.QueryText> getPathElements​(int startIndex)
        Returns a List QueryText element from position startIndex
        Returns:
        a List QueryText element from position startIndex
      • toQueryString

        public java.lang.CharSequence toQueryString​(EscapeQuerySyntax escaper)
        Description copied from interface: QueryNode
        convert to a query string understood by the query parser
      • toString

        public java.lang.String 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 interface QueryNode
        Overrides:
        toString in class QueryNodeImpl
        See Also:
        QueryNode.toString()
      • cloneTree

        public QueryNode cloneTree()
                            throws java.lang.CloneNotSupportedException
        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 interface QueryNode
        Overrides:
        cloneTree in class QueryNodeImpl
        Returns:
        the cloned tree
        Throws:
        java.lang.CloneNotSupportedException