Class JPQLGrammar2_2
- java.lang.Object
-
- org.eclipse.persistence.jpa.jpql.parser.AbstractJPQLGrammar
-
- org.eclipse.persistence.jpa.jpql.parser.JPQLGrammar2_2
-
- All Implemented Interfaces:
JPQLGrammar
public class JPQLGrammar2_2 extends AbstractJPQLGrammar
ThisJPQLGrammarprovides support for parsing JPQL queries defined in Java Persistence 2.2.
-
-
Constructor Summary
Constructors Constructor Description JPQLGrammar2_2()Creates an insance of Java Persistence 2.2 JPQL grammar.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected JPQLGrammarbuildBaseGrammar()Creates the baseJPQLGrammarthis one extends, if one exists.static voidextend(AbstractJPQLGrammar jpqlGrammar)Extends the givenJPQLGrammarwith the information of this one without instantiating the baseJPQLGrammar.JPAVersiongetJPAVersion()Returns theJPAVersionof the Java Persistence supported by this grammar.StringgetProvider()Returns the persistence provider name.StringgetProviderVersion()Returns the version of the persistence provider.protected voidinitializeBNFs()Registers the JPQL query BNFs defining the JPQL grammar.protected voidinitializeExpressionFactories()Registers theExpressionFactoriesrequired to properly parse JPQL queries.protected voidinitializeIdentifiers()Registers the JPQL identifiers support by thisJPQLGrammar.static JPQLGrammarinstance()Returns the singleton instance of the default implementation ofJPQLGrammarwhich provides support for the JPQL grammar defined in the JPA 2.2 functional specification.StringtoString()-
Methods inherited from class org.eclipse.persistence.jpa.jpql.parser.AbstractJPQLGrammar
addChildBNF, addChildFactory, addIdentifier, addIdentifiers, buildExpressionRegistry, getBaseGrammar, getExpressionRegistry, initialize, registerBNF, registerFactory, registerIdentifierRole, registerIdentifierVersion, setFallbackBNFId, setFallbackExpressionFactoryId, setHandleCollection, setHandleNestedArray, setHandleSubExpression
-
-
-
-
Method Detail
-
extend
public static void extend(AbstractJPQLGrammar jpqlGrammar)
Extends the givenJPQLGrammarwith the information of this one without instantiating the baseJPQLGrammar.- Parameters:
jpqlGrammar- TheJPQLGrammarto extend with the content of this one without instantiating the baseJPQLGrammar
-
instance
public static JPQLGrammar instance()
Returns the singleton instance of the default implementation ofJPQLGrammarwhich provides support for the JPQL grammar defined in the JPA 2.2 functional specification.- Returns:
- The
JPQLGrammarthat only has support for JPA 2.2
-
buildBaseGrammar
protected JPQLGrammar buildBaseGrammar()
Description copied from class:AbstractJPQLGrammarCreates the baseJPQLGrammarthis one extends, if one exists.IMPORTANT: The singleton instance of any
JPQLGrammar(for exampleJPQLGrammar1_0.instance()cannot be used, the API does not support extending it, a new instance has to be created.- Specified by:
buildBaseGrammarin classAbstractJPQLGrammar- Returns:
- The base
JPQLGrammarornullif there is no base grammar
-
getJPAVersion
public JPAVersion getJPAVersion()
Description copied from interface:JPQLGrammarReturns theJPAVersionof the Java Persistence supported by this grammar.- Returns:
- The
JPA versionsupported by this grammar
-
getProvider
public String getProvider()
Description copied from interface:JPQLGrammarReturns the persistence provider name.- Returns:
- The name of the persistence provider,
nullshould never be returned
-
getProviderVersion
public String getProviderVersion()
Description copied from interface:JPQLGrammarReturns the version of the persistence provider.- Returns:
- The version of the persistence provider, if one is extending the default JPQL grammar defined in the Java Persistence specification, otherwise returns an empty string
-
initializeBNFs
protected void initializeBNFs()
Description copied from class:AbstractJPQLGrammarRegisters the JPQL query BNFs defining the JPQL grammar.- Specified by:
initializeBNFsin classAbstractJPQLGrammar
-
initializeExpressionFactories
protected void initializeExpressionFactories()
Description copied from class:AbstractJPQLGrammarRegisters theExpressionFactoriesrequired to properly parse JPQL queries. AnExpressionFactoryis responsible to create anExpressionobject that represents a portion of the JPQL query.- Specified by:
initializeExpressionFactoriesin classAbstractJPQLGrammar
-
initializeIdentifiers
protected void initializeIdentifiers()
Description copied from class:AbstractJPQLGrammarRegisters the JPQL identifiers support by thisJPQLGrammar. The registration involves registering theJPAVersionand theIdentifierRole.- Specified by:
initializeIdentifiersin classAbstractJPQLGrammar
-
-