Package org.elasticsearch.plugins
Interface SearchPlugin
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 classSpecification for aPipelineAggregator.static classSearchPlugin.QuerySpec<T extends QueryBuilder>Specification of customQuery.static classSearchPlugin.RescorerSpec<T extends RescorerBuilder<T>>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 customMovAvgModelorScoreFunction.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.default Map<String,Highlighter>Get theHighlighters defined by this plugin.The newMovAvgModels defined by this plugin.default List<SearchPlugin.PipelineAggregationSpec>The newPipelineAggregators added by this plugin.default List<SearchPlugin.QuerySpec<?>>The newQuerys 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.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. -
getMovingAverageModels
default List<SearchPlugin.SearchExtensionSpec<MovAvgModel,MovAvgModel.AbstractModelParser>> getMovingAverageModels()The newMovAvgModels defined by this plugin. MovAvgModels are used by theMovAvgPipelineAggregatorto model trends in data. -
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. -
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. -
getRequestCacheKeyDifferentiator
@Nullable default CheckedBiConsumer<ShardSearchRequest,StreamOutput,IOException> getRequestCacheKeyDifferentiator()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.
-