private IEnumerable <Dictionary <string, object> > GetElasticCollection(PageableElasticQuery query) { IEnumerable <Dictionary <string, object> > elasticCollection; try { elasticCollection = _elasticSearchRepository.GetCollection(query); } catch (Exception exception) { elasticCollection = new List <Dictionary <string, object> >(); _log.Error($"There is error during querying elastic. Message is {exception.Message}", exception); throw exception; } return(elasticCollection); }
/// <summary> /// Send request to elasticsearch. /// </summary> /// <param name="queries">Key requests for elasticsearch.</param> /// <returns>Results record found on request.</returns> public virtual IEnumerable <Dictionary <string, string> > SearchEmails(List <string> queries) { try { var resultCollection = new List <Dictionary <string, string> >(); foreach (var request in CreateESSelectQueries(queries)) { SetRequestQueries(request); var query = _queryBuilder.BuildQuery(request); if (query == null) { _log.Error("There is empty request"); return(null); } var elasticCollection = _elasticSearchRepository.GetCollection(query); var collection = GetCollection(elasticCollection, request.SchemaName); resultCollection.AddRange(collection); } return(resultCollection); } catch (Exception exp) { _log.Error(string.Format("{0}\r\n{1}", exp.Message, exp.StackTrace)); throw; } }