public SearchResponse Search(SearchRequest request) { var result = new SearchResponse(); if (string.IsNullOrEmpty(request.Query)) { return(result); } result.Results = new List <Entry>(); var payers = payerManager.All(); var searchers = new List <IndexSearcher>(); foreach (var directoryPath in System.IO.Directory.GetDirectories(luceneDir)) { var directoryName = Path.GetFileName(directoryPath); if (payers.Any(p => p.PayerId == directoryName)) { searchers.Add(new IndexSearcher(GetDirectory(directoryPath))); } } using (var searcher = new MultiSearcher(searchers.ToArray())) { var hitsLimit = short.MaxValue; using (var analyzer = new StandardAnalyzer(version)) { var query = CreateQuery(request, analyzer); var hits = searcher.Search(query, hitsLimit).ScoreDocs; var searchResponse = CreateSearchResponse(searcher, hits, request); result.Results.AddRange(searchResponse); } } return(result); }
public IList<PayerModel> GetAvailablePayers() { return payerManager.All().Select(p => new PayerModel(p)).ToList(); }
public ActionResult All() { var result = payerManager.All(); return(Json(result)); }