Package org.datanucleus.store.query
Interface QueryManager
-
- All Known Implementing Classes:
FederatedQueryManagerImpl,QueryManagerImpl
public interface QueryManagerInterface providing a way of creating instances of queries for datastores, caching of generic and datastore compilations, as well as caching query results.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddDatastoreQueryCompilation(String datastore, String language, String query, Object compilation)Method to store the datastore-specific compilation for a query.voidaddQueryCompilation(String language, String query, QueryCompilation compilation)Method to store the compilation for a query.voidaddQueryResult(Query query, Map params, List<Object> results)Method to store the results for a query.voidclose()Close the QueryManager, releasing all cached compilations and results.voidevictQueryResultsForType(Class cls)Method to evict all query results for the specified candidate type.ObjectgetDatastoreQueryCompilation(String datastore, String language, String query)Accessor for the datastore-specific compilation for a query.InvocationEvaluatorgetInMemoryEvaluatorForMethod(Class type, String methodName)Accessor for an evaluator for invocation of the specified method for the supplied type.QueryCompilationCachegetQueryCompilationCache()Accessor for the generic compilation cache.QueryCompilationgetQueryCompilationForQuery(String language, String query)Accessor for a Query compilation for the specified query and language.QueryDatastoreCompilationCachegetQueryDatastoreCompilationCache()Accessor for the datastore compilation cache.Map<String,String>getQueryMethodAliasesByPrefix()Accessor for JDOQL/JPQL query method aliases keyed by the prefix.List<Object>getQueryResult(Query query, Map params)Accessor for the results for a query.QueryResultsCachegetQueryResultsCache()Accessor for the query results cache.voidremoveDatastoreQueryCompilation(String datastore, String language, String query)Method to remove a cached datastore query compilation.voidremoveQueryCompilation(String language, String query)Method to remove a query compilation.
-
-
-
Method Detail
-
close
void close()
Close the QueryManager, releasing all cached compilations and results.
-
getQueryCompilationCache
QueryCompilationCache getQueryCompilationCache()
Accessor for the generic compilation cache.- Returns:
- The cache of generic compilations
-
addQueryCompilation
void addQueryCompilation(String language, String query, QueryCompilation compilation)
Method to store the compilation for a query.- Parameters:
language- Language of the queryquery- The query stringcompilation- The compilation of this query
-
removeQueryCompilation
void removeQueryCompilation(String language, String query)
Method to remove a query compilation.- Parameters:
language- The query languagequery- The query string
-
getQueryCompilationForQuery
QueryCompilation getQueryCompilationForQuery(String language, String query)
Accessor for a Query compilation for the specified query and language.- Parameters:
language- Language of the queryquery- Query string- Returns:
- The compilation (if present)
-
getQueryDatastoreCompilationCache
QueryDatastoreCompilationCache getQueryDatastoreCompilationCache()
Accessor for the datastore compilation cache.- Returns:
- The cache of datastore compilations
-
getDatastoreQueryCompilation
Object getDatastoreQueryCompilation(String datastore, String language, String query)
Accessor for the datastore-specific compilation for a query.- Parameters:
datastore- The datastore identifierlanguage- The query languagequery- The query (string form)- Returns:
- The compiled information (if available)
-
addDatastoreQueryCompilation
void addDatastoreQueryCompilation(String datastore, String language, String query, Object compilation)
Method to store the datastore-specific compilation for a query.- Parameters:
datastore- The datastore identifierlanguage- The query languagequery- The query (string form)compilation- The compiled information
-
removeDatastoreQueryCompilation
void removeDatastoreQueryCompilation(String datastore, String language, String query)
Method to remove a cached datastore query compilation.- Parameters:
datastore- The datastorelanguage- The languagequery- The query (string form)
-
getQueryResultsCache
QueryResultsCache getQueryResultsCache()
Accessor for the query results cache.- Returns:
- Query results cache (if present)
-
getQueryResult
List<Object> getQueryResult(Query query, Map params)
Accessor for the results for a query.- Parameters:
query- The queryparams- Map of parameter values keyed by param name- Returns:
- The results (List of object identities)
-
evictQueryResultsForType
void evictQueryResultsForType(Class cls)
Method to evict all query results for the specified candidate type.- Parameters:
cls- Candidate type
-
addQueryResult
void addQueryResult(Query query, Map params, List<Object> results)
Method to store the results for a query.- Parameters:
query- The queryparams- Map of parameter values keyed by param nameresults- The results (List of object identities)
-
getInMemoryEvaluatorForMethod
InvocationEvaluator getInMemoryEvaluatorForMethod(Class type, String methodName)
Accessor for an evaluator for invocation of the specified method for the supplied type. If it is not a supported method for that type then returns null.- Parameters:
type- The class namemethodName- Name of the method- Returns:
- Evaluator suitable for this type with this method name
-
-