Interface QueryCache

All Known Implementing Classes:
QueryCacheImpl

@InjectableComponent public interface QueryCache
The query cache is a request level cache that stores the result of expensive query operations.

The cache is indexed with Query ApplicationUser pairs.

Since:
v4.0
  • Method Details

    • getDoesQueryFitFilterFormCache

      Boolean getDoesQueryFitFilterFormCache(ApplicationUser searcher, Query query)
      Retrieve the result of the last doesQueryFitFiterForm operation in the current thread. for the ApplicationUser Query pair.
      Parameters:
      searcher - the user who is performing the search
      query - the query for which to find the result for; cannot be null.
      Returns:
      the last result of the doesQueryFitFiterForm operation for the ApplicationUser Query pair in the current thread, or null if the operation has yet to be performed.
    • setDoesQueryFitFilterFormCache

      void setDoesQueryFitFilterFormCache(ApplicationUser searcher, Query query, boolean doesItFit)
      Set the cached result of a doesQueryFitFiterForm operation on the ApplicationUser Query pair. The cache result is only held for the current thread.
      Parameters:
      searcher - the user who is performing the search
      query - the query for which to store the result under; cannot be null
      doesItFit - the result of a doesSearchRequestFitNavigator operation for the. ApplicationUser Query
    • getQueryContextCache

      QueryContext getQueryContextCache(ApplicationUser searcher, Query query)
      Retrieve the result of the last getQueryContext operation in the current thread for the ApplicationUser Query pair.
      Parameters:
      searcher - the user who is performing the search
      query - the query for which to find the result for; cannot be null.
      Returns:
      the last result of the getQueryContext operation for the ApplicationUser Query pair in the current thread, or null if the operation has yet to be performed.
    • setQueryContextCache

      void setQueryContextCache(ApplicationUser searcher, Query query, QueryContext queryContext)
      Set the cached result of a getQueryContext operation on the ApplicationUser Query pair. The cache result is only held for the current thread.
      Parameters:
      searcher - the user who is performing the search
      query - the query for which to store the result under; cannot be null.
      queryContext - the queryContext result to store ApplicationUser Query
    • getSimpleQueryContextCache

      QueryContext getSimpleQueryContextCache(ApplicationUser searcher, Query query)
      Retrieve the result of the last getSimpleQueryContext operation in the current thread for the ApplicationUser Query pair.
      Parameters:
      searcher - the user who is performing the search
      query - the query for which to find the result for; cannot be null.
      Returns:
      the last result of the getSimpleQueryContext operation for the ApplicationUser Query pair in the current thread, or null if the operation has yet to be performed.
    • setSimpleQueryContextCache

      void setSimpleQueryContextCache(ApplicationUser searcher, Query query, QueryContext queryContext)
      Set the cached result of a getSimpleQueryContext operation on the ApplicationUser Query pair. The cache result is only held for the current thread.
      Parameters:
      searcher - the user who is performing the search
      query - the query for which to store the result under; cannot be null.
      queryContext - the querySimpleContext result to store ApplicationUser Query
    • getClauseHandlers

      Collection<ClauseHandler> getClauseHandlers(ApplicationUser searcher, String jqlClauseName)
      Retrieve the collection of ClauseHandlers registered for the ApplicationUser jqlClauseName pair.
      Parameters:
      searcher - the user who is performing the search
      jqlClauseName - the jQLClauseName for which to find the result for; cannot be null.
      Returns:
      the collection of ClauseHandlers registered for the ApplicationUser jqlClauseName pair.
    • setClauseHandlers

      void setClauseHandlers(ApplicationUser searcher, String jqlClauseName, Collection<ClauseHandler> clauseHandlers)
      Set the cached result of a getSimpleQueryContext operation on the ApplicationUser Query pair. The cache result is only held for the current thread.
      Parameters:
      searcher - the user who is performing the search
      jqlClauseName - the jQLClauseName for which to store the result under; cannot be null.
      clauseHandlers - the collection of ClauseHandlers ApplicationUser ClauseHandler
    • getValues

      List<QueryLiteral> getValues(QueryCreationContext context, Operand operand, TerminalClause jqlClause)
      Retrieve the list of QueryLiterals registered for the QueryCreationContext Operand jqlClause triplet.
      Parameters:
      context - the query context of the search, which cannot be null.
      operand - the Operand which cannot be null
      jqlClause - the jQLClause for which to find the result for; cannot be null.
      Returns:
      the list of QueryLiterals registered for the QueryCreationContext jqlClause pair.
    • setValues

      void setValues(QueryCreationContext context, Operand operand, TerminalClause jqlClause, List<QueryLiteral> values)
      Set the cached result of a getValues operation on the for the QueryCreationContext Operand jqlClause triplet. The cache result is only held for the current thread.
      Parameters:
      context - the query context the search is being performed in
      operand - the Operand which cannot be null
      jqlClause - the jQLClause for which to store the result under; cannot be null.
      values - the collection of QueryLiterals