public EntityDecorator(IElasticService elasticService, IElasticSettings elasticSettings, IEntityProvider entityProvider, IModelData modelData) { this.elasticService = elasticService; this.elasticSettings = elasticSettings; this.entityProvider = entityProvider; this.modelData = modelData; }
public EntityProvider(ITranslator translator, IElasticService elasticService, IElasticSettings elasticSettings, IModelData modelData) { this.translator = translator; this.elasticService = elasticService; this.elasticSettings = elasticSettings; this.modelData = modelData; }
public ElasticSearchRepository( IElasticSettings configuration, ILogger logger) { Configuration = configuration; _logger = logger; IndexName = configuration.IndexName; var connectionSettings = new ConnectionSettings(new Uri(configuration.SearchUrl)).DefaultIndex(IndexName); if (HasCredentials()) { ApplyAuthentication(connectionSettings); } Client = new ElasticClient(connectionSettings); }
public IElasticClient GetElasticClient <T>(IElasticSettings settings, ElasticQueryResult <T> onResult = null) where T : TreeRecord { var connectionUri = new Uri(settings.BaseUrl); var connectionPool = new SingleNodeConnectionPool(connectionUri); var connectionSettings = new ConnectionSettings(connectionPool, (serializer, values) => new JsonNetSerializer( serializer, values, null, null, new[] { new ExpandoObjectConverter() })); connectionSettings.DefaultIndex(settings.DefaultIndex); if (!string.IsNullOrEmpty(settings.Username)) { connectionSettings.BasicAuthentication(settings.Username, settings.Password); } if (onResult != null && settings.Debug != null && (settings.Debug.FetchRequestJson || settings.Debug.FetchResponseJson)) { connectionSettings .DisableDirectStreaming() .OnRequestCompleted(details => { if (settings.Debug.FetchRequestJson && details.RequestBodyInBytes != null) { onResult.RequestRaw = Encoding.UTF8.GetString(details.RequestBodyInBytes); } if (settings.Debug.FetchResponseJson && details.ResponseBodyInBytes != null) { onResult.ResponseRaw = Encoding.UTF8.GetString(details.ResponseBodyInBytes); } }); } connectionSettings.ThrowExceptions(); return(new ElasticClient(connectionSettings)); }
public ElasticService(IElasticClientProvider clientProvider, IElasticSettings elasticSettings) { this.clientProvider = clientProvider; this.elasticSettings = elasticSettings; }