private Capsule <ElasticSearchData> RequestData(string objA, string objB, ICollection <string> aspects, bool quickSearch) { var query = new SearchDescriptor <DepccDataSet>(); query.Size(quickSearch ? 1000 : 10000) .Query(q => q.Match(m => m .Field(f => f.Text) .Query(objA)) && q.Match(m => m .Field(f => f.Text) .Query(objB)) && q.Terms(t => t .Field(f => f.Text) .Terms(Constants.PosAndNegComparativeAdjectives))); return(_client .Map(c => c.Search <DepccDataSet>(query).Documents) .Bind(data => data.Count <= 0 ? Capsule <ElasticSearchData> .CreateFailure($"Status code: {StatusCodes.Status404NotFound}. No data found!", _logger) : new Success <ElasticSearchData>(new ElasticSearchData { UnclassifiedData = data, ClassifiedData = _classifier.ClassifyData(data, objA, objB), AspectData = aspects != null ? _classifier.ClassifyAndSplitData(data, objA, objB, aspects) : null }))); }