com.atlassian.jira.bc.issue.search
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 User pairs.

Since:
v4.0

Method Summary
 Collection<ClauseHandler> getClauseHandlers(com.atlassian.crowd.embedded.api.User searcher, String jqlClauseName)
          Retrieve the collection of ClauseHandlers registered for the User jqlClauseName pair.
 Boolean getDoesQueryFitFilterFormCache(com.atlassian.crowd.embedded.api.User searcher, Query query)
          Retrieve the result of the last doesQueryFitFiterForm operation in the current thread.
 QueryContext getQueryContextCache(com.atlassian.crowd.embedded.api.User searcher, Query query)
          Retrieve the result of the last getQueryContext operation in the current thread for the User Query pair.
 QueryContext getSimpleQueryContextCache(com.atlassian.crowd.embedded.api.User searcher, Query query)
          Retrieve the result of the last getSimpleQueryContext operation in the current thread for the User Query pair.
 List<QueryLiteral> getValues(QueryCreationContext context, Operand operand, TerminalClause jqlClause)
          Retrieve the list of QueryLiterals registered for the QueryCreationContext Operand jqlClause triplet.
 void setClauseHandlers(com.atlassian.crowd.embedded.api.User searcher, String jqlClauseName, Collection<ClauseHandler> clauseHandlers)
          Set the cached result of a getSimpleQueryContext operation on the User Query pair.
 void setDoesQueryFitFilterFormCache(com.atlassian.crowd.embedded.api.User searcher, Query query, boolean doesItFit)
          Set the cached result of a doesQueryFitFiterForm operation on the User Query pair.
 void setQueryContextCache(com.atlassian.crowd.embedded.api.User searcher, Query query, QueryContext queryContext)
          Set the cached result of a getQueryContext operation on the User Query pair.
 void setSimpleQueryContextCache(com.atlassian.crowd.embedded.api.User searcher, Query query, QueryContext queryContext)
          Set the cached result of a getSimpleQueryContext operation on the User Query pair.
 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.
 

Method Detail

getDoesQueryFitFilterFormCache

Boolean getDoesQueryFitFilterFormCache(com.atlassian.crowd.embedded.api.User searcher,
                                       Query query)
Retrieve the result of the last doesQueryFitFiterForm operation in the current thread. for the User 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 User Query pair in the current thread, or null if the operation has yet to be performed.

setDoesQueryFitFilterFormCache

void setDoesQueryFitFilterFormCache(com.atlassian.crowd.embedded.api.User searcher,
                                    Query query,
                                    boolean doesItFit)
Set the cached result of a doesQueryFitFiterForm operation on the User 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. User Query

getQueryContextCache

QueryContext getQueryContextCache(com.atlassian.crowd.embedded.api.User searcher,
                                  Query query)
Retrieve the result of the last getQueryContext operation in the current thread for the User 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 User Query pair in the current thread, or null if the operation has yet to be performed.

setQueryContextCache

void setQueryContextCache(com.atlassian.crowd.embedded.api.User searcher,
                          Query query,
                          QueryContext queryContext)
Set the cached result of a getQueryContext operation on the User 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 User Query

getSimpleQueryContextCache

QueryContext getSimpleQueryContextCache(com.atlassian.crowd.embedded.api.User searcher,
                                        Query query)
Retrieve the result of the last getSimpleQueryContext operation in the current thread for the User 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 User Query pair in the current thread, or null if the operation has yet to be performed.

setSimpleQueryContextCache

void setSimpleQueryContextCache(com.atlassian.crowd.embedded.api.User searcher,
                                Query query,
                                QueryContext queryContext)
Set the cached result of a getSimpleQueryContext operation on the User 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 User Query

getClauseHandlers

Collection<ClauseHandler> getClauseHandlers(com.atlassian.crowd.embedded.api.User searcher,
                                            String jqlClauseName)
Retrieve the collection of ClauseHandlers registered for the User 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 User jqlClauseName pair.

setClauseHandlers

void setClauseHandlers(com.atlassian.crowd.embedded.api.User searcher,
                       String jqlClauseName,
                       Collection<ClauseHandler> clauseHandlers)
Set the cached result of a getSimpleQueryContext operation on the User 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 User 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


Copyright © 2002-2012 Atlassian. All Rights Reserved.