org.modeshape.jcr.query.parse

## Class JcrQomQueryParser

- java.lang.Object
- - org.modeshape.jcr.query.parse.BasicSqlQueryParser
  - - org.modeshape.jcr.query.parse.JcrSql2QueryParser
    - - org.modeshape.jcr.query.parse.JcrQomQueryParser

- All Implemented Interfaces:
    QueryParser

      public class JcrQomQueryParser
      extends JcrSql2QueryParser

  A parser for the JCR Query Object Model language.

  The JCR 2.0 specification does not explicitly define a textual query language or grammar for the Query Object Model (the grammar in the specification is written more in terms of the code of a Java-like language). However, per the Section 6.9 of the JCR 2.0 specification, the `QueryManager.createQuery(String, String)` method

  > "is used for languages that are string-based (i.e., most languages, such as JCR-SQL2) as well as for the for the string serializations of non-string-based languages (such as JCR- JQOM)"

  Since the string serialization (that is, the `toString()` form) of our QueryCommand and related abstract query model objects are in fact equivalent to JCR-SQL2, this parser simply extends the `JcrSql2QueryParser`.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.modeshape.jcr.query.parse.BasicSqlQueryParser

      `BasicSqlQueryParser.SqlTokenizer`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `LANGUAGE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JcrQomQueryParser()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getLanguage()` Get the name of the language that this parser is able to understand.

    - ### Methods inherited from class org.modeshape.jcr.query.parse.JcrSql2QueryParser

      `literal`

    - ### Methods inherited from class org.modeshape.jcr.query.parse.BasicSqlQueryParser

      `and, arithmeticOperand, between, bindVariableName, childCount, childNode, childNodeJoinCondition, column, comparison, descendantNode, descendantNodeJoinCondition, equals, equiJoinCondition, fullTextSearch, fullTextSearch, fullTextSearchScore, hashCode, join, length, limit, lowerCase, nodeDepth, nodeId, nodeLocalName, nodeName, nodePath, not, or, ordering, parseBindVariableName, parseComparisonOperator, parseConstraint, parseDynamicOperand, parseFrom, parseFullTextSearchExpression, parseInClause, parseJoinCondition, parseLimit, parseLiteral, parseLiteralValue, parseName, parseName, parseNamedSelector, parseOrderBy, parseOrdering, parsePath, parsePropertyExistance, parsePropertyValue, parseQuery, parseQuery, parseQueryCommand, parseReferenceValue, parseSelect, parseSelectorName, parseSetQuery, parseStaticOperand, parseWhere, propertyExistence, propertyValue, query, referenceValue, referenceValue, removeBracketsAndQuotes, removeBracketsAndQuotes, sameNode, sameNodeJoinCondition, sameNodeJoinCondition, setCriteria, setQuery, subquery, toString, upperCase`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### LANGUAGE

          public static final String LANGUAGE

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### JcrQomQueryParser

          public JcrQomQueryParser()

  - ### Method Detail

    - #### getLanguage

          public String getLanguage()

      Description copied from interface: `QueryParser`
      Get the name of the language that this parser is able to understand.
      Specified by:
        `getLanguage` in interface `QueryParser`
      Overrides:
        `getLanguage` in class `JcrSql2QueryParser`
      Returns:
        the language name; never null
      See Also:
        `QueryParser.getLanguage()`

Copyright © 2008-2014 JBoss, a division of Red Hat. All Rights Reserved.