Package org.elasticsearch.plugins
Interface AnalysisPlugin
-
public interface AnalysisPlugin
An additional extension point forPlugin
s that extends Elasticsearch's analysis functionality. To add an additionalTokenFilter
just implement the interface and implement thegetTokenFilters()
method:
Elasticsearch doesn't have any automatic mechanism to share these components between indexes. If any component is heavy enough to warrant such sharing then it is the Plugin's responsibility to do it in theirpublic class AnalysisPhoneticPlugin extends Plugin implements AnalysisPlugin { @Override public Map<String, AnalysisProvider<TokenFilterFactory>> getTokenFilters() { return singletonMap("phonetic", PhoneticTokenFilterFactory::new); } }
AnalysisModule.AnalysisProvider
implementation. We recommend against doing this unless absolutely necessary because it can be difficult to get the caching right given things like behavior changes across versions.
-
-
Method Summary
Modifier and Type Method Description default java.util.Map<java.lang.String,AnalysisModule.AnalysisProvider<AnalyzerProvider<? extends org.apache.lucene.analysis.Analyzer>>>
getAnalyzers()
Override to add additionalAnalyzer
s.default java.util.Map<java.lang.String,AnalysisModule.AnalysisProvider<CharFilterFactory>>
getCharFilters()
Override to add additionalCharFilter
s.default java.util.Map<java.lang.String,org.apache.lucene.analysis.hunspell.Dictionary>
getHunspellDictionaries()
Override to add additional hunspellDictionary
s.default java.util.List<PreBuiltAnalyzerProviderFactory>
getPreBuiltAnalyzerProviderFactories()
Override to add additional pre-configuredAnalyzer
s.default java.util.List<PreConfiguredCharFilter>
getPreConfiguredCharFilters()
Override to add additional pre-configuredCharFilter
s.default java.util.List<PreConfiguredTokenFilter>
getPreConfiguredTokenFilters()
Override to add additional pre-configuredTokenFilter
s.default java.util.List<PreConfiguredTokenizer>
getPreConfiguredTokenizers()
Override to add additional pre-configuredTokenizer
.default java.util.Map<java.lang.String,AnalysisModule.AnalysisProvider<TokenFilterFactory>>
getTokenFilters()
Override to add additionalTokenFilter
s.default java.util.Map<java.lang.String,AnalysisModule.AnalysisProvider<TokenizerFactory>>
getTokenizers()
Override to add additionalTokenizer
s.static <T> AnalysisModule.AnalysisProvider<T>
requiresAnalysisSettings(AnalysisModule.AnalysisProvider<T> provider)
Mark anAnalysisModule.AnalysisProvider
as requiring the index's settings.
-
-
-
Method Detail
-
getCharFilters
default java.util.Map<java.lang.String,AnalysisModule.AnalysisProvider<CharFilterFactory>> getCharFilters()
Override to add additionalCharFilter
s. SeerequiresAnalysisSettings(AnalysisProvider)
how to on get the configuration from the index.
-
getTokenFilters
default java.util.Map<java.lang.String,AnalysisModule.AnalysisProvider<TokenFilterFactory>> getTokenFilters()
Override to add additionalTokenFilter
s. SeerequiresAnalysisSettings(AnalysisProvider)
how to on get the configuration from the index.
-
getTokenizers
default java.util.Map<java.lang.String,AnalysisModule.AnalysisProvider<TokenizerFactory>> getTokenizers()
Override to add additionalTokenizer
s. SeerequiresAnalysisSettings(AnalysisProvider)
how to on get the configuration from the index.
-
getAnalyzers
default java.util.Map<java.lang.String,AnalysisModule.AnalysisProvider<AnalyzerProvider<? extends org.apache.lucene.analysis.Analyzer>>> getAnalyzers()
Override to add additionalAnalyzer
s. SeerequiresAnalysisSettings(AnalysisProvider)
how to on get the configuration from the index.
-
getPreBuiltAnalyzerProviderFactories
default java.util.List<PreBuiltAnalyzerProviderFactory> getPreBuiltAnalyzerProviderFactories()
Override to add additional pre-configuredAnalyzer
s.
-
getPreConfiguredCharFilters
default java.util.List<PreConfiguredCharFilter> getPreConfiguredCharFilters()
Override to add additional pre-configuredCharFilter
s.
-
getPreConfiguredTokenFilters
default java.util.List<PreConfiguredTokenFilter> getPreConfiguredTokenFilters()
Override to add additional pre-configuredTokenFilter
s.
-
getPreConfiguredTokenizers
default java.util.List<PreConfiguredTokenizer> getPreConfiguredTokenizers()
Override to add additional pre-configuredTokenizer
.
-
getHunspellDictionaries
default java.util.Map<java.lang.String,org.apache.lucene.analysis.hunspell.Dictionary> getHunspellDictionaries()
Override to add additional hunspellDictionary
s.
-
requiresAnalysisSettings
static <T> AnalysisModule.AnalysisProvider<T> requiresAnalysisSettings(AnalysisModule.AnalysisProvider<T> provider)
Mark anAnalysisModule.AnalysisProvider
as requiring the index's settings.
-
-