org.datanucleus.query.symbol
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
 boolean caseSensitiveSymbolNames()
          Whether names of symbols are case-sensitive (e.g JDOQL returns true, but JPQL returns false).
 java.lang.Class getPrimaryClass()
          Accessor for the candidate class of the query.
 java.lang.Class getType(java.util.List tuples)
           
 java.lang.Class resolveClass(java.lang.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

getType

java.lang.Class getType(java.util.List tuples)

getPrimaryClass

java.lang.Class getPrimaryClass()
Accessor for the candidate class of the query.

Returns:
The candidate class

resolveClass

java.lang.Class resolveClass(java.lang.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


Copyright © 2011. All Rights Reserved.