public interface SearchPlugin
Plugin for extending search time behavior.
- 
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic classSpecification for anAggregation.static classContext available during fetch phase construction.static final recordSpecification of GenericNamedWriteable classes that can be serialized/deserialized as generic objects in search results.static classSpecification for aPipelineAggregator.static classSearchPlugin.QuerySpec<T extends QueryBuilder>Specification of customQuery.static classSpecification of customQueryVectorBuilder.static classSearchPlugin.RescorerSpec<T extends RescorerBuilder<T>>static classSearchPlugin.RetrieverSpec<RB extends RetrieverBuilder>Specification of customRetrieverBuilder.static classSearchPlugin.ScoreFunctionSpec<T extends ScoreFunctionBuilder<T>>Specification of customScoreFunction.static classSearchPlugin.SearchExtensionSpec<W extends NamedWriteable,P> Specification of search time behavior extension like a customScoreFunction.static classSearchPlugin.SearchExtSpec<T extends SearchExtBuilder>Specification for aSearchExtBuilderwhich represents an additional section that can be parsed in a search request (within the ext element).static classSpecification of customSignificanceHeuristic.static classSearchPlugin.SuggesterSpec<T extends SuggestionBuilder<T>>Specification for aSuggester. - 
Method Summary
Modifier and TypeMethodDescriptiondefault List<Consumer<ValuesSourceRegistry.Builder>> Allows plugins to register new aggregations using aggregation names that are already defined in Core, as long as the new aggregations target different ValuesSourceTypesdefault List<SearchPlugin.AggregationSpec> The newAggregations added by this plugin.default List<FetchSubPhase> The newFetchSubPhases defined by this plugin.Additional GenericNamedWriteable classes added by this plugin.default Map<String, Highlighter> Get theHighlighters defined by this plugin.default List<SearchPlugin.PipelineAggregationSpec> The newPipelineAggregators added by this plugin.default List<SearchPlugin.QuerySpec<?>> The newQuerys defined by this plugin.default List<SearchPlugin.QueryVectorBuilderSpec<?>> The newQueryVectorBuilders defined by this plugin.Allows plugins to register a cache differentiator which contributes to the cacheKey computation for the request cache.default List<SearchPlugin.RescorerSpec<?>> The newRescorers added by this plugin.default List<SearchPlugin.RetrieverSpec<?>> The newRetrieverBuilders defined by this plugin.default List<SearchPlugin.ScoreFunctionSpec<?>> The newScoreFunctions defined by this plugin.default List<SearchPlugin.SearchExtSpec<?>> The newSearchExtBuilders defined by this plugin.default List<SearchPlugin.SignificanceHeuristicSpec<?>> The newSignificanceHeuristics defined by this plugin.default List<SearchPlugin.SuggesterSpec<?>> The newSuggesters defined by this plugin. 
- 
Method Details
- 
getScoreFunctions
The newScoreFunctions defined by this plugin. - 
getSignificanceHeuristics
The newSignificanceHeuristics defined by this plugin. SignificanceHeuristics are used by theSignificantTermsaggregation to pick which terms are significant for a given query. - 
getQueryVectorBuilders
The newQueryVectorBuilders defined by this plugin. QueryVectorBuilders can be used within a kNN search to build the query vector instead of having the user provide the vector directly - 
getFetchSubPhases
The newFetchSubPhases defined by this plugin. - 
getSearchExts
The newSearchExtBuilders defined by this plugin. - 
getHighlighters
Get theHighlighters defined by this plugin. - 
getSuggesters
The newSuggesters defined by this plugin. - 
getRetrievers
The newRetrieverBuilders defined by this plugin. - 
getQueries
The newQuerys defined by this plugin. - 
getAggregations
The newAggregations added by this plugin. - 
getAggregationExtentions
Allows plugins to register new aggregations using aggregation names that are already defined in Core, as long as the new aggregations target different ValuesSourceTypes- Returns:
 - A list of the new registrar functions
 
 - 
getPipelineAggregations
The newPipelineAggregators added by this plugin. - 
getRescorers
The newRescorers added by this plugin. - 
getGenericNamedWriteables
Additional GenericNamedWriteable classes added by this plugin. - 
getRequestCacheKeyDifferentiator
@Nullable default CheckedBiConsumer<ShardSearchRequest,StreamOutput, getRequestCacheKeyDifferentiator()IOException> Allows plugins to register a cache differentiator which contributes to the cacheKey computation for the request cache. This helps differentiate between queries that are otherwise identical. 
 -