public ElasticSearchService(
            IElasticSearchProvider <TEntity, TSearchParameters> searchProvider,
            IOptions <ElasticSearchOptions> optionsAccessor)
        {
            if (searchProvider == null)
            {
                throw new ArgumentNullException(nameof(searchProvider));
            }
            if (optionsAccessor == null)
            {
                throw new ArgumentNullException(nameof(optionsAccessor));
            }
            if (optionsAccessor?.Value?.Connections == null || optionsAccessor.Value.Connections.Count() == 0)
            {
                throw new ArgumentException(nameof(optionsAccessor));
            }
            if (string.IsNullOrWhiteSpace(optionsAccessor?.Value?.IndexName))
            {
                throw new ArgumentException(nameof(optionsAccessor));
            }

            Connections    = optionsAccessor.Value.Connections.Select(x => new Uri(x));
            IndexName      = optionsAccessor.Value.IndexName;
            SearchProvider = searchProvider;
        }
Exemple #2
0
 public EntitySearchService(
     IElasticSearchProvider elasticSearchProvider,
     IEntityRepository entityRepository,
     IMapper mapper)
 {
     _elasticSearchProvider = elasticSearchProvider;
     _entityRepository      = entityRepository;
     _mapper = mapper;
 }
Exemple #3
0
 public ElasticFilterBase()
 {
     _elasticSearchProvider    = ServiceLocator.GetService <IElasticSearchProvider>();
     _elasticClient            = _elasticSearchProvider.GetElasticClient();
     _isUseElasticSearchModule = DbSetting.Instance.UseElasicSearchModule;
 }