Interface SymbolResolver
- All Known Implementing Classes:
AbstractSymbolResolver
,JavaQueryCompiler
,JDOQLCompiler
,JDOQLSymbolResolver
,JPQLCompiler
,JPQLSymbolResolver
public interface SymbolResolver
Interface for use in the resolution of symbols during query compilation.
-
Method Summary
Modifier and TypeMethodDescriptionboolean
Whether names of symbols are case-sensitive (e.g JDOQL returns true, but JPQL returns false).Accessor for the candidate class of the query.resolveClass
(String className) Method to resolve the provided name to a class (if possible).boolean
Whether we should accept implicit variables in the query.
-
Method Details
-
getType
-
getPrimaryClass
Class getPrimaryClass()Accessor for the candidate class of the query.- Returns:
- The candidate class
-
resolveClass
Method to resolve the provided name to a class (if possible). Some query languages allow definition of imports of packages to check (e.g JDOQL) and so use this as a hook for that capability.- Parameters:
className
- Name of the prospective "class"- Returns:
- The resolved class
- Throws:
ClassNotResolvedException
- if not found
-
supportsImplicitVariables
boolean supportsImplicitVariables()Whether we should accept implicit variables in the query. JDOQL supports variables, yet JPQL doesn't. Also in JDOQL if the user supplies some explicit variables then it doesn't allow implicit variables.- Returns:
- Whether to support implicit variables
-
caseSensitiveSymbolNames
boolean caseSensitiveSymbolNames()Whether names of symbols are case-sensitive (e.g JDOQL returns true, but JPQL returns false).- Returns:
- Whether case sensitive
-