EclipseLink 2.4.2, build 'v20130514-5956486' API Reference

org.eclipse.persistence.jpa.jpql.model
Interface IJPQLQueryBuilder

All Known Implementing Classes:
AbstractJPQLQueryBuilder, DefaultEclipseLinkJPQLQueryBuilder, DefaultJPQLQueryBuilder, EclipseLinkJPQLQueryBuilder, JPQLQueryBuilder1_0, JPQLQueryBuilder2_0, JPQLQueryBuilder2_1, JPQLQueryBuilderWrapper

public interface IJPQLQueryBuilder

This builder is responsible to create an editable StateObject representation of a JPQL query.

Some default implementations are available:

Version:
2.4
See Also:
IManagedTypeProvider, StateObject
Author:
Pascal Filion
Since:
2.4

Method Summary
 ICaseExpressionStateObjectBuilder buildCaseExpressionStateObjectBuilder(StateObject parent)
          Creates a builder that can create a CASE expression programmatically.
 JPQLQueryStateObject buildStateObject(IManagedTypeProvider provider, java.lang.CharSequence jpqlQuery, boolean tolerant)
          Creates a state model representation of a JPQL query that can be edited.
 JPQLQueryStateObject buildStateObject(IManagedTypeProvider provider, java.lang.CharSequence jpqlQuery, java.lang.String queryBNFId, boolean tolerant)
          Creates a state model representation of a JPQL query that can be edited.
 StateObject buildStateObject(StateObject parent, java.lang.CharSequence jpqlFragment, java.lang.String queryBNFId)
          Creates a StateObject representation of the given JPQL fragment.
 IConditionalExpressionStateObjectBuilder buildStateObjectBuilder(AbstractConditionalClauseStateObject stateObject)
          Creates a builder that can create a conditional expression programmatically.
 ISelectExpressionStateObjectBuilder buildStateObjectBuilder(SelectClauseStateObject stateObject)
          Creates a builder that can create a select expression programmatically.
 ISimpleSelectExpressionStateObjectBuilder buildStateObjectBuilder(SimpleSelectClauseStateObject stateObject)
          Creates a builder that can create a single select expression programmatically.
 INewValueStateObjectBuilder buildStateObjectBuilder(UpdateItemStateObject stateObject)
          Creates a builder that can create a new value expression programmatically.
 JPQLGrammar getGrammar()
          Returns the JPQLGrammar that is associated with this builder.
 

Method Detail

buildCaseExpressionStateObjectBuilder

ICaseExpressionStateObjectBuilder buildCaseExpressionStateObjectBuilder(StateObject parent)
Creates a builder that can create a CASE expression programmatically. Once the expression is complete, ICaseExpressionStateObjectBuilder.buildStateObject() will return the result.

Parameters:
parent - The StateObject that will be the parent of the newly created model
Returns:
The builder of a CASE expression

buildStateObject

JPQLQueryStateObject buildStateObject(IManagedTypeProvider provider,
                                      java.lang.CharSequence jpqlQuery,
                                      boolean tolerant)
Creates a state model representation of a JPQL query that can be edited.

Parameters:
provider - The provider of managed types
jpqlQuery - The JPQL query to parse into a StateObject model
tolerant - Determines if the parsing system should be tolerant, meaning if it should try to parse invalid or incomplete queries
Returns:
The root of the StateObject model that represents the edited form of the JPQL query

buildStateObject

JPQLQueryStateObject buildStateObject(IManagedTypeProvider provider,
                                      java.lang.CharSequence jpqlQuery,
                                      java.lang.String queryBNFId,
                                      boolean tolerant)
Creates a state model representation of a JPQL query that can be edited.

Parameters:
provider - The provider of managed types
jpqlQuery - The JPQL query to parse into a StateObject model
queryBNFId - The unique identifier of the query BNF that will be used to parse the fragment
tolerant - Determines if the parsing system should be tolerant, meaning if it should try to parse invalid or incomplete queries
Returns:
The root of the StateObject model that represents the edited form of the JPQL query

buildStateObject

StateObject buildStateObject(StateObject parent,
                             java.lang.CharSequence jpqlFragment,
                             java.lang.String queryBNFId)
Creates a StateObject representation of the given JPQL fragment. In order to properly parse the fragment, the given unique identifier of the parser.JPQLQueryBNF JPQLQueryBNF will determine how to parse it.

It is possible the given JPQL fragment has more than one expression, in this case, parsing should stop at the first comma (x, y) or space (x y) where x and y are two separate expressions.

Parameters:
parent - The StateObject that will be the parent of the newly created model
jpqlFragment - A portion of a JPQL query that will be parsed and the StateObject representation will be created
queryBNFId - The unique identifier of the query BNF that will be used to parse the fragment
Returns:
The StateObject representation of the given JPQL fragment

buildStateObjectBuilder

IConditionalExpressionStateObjectBuilder buildStateObjectBuilder(AbstractConditionalClauseStateObject stateObject)
Creates a builder that can create a conditional expression programmatically. Once the expression is complete, IConditionalExpressionStateObjectBuilder.commit() will push the result onto the given state object.

Parameters:
stateObject - The clause for which a conditional expression can be created
Returns:
The builder of a conditional expression

buildStateObjectBuilder

ISelectExpressionStateObjectBuilder buildStateObjectBuilder(SelectClauseStateObject stateObject)
Creates a builder that can create a select expression programmatically. Once the expression is complete, ISelectExpressionStateObjectBuilder.commit() will push the result onto the given state object.

Parameters:
stateObject - The clause for which one or many select expressions can be created
Returns:
The builder of a conditional expression

buildStateObjectBuilder

ISimpleSelectExpressionStateObjectBuilder buildStateObjectBuilder(SimpleSelectClauseStateObject stateObject)
Creates a builder that can create a single select expression programmatically. Once the expression is complete, ISimpleSelectExpressionStateObjectBuilder.commit() will push the result onto the given state object.

Parameters:
stateObject - The clause for which a select expression can be created
Returns:
The builder of a conditional expression

buildStateObjectBuilder

INewValueStateObjectBuilder buildStateObjectBuilder(UpdateItemStateObject stateObject)
Creates a builder that can create a new value expression programmatically. Once the expression is complete, INewValueStateObjectBuilder.commit() will push the result onto the given state object.

Parameters:
stateObject - The parent for which a new value expression can be created
Returns:
The builder of a new value expression

getGrammar

JPQLGrammar getGrammar()
Returns the JPQLGrammar that is associated with this builder.

Returns:
The JPQLGrammar that was used to parse the JPQL query or JPQL fragments

EclipseLink 2.4.2, build 'v20130514-5956486' API Reference