private async Task <List <SearchResource> > GetSearchReleases(string query, string type, List <int> indexerIds, List <int> categories) { try { var request = new NewznabRequest { q = query, t = type, source = "Prowlarr", cat = string.Join(",", categories), server = Request.GetServerUrl(), host = Request.GetHostName() }; request.QueryToParams(); var result = await _nzbSearhService.Search(request, indexerIds, true); var decisions = result.Releases; return(MapDecisions(decisions, Request.GetServerUrl())); } catch (SearchFailedException ex) { throw new NzbDroneClientException(HttpStatusCode.BadRequest, ex.Message); } catch (Exception ex) { _logger.Error(ex, "Search failed: " + ex.Message); } return(new List <SearchResource>()); }
private async Task <List <ReleaseResource> > GetSearchReleases([FromQuery] SearchResource payload) { try { var request = new NewznabRequest { q = payload.Query, t = payload.Type, source = "Prowlarr", cat = string.Join(",", payload.Categories), server = Request.GetServerUrl(), host = Request.GetHostName(), limit = payload.Limit, offset = payload.Offset }; request.QueryToParams(); var result = await _nzbSearhService.Search(request, payload.IndexerIds, true); var decisions = result.Releases; return(MapDecisions(decisions, Request.GetServerUrl())); } catch (SearchFailedException ex) { throw new NzbDroneClientException(HttpStatusCode.BadRequest, ex.Message); } catch (Exception ex) { _logger.Error(ex, "Search failed: " + ex.Message); } return(new List <ReleaseResource>()); }