public string GetBaseUrl(NzbgetSettings settings, string relativePath = null) { var baseUrl = HttpRequestBuilder.BuildBaseUrl(settings.UseSsl, settings.Host, settings.Port, settings.UrlBase); baseUrl = HttpUri.CombinePath(baseUrl, relativePath); return(baseUrl); }
private HttpRequestBuilder BuildRequest(NzbVortexSettings settings) { var baseUrl = HttpRequestBuilder.BuildBaseUrl(true, settings.Host, settings.Port, settings.UrlBase); baseUrl = HttpUri.CombinePath(baseUrl, "api"); var requestBuilder = new HttpRequestBuilder(baseUrl); requestBuilder.LogResponseContent = true; return(requestBuilder); }
private HttpRequestBuilder BuildRequest(FloodSettings settings) { var requestBuilder = new HttpRequestBuilder(HttpUri.CombinePath(BuildUrl(settings), "/api")) { LogResponseContent = true, NetworkCredential = new NetworkCredential(settings.Username, settings.Password) }; requestBuilder.Headers.ContentType = "application/json"; requestBuilder.SetCookies(AuthAuthenticate(requestBuilder, settings)); return(requestBuilder); }
private HttpRequestBuilder GetBuilder(string relativePath, CalibreSettings settings) { var baseUrl = HttpRequestBuilder.BuildBaseUrl(settings.UseSsl, settings.Host, settings.Port, settings.UrlBase); baseUrl = HttpUri.CombinePath(baseUrl, relativePath); var builder = new HttpRequestBuilder(baseUrl) .Accept(HttpAccept.Json); builder.LogResponseContent = true; if (settings.Username.IsNotNullOrWhiteSpace()) { builder.NetworkCredential = new NetworkCredential(settings.Username, settings.Password); } return(builder); }
private T ProcessRequest <T>(HadoukenSettings settings, string method, params object[] parameters) { var baseUrl = HttpRequestBuilder.BuildBaseUrl(settings.UseSsl, settings.Host, settings.Port, settings.UrlBase); baseUrl = HttpUri.CombinePath(baseUrl, "api"); var requestBuilder = new JsonRpcRequestBuilder(baseUrl, method, parameters); requestBuilder.LogResponseContent = true; requestBuilder.NetworkCredential = new NetworkCredential(settings.Username, settings.Password); requestBuilder.Headers.Add("Accept-Encoding", "gzip,deflate"); var httpRequest = requestBuilder.Build(); HttpResponse response; try { response = _httpClient.Execute(httpRequest); } catch (HttpException ex) { throw new DownloadClientException("Unable to connect to Hadouken, please check your settings", ex); } catch (WebException ex) { if (ex.Status == WebExceptionStatus.TrustFailure) { throw new DownloadClientUnavailableException("Unable to connect to Hadouken, certificate validation failed.", ex); } throw new DownloadClientUnavailableException("Unable to connect to Hadouken, please check your settings", ex); } var result = Json.Deserialize <JsonRpcResponse <T> >(response.Content); if (result.Error != null) { throw new DownloadClientException("Error response received from Hadouken: {0}", result.Error.ToString()); } return(result.Result); }
private string GetLibraryUri(CalibreSettings settings) { return(HttpUri.CombinePath(HttpRequestBuilder.BuildBaseUrl(settings.UseSsl, settings.Host, settings.Port, settings.UrlBase), settings.Library)); }