org.modeshape.jcr.query
Class JcrQomQueryParser

java.lang.Object
  extended by org.modeshape.graph.query.parse.SqlQueryParser
      extended by org.modeshape.jcr.query.JcrSql2QueryParser
          extended by org.modeshape.jcr.query.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.graph.query.parse.SqlQueryParser
SqlQueryParser.SqlTokenizer
 
Field Summary
static String LANGUAGE
           
 
Constructor Summary
JcrQomQueryParser()
           
 
Method Summary
 String getLanguage()
          Get the name of the language that this parser is able to understand.
 
Methods inherited from class org.modeshape.jcr.query.JcrSql2QueryParser
and, arithmeticOperand, between, bindVariableName, childNode, childNodeJoinCondition, column, columns, comparison, descendantNode, descendantNodeJoinCondition, equiJoinCondition, fullTextSearch, fullTextSearchScore, join, length, limit, literal, lowerCase, nodeDepth, nodeLocalName, nodeName, nodePath, not, or, ordering, orderings, parseNamedSelector, parseSetQuery, propertyExistence, propertyValue, query, referenceValue, referenceValue, sameNode, sameNodeJoinCondition, sameNodeJoinCondition, setCriteria, setQuery, subquery, upperCase
 
Methods inherited from class org.modeshape.graph.query.parse.SqlQueryParser
equals, parseComparisonOperator, parseConstraint, parseDynamicOperand, parseFrom, parseFullTextSearchExpression, parseInClause, parseJoinCondition, parseLimit, parseLiteral, parseLiteralValue, parseName, parseName, parseOrderBy, parseOrdering, parsePath, parsePropertyExistance, parsePropertyValue, parseQuery, parseQuery, parseQueryCommand, parseReferenceValue, parseSelect, parseSelectorName, parseStaticOperand, parseWhere, removeBracketsAndQuotes, removeBracketsAndQuotes, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, 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()
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-2010 JBoss, a division of Red Hat. All Rights Reserved.