Class ChangeQueryProcessor
- java.lang.Object
- 
- com.google.gerrit.index.query.QueryProcessor<ChangeData>
- 
- com.google.gerrit.server.query.change.ChangeQueryProcessor
 
 
- 
- All Implemented Interfaces:
- PluginDefinedInfosFactory,- DynamicOptions.BeanProvider,- DynamicOptions.BeanReceiver
 
 public class ChangeQueryProcessor extends QueryProcessor<ChangeData> implements DynamicOptions.BeanReceiver, DynamicOptions.BeanProvider, PluginDefinedInfosFactory Query processor for the change index.Instances are one-time-use. Other singleton classes should inject a Provider rather than holding on to a single instance. 
- 
- 
Nested Class Summary- 
Nested classes/interfaces inherited from class com.google.gerrit.index.query.QueryProcessorQueryProcessor.Metrics
 
- 
 - 
Field Summary- 
Fields inherited from class com.google.gerrit.index.query.QueryProcessorstart
 
- 
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description protected QueryOptionscreateOptions(IndexConfig indexConfig, int start, int limit, Set<String> requestedFields)com.google.common.collect.ImmutableListMultimap<Change.Id,PluginDefinedInfo>createPluginDefinedInfos(Collection<ChangeData> cds)Create a plugin-provided info field from all the plugins for each of the providedChangeDatas.ChangeQueryProcessorenforceVisibility(boolean enforce)Specify whether to enforce visibility by filtering out results that are not visible to the user.protected Predicate<ChangeData>enforceVisibility(Predicate<ChangeData> pred)Invoked after the query was rewritten.protected StringformatForLogging(ChangeData changeData)DynamicOptions.DynamicBeangetDynamicBean(String plugin)PluginDefinedInfosFactorygetInfosFactory()voidsetDynamicBean(String plugin, DynamicOptions.DynamicBean dynamicBean)- 
Methods inherited from class com.google.gerrit.index.query.QueryProcessorisDisabled, query, query, setNoLimit, setRequestedFields, setStart, setUserProvidedLimit
 - 
Methods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 - 
Methods inherited from interface com.google.gerrit.server.DynamicOptions.BeanReceivergetExportedBeanReceiver
 
- 
 
- 
- 
- 
Method Detail- 
enforceVisibilitypublic ChangeQueryProcessor enforceVisibility(boolean enforce) Description copied from class:QueryProcessorSpecify whether to enforce visibility by filtering out results that are not visible to the user.Enforcing visibility may have performance consequences, as the index system may need to post-filter a large number of results to fill even a modest limit. If visibility is enforced, the user's queryLimitglobal capability is also used to bound the total number of results. If this capability is non-positive, this results in the entire query processor beingdisabled.- Overrides:
- enforceVisibilityin class- QueryProcessor<ChangeData>
- Parameters:
- enforce- whether to enforce visibility.
- Returns:
- this.
 
 - 
createOptionsprotected QueryOptions createOptions(IndexConfig indexConfig, int start, int limit, Set<String> requestedFields) - Overrides:
- createOptionsin class- QueryProcessor<ChangeData>
 
 - 
setDynamicBeanpublic void setDynamicBean(String plugin, DynamicOptions.DynamicBean dynamicBean) - Specified by:
- setDynamicBeanin interface- DynamicOptions.BeanReceiver
 
 - 
getDynamicBeanpublic DynamicOptions.DynamicBean getDynamicBean(String plugin) - Specified by:
- getDynamicBeanin interface- DynamicOptions.BeanProvider
 
 - 
getInfosFactorypublic PluginDefinedInfosFactory getInfosFactory() 
 - 
createPluginDefinedInfospublic com.google.common.collect.ImmutableListMultimap<Change.Id,PluginDefinedInfo> createPluginDefinedInfos(Collection<ChangeData> cds) Description copied from interface:PluginDefinedInfosFactoryCreate a plugin-provided info field from all the plugins for each of the providedChangeDatas.- Specified by:
- createPluginDefinedInfosin interface- PluginDefinedInfosFactory
- Parameters:
- cds- changes.
- Returns:
- map of the all plugin's special infos for each change.
 
 - 
enforceVisibilityprotected Predicate<ChangeData> enforceVisibility(Predicate<ChangeData> pred) Description copied from class:QueryProcessorInvoked after the query was rewritten. Subclasses must overwrite this method to filter out results that are not visible to the calling user.- Specified by:
- enforceVisibilityin class- QueryProcessor<ChangeData>
- Parameters:
- pred- the query
- Returns:
- the modified query
 
 - 
formatForLoggingprotected String formatForLogging(ChangeData changeData) - Specified by:
- formatForLoggingin class- QueryProcessor<ChangeData>
 
 
- 
 
-