Class EJBQLC
- java.lang.Object
-
- com.sun.jdo.spi.persistence.support.ejb.ejbqlc.EJBQLC
-
public class EJBQLC extends Object
This class is the driver of the EJBQL compiler. It controls the compiler passes: syntax analysis, semantic analysis and generation of the JDOQL query.A EJBQLC instance is able to compile multiple EJBQL queries as long as they come from the same deployement descriptor. The class uses the model instance passed to the constructor to access any meta data from the deployement descriptor. Method
compile(java.lang.String, java.lang.reflect.Method, int, boolean, java.lang.String)
compiles a single EJBQL query string together with the java.lang.reflect.Method instance of the corresponding finder/selector method. The result is a JDOQLElements instance, that can be used to construct a JDOQL query instance.- Author:
- Michael Bouschen, Shing Wai Chan
-
-
Field Summary
Fields Modifier and Type Field Description protected EJBQLAST
ast
The intermediate form of the EJBQL query string.protected Model
model
Meta data access.protected static ResourceBundle
msgs
I18N support.protected NameMapper
nameMapper
Name mapping EJB <-> JDO.static String
SIGNATURE
Signature with CVS keyword substitution for identifying the generated code
-
Constructor Summary
Constructors Constructor Description EJBQLC(Model model, NameMapper nameMapper)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description JDOQLElements
compile(String ejbqlQuery, Method method, int resultTypeMapping, boolean finderNotSelector, String ejbName)
Compiles the specified query string for the specified finder/selector method.
-
-
-
Field Detail
-
model
protected Model model
Meta data access.
-
nameMapper
protected NameMapper nameMapper
Name mapping EJB <-> JDO.
-
ast
protected EJBQLAST ast
The intermediate form of the EJBQL query string.
-
msgs
protected static final ResourceBundle msgs
I18N support.
-
SIGNATURE
public static final String SIGNATURE
Signature with CVS keyword substitution for identifying the generated code- See Also:
- Constant Field Values
-
-
Constructor Detail
-
EJBQLC
public EJBQLC(Model model, NameMapper nameMapper)
Constructor.- Parameters:
model
- meta data access.nameMapper
- name mapping EJB <-> JDO.
-
-
Method Detail
-
compile
public JDOQLElements compile(String ejbqlQuery, Method method, int resultTypeMapping, boolean finderNotSelector, String ejbName) throws EJBQLException
Compiles the specified query string for the specified finder/selector method.- Parameters:
ejbqlQuery
- the EJBQL query textmethod
- the Method instance of the finder or selectorresultTypeMapping
- result-type-mapping element from the DDfinderNotSelector
-true
indicates a finder,false
a selectorejbName
- the ejb name of the entity bean- Throws:
EJBQLException
-
-