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
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
caseSensitiveSymbolNames()
Whether names of symbols are case-sensitive (e.g JDOQL returns true, but JPQL returns false).Class
getPrimaryClass()
Accessor for the candidate class of the query.Class
getType(List<String> tuples)
Class
resolveClass(String className)
Method to resolve the provided name to a class (if possible).boolean
supportsImplicitVariables()
Whether we should accept implicit variables in the query.
-
-
-
Method Detail
-
getPrimaryClass
Class getPrimaryClass()
Accessor for the candidate class of the query.- Returns:
- The candidate class
-
resolveClass
Class resolveClass(String className)
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
-
-