Class QueryBuilder

  • All Implemented Interfaces:
    QueryTreeBuilder

    public class QueryBuilder
    extends java.lang.Object
    implements QueryTreeBuilder
    Implements the XPath query tree builder.
    • Constructor Summary

      Constructors 
      Constructor Description
      QueryBuilder()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean canHandle​(java.lang.String language)
      Returns true if this query tree builder can handle a statement in language.
      QueryRootNode createQueryTree​(java.lang.String statement, NameResolver resolver, QueryNodeFactory factory)
      Creates a QueryNode tree from a statement using the passed query node factory.
      java.lang.String[] getSupportedLanguages()
      This builder supports Query.XPATH.
      java.lang.String toString​(QueryRootNode root, NameResolver resolver)
      Creates a String representation of the query node tree in the syntax this QueryTreeBuilder can handle.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • QueryBuilder

        public QueryBuilder()
    • Method Detail

      • createQueryTree

        public QueryRootNode createQueryTree​(java.lang.String statement,
                                             NameResolver resolver,
                                             QueryNodeFactory factory)
                                      throws javax.jcr.query.InvalidQueryException
        Creates a QueryNode tree from a statement using the passed query node factory.
        Specified by:
        createQueryTree in interface QueryTreeBuilder
        Parameters:
        statement - the statement.
        resolver - the name resolver to use.
        factory - the query node factory to use.
        Returns:
        the QueryNode tree for the statement.
        Throws:
        javax.jcr.query.InvalidQueryException - if the statement is malformed.
      • canHandle

        public boolean canHandle​(java.lang.String language)
        Returns true if this query tree builder can handle a statement in language.
        Specified by:
        canHandle in interface QueryTreeBuilder
        Parameters:
        language - the language of a query statement to build a query tree.
        Returns:
        true if this builder can handle language; false otherwise.
      • getSupportedLanguages

        public java.lang.String[] getSupportedLanguages()
        This builder supports Query.XPATH. Returns the set of query languages supported by this builder.
        Specified by:
        getSupportedLanguages in interface QueryTreeBuilder
        Returns:
        String array containing the names of the supported languages.
      • toString

        public java.lang.String toString​(QueryRootNode root,
                                         NameResolver resolver)
                                  throws javax.jcr.query.InvalidQueryException
        Creates a String representation of the query node tree in the syntax this QueryTreeBuilder can handle.
        Specified by:
        toString in interface QueryTreeBuilder
        Parameters:
        root - the root of the query node tree.
        resolver - to resolve Names.
        Returns:
        a String representation of the query node tree.
        Throws:
        javax.jcr.query.InvalidQueryException - if the query node tree cannot be converted into a String representation due to restrictions in this syntax.