Save This Page
Home » apache-openjpa-1.1.0-source » org.apache.openjpa » kernel » jpql » [javadoc | source]
org.apache.openjpa.kernel.jpql
public class: JPQLExpressionBuilder [javadoc | source]
java.lang.Object
   org.apache.openjpa.kernel.exps.AbstractExpressionBuilder
      org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder

All Implemented Interfaces:
    JPQLTreeConstants

Builder for JPQL expressions. This class takes the query parsed in JPQL and converts it to an expression tree using an ExpressionFactory . Public for unit testing purposes.
Nested Class Summary:
abstract protected static class  JPQLExpressionBuilder.JPQLNode  Base node that will be generated by the JPQLExpressionBuilder; base class of the {@link SimpleNode} that is used by {@link JPQL}. 
public static class  JPQLExpressionBuilder.ParsedJPQL  Public for unit testing purposes. 
Fields inherited from org.apache.openjpa.kernel.exps.AbstractExpressionBuilder:
EX_USER,  EX_FATAL,  EX_UNSUPPORTED,  TYPE_OBJECT,  TYPE_STRING,  TYPE_CHAR_OBJ,  TYPE_NUMBER,  TYPE_COLLECTION,  TYPE_MAP,  CONTAINS_TYPE_ELEMENT,  CONTAINS_TYPE_KEY,  CONTAINS_TYPE_VALUE,  resolver,  factory
Constructor:
 public JPQLExpressionBuilder(ExpressionFactory factory,
    ExpressionStoreQuery query,
    Object parsedQuery) 
    Constructor.
    Parameters:
    factory - the expression factory to use
    query - used to resolve variables, parameters, and class names used in the query
    parsedQuery - the parsed query
Method from org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder Summary:
currentQuery,   evalFetchJoins,   evalSetClause,   getCandidateMetaData,   getClassLoader,   getDeclaredVariableType,   getLocalizer,   getParsedQuery,   getParsedQuery,   getQueryExpressions,   getVariable,   isDeclaredVariable,   isPath,   isSeendVariable,   resolveClassMetaData,   setImplicitTypes
Methods from org.apache.openjpa.kernel.exps.AbstractExpressionBuilder:
addAccessPath,   assertUnboundVariablesValid,   bind,   currentQuery,   getAccessPath,   getClassLoader,   getDeclaredVariableType,   getLocalizer,   getMetaData,   getMetaData,   getVariable,   isBound,   isDeclaredVariable,   isSeenVariable,   parseException,   setImplicitContainsTypes,   setImplicitType,   setImplicitTypes,   traversePath,   traversePath,   traverseStaticField,   traverseXPath
Methods from java.lang.Object:
equals,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder Detail:
 protected String currentQuery() 
 protected Expression evalFetchJoins(QueryExpressions exps) 
 protected  void evalSetClause(QueryExpressions exps) 
 protected ClassMetaData getCandidateMetaData(JPQLExpressionBuilder.JPQLNode node) 
 protected ClassLoader getClassLoader() 
 protected Class getDeclaredVariableType(String name) 
 protected Localizer getLocalizer() 
 protected JPQLExpressionBuilder.ParsedJPQL getParsedQuery() 
 protected JPQLExpressionBuilder.ParsedJPQL getParsedQuery(String jpql) 
 QueryExpressions getQueryExpressions() 
 protected Value getVariable(String id,
    boolean bind) 
    Identification variables in JPQL are case insensitive, so lower-case all variables we are going to bind.
 protected boolean isDeclaredVariable(String name) 
 boolean isPath(JPQLExpressionBuilder.JPQLNode node) 
    Check to see if the specific node is a path (vs. a schema name)
 protected boolean isSeendVariable(String id) 
 protected ClassMetaData resolveClassMetaData(JPQLExpressionBuilder.JPQLNode node) 
 protected  void setImplicitTypes(Value val1,
    Value val2,
    Class expected)