Interface QueryManager

  • All Known Implementing Classes:
    FederatedQueryManagerImpl, QueryManagerImpl

    public interface QueryManager
    Interface providing a way of creating instances of queries for datastores, caching of generic and datastore compilations, as well as caching query results.
    • 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 query
        query - The query string
        compilation - The compilation of this query
      • removeQueryCompilation

        void removeQueryCompilation​(String language,
                                    String query)
        Method to remove a query compilation.
        Parameters:
        language - The query language
        query - 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 query
        query - 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 identifier
        language - The query language
        query - 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 identifier
        language - The query language
        query - 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 datastore
        language - The language
        query - 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 query
        params - 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 query
        params - Map of parameter values keyed by param name
        results - 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 name
        methodName - Name of the method
        Returns:
        Evaluator suitable for this type with this method name
      • getQueryMethodAliasesByPrefix

        Map<String,​String> getQueryMethodAliasesByPrefix()
        Accessor for JDOQL/JPQL query method aliases keyed by the prefix.
        Returns:
        The method aliases map