Example #1
0
 static IPromise <IIndexSettings> CommonIndexDescriptor(IndexSettingsDescriptor descriptor)
 {
     return(descriptor
            .NumberOfReplicas(1)
            .NumberOfShards(1)
            .Analysis(InitCommonAnalyzers));
 }
Example #2
0
        private IndexSettingsDescriptor applyIndexSettings(IndexSettingsDescriptor s)
        {
            s = s.NumberOfReplicas(configuration.NumberOfReplicas)
                .NumberOfShards(configuration.NumberOfShards)
                .RefreshInterval(configuration.RefreshInterval);

            if (!string.IsNullOrWhiteSpace(configuration.DefaultPipeline))
            {
                s = s.DefaultPipeline(configuration.DefaultPipeline);
            }

            return(s);
        }
Example #3
0
        private static IndexSettingsDescriptor GetIndexSettings()
        {
            #region TokenFilters

            //We add the danish stop word and stemmer filters.
            var tokenFilters = new Dictionary <string, ITokenFilter>
            {
                {
                    "english_stop",
                    new StopTokenFilter
                    {
                        StopWords = "_english_"
                    }
                },
                {
                    "english_snow",
                    new SnowballTokenFilter()
                    {
                        Language = SnowballLanguage.English
                    }
                },
            };

            #endregion

            #region Analyzers

            //We create a custom analyzer to use in the index
            var analyzers = new Dictionary <string, IAnalyzer>
            {
                {
                    "english",
                    new CustomAnalyzer
                    {
                        CharFilter = new[] { "html_strip" },
                        Filter     = new [] { "lowercase", "english_stop", "english_snow", "asciifolding" },
                        Tokenizer  = "standard"
                    }
                },
                {
                    "default",
                    new CustomAnalyzer
                    {
                        CharFilter = new[] { "html_strip" },
                        Filter     = new[] { "lowercase", "asciifolding" },
                        Tokenizer  = "standard"
                    }
                }
            };

            #endregion

            var indexSettings = new IndexSettingsDescriptor();

            indexSettings.NumberOfShards(1);
            indexSettings.NumberOfReplicas(0);
            indexSettings.Analysis(d => new Analysis
            {
                TokenFilters = new TokenFilters(tokenFilters),
                Analyzers    = new Analyzers(analyzers)
            });
            return(indexSettings);
        }