private ISearchEngineHandler GetHandlerToUse(SearchSourceTypes searchSouceType) { var handler = _handlers.SingleOrDefault(x => x.ShouldHandle(searchSouceType)); if (handler == null) { throw new NotImplementedException($"No search handlers exist for {searchSouceType}"); } return(handler); }
public bool ShouldHandle(SearchSourceTypes searchSourceTypes) { return(searchSourceTypes == SearchSourceTypes.Bing); }
public Task <Result <SearchResponse> > SearchAsync(SearchRequestParameter requestParameter, CancellationToken ct, SearchSourceTypes searchSouceType = SearchSourceTypes.Google) { return(_searchEngineRepository.SearchAsync(requestParameter, ct, searchSouceType)); }
public bool ShouldHandle(SearchSourceTypes searchSourceTypes) { return searchSourceTypes == SearchSourceTypes.Google; }
public Task <Result <SearchResponse> > SearchAsync(SearchRequestParameter requestParameter, CancellationToken ct, SearchSourceTypes searchSouceType = SearchSourceTypes.Google) { return(GetHandlerToUse(searchSouceType).HandleAsync(requestParameter, ct)); }