Interface ElasticsearchIndexSettingsConfigurer


public interface ElasticsearchIndexSettingsConfigurer
Base interface for configurers of Elasticsearch index settings.

Create Spring Bean that implements this interface. Index settings can be configured inside configure(ElasticsearchIndexSettingsConfigurationContext) by using settings builders.

See ElasticsearchIndexSettingsConfigurationContext.

Example:

 @Component("demo_ElasticsearchIndexSettingsConfigurer")
 public class DemoElasticsearchIndexSettingsConfigurer implements ElasticsearchIndexSettingsConfigurer {

     @Override
     public void configure(ElasticsearchIndexSettingsConfigurationContext context) {
         IndexSettings.Builder commonSettingsBuilder = context.getCommonSettingsBuilder();
         commonSettingsBuilder
                 .maxResultWindow(15000)
                 .analysis(analysisBuilder ->
                         analysisBuilder.analyzer("customized_standard", analyzerBuilder ->
                                 analyzerBuilder.standard(stdAnalyzerBuilder ->
                                         stdAnalyzerBuilder.maxTokenLength(100)
                                 )
                         )
                 );

         IndexSettings.Builder personSettingsBuilder = context.getEntitySettingsBuilder(Person.class);
         personSettingsBuilder
                 .maxResultWindow(20000)
                 .analysis(analysisBuilder ->
                         analysisBuilder.analyzer("customized_standard", analyzerBuilder ->
                                 analyzerBuilder.standard(stdAnalyzerBuilder ->
                                         stdAnalyzerBuilder.maxTokenLength(100)
                                 )
                         )
                 );
     }
 }