diff options
| author | crobibero <cody@robibe.ro> | 2020-08-19 06:31:45 -0600 |
|---|---|---|
| committer | crobibero <cody@robibe.ro> | 2020-08-19 06:31:45 -0600 |
| commit | 076e17f35556c6d1257856896619e30eb494b2bb (patch) | |
| tree | 6078303f35f0cd2ac33a33fcf4558be88f86c248 /MediaBrowser.Common/Net/DefaultHttpClient.cs | |
| parent | 93fe595e5e9863874c1973e4f2d7f3c85549d3f9 (diff) | |
Add default http client
Diffstat (limited to 'MediaBrowser.Common/Net/DefaultHttpClient.cs')
| -rw-r--r-- | MediaBrowser.Common/Net/DefaultHttpClient.cs | 108 |
1 files changed, 108 insertions, 0 deletions
diff --git a/MediaBrowser.Common/Net/DefaultHttpClient.cs b/MediaBrowser.Common/Net/DefaultHttpClient.cs new file mode 100644 index 000000000..cbc06eec0 --- /dev/null +++ b/MediaBrowser.Common/Net/DefaultHttpClient.cs @@ -0,0 +1,108 @@ +using System; +using System.IO; +using System.Net.Http; +using System.Threading; +using System.Threading.Tasks; + +namespace MediaBrowser.Common.Net +{ + /// <summary> + /// Default http client. + /// </summary> + public class DefaultHttpClient + { + private readonly HttpClient _httpClient; + + /// <summary> + /// Initializes a new instance of the <see cref="DefaultHttpClient" /> class. + /// </summary> + /// <param name="httpClient">Instance of httpclient.</param> + public DefaultHttpClient(HttpClient httpClient) + { + _httpClient = httpClient; + } + + /// <summary> + /// Make GET request. + /// </summary> + /// <param name="url">Url to request.</param> + /// <returns>A <see cref="Task"/> containing the <see cref="HttpResponseMessage"/>.</returns> + public Task<HttpResponseMessage> GetAsync(string url) + { + return _httpClient.GetAsync(url); + } + + /// <summary> + /// Make GET request. + /// </summary> + /// <param name="url">Url to request.</param> + /// <returns>A <see cref="Task"/> containing the <see cref="HttpResponseMessage"/>.</returns> + public Task<HttpResponseMessage> GetAsync(Uri url) + { + return _httpClient.GetAsync(url); + } + + /// <summary> + /// Make GET request. + /// </summary> + /// <param name="url">Url to request.</param> + /// <param name="cancellationToken">The cancellation token.</param> + /// <returns>A <see cref="Task"/> containing the <see cref="HttpResponseMessage"/>.</returns> + public Task<HttpResponseMessage> GetAsync(string url, CancellationToken cancellationToken) + { + return _httpClient.GetAsync(url, cancellationToken); + } + + /// <summary> + /// Make GET request. + /// </summary> + /// <param name="url">Url to request.</param> + /// <param name="cancellationToken">The cancellation token.</param> + /// <returns>A <see cref="Task"/> containing the <see cref="HttpResponseMessage"/>.</returns> + public Task<HttpResponseMessage> GetAsync(Uri url, CancellationToken cancellationToken) + { + return _httpClient.GetAsync(url, cancellationToken); + } + + /// <summary> + /// Get stream. + /// </summary> + /// <param name="url">Url to get stream from.</param> + /// <returns>A <see cref="Task"/> containing the <see cref="Stream"/>.</returns> + public Task<Stream> GetStreamAsync(string url) + { + return _httpClient.GetStreamAsync(url); + } + + /// <summary> + /// Get stream. + /// </summary> + /// <param name="url">Url to get stream from.</param> + /// <returns>A <see cref="Task"/> containing the <see cref="Stream"/>.</returns> + public Task<Stream> GetStreamAsync(Uri url) + { + return _httpClient.GetStreamAsync(url); + } + + /// <summary> + /// Send request. + /// </summary> + /// <param name="requestMessage">The <see cref="HttpRequestMessage"/>.</param> + /// <returns>A <see cref="Task"/> containing the <see cref="HttpResponseMessage"/>.</returns> + public Task<HttpResponseMessage> SendAsync(HttpRequestMessage requestMessage) + { + return _httpClient.SendAsync(requestMessage); + } + + /// <summary> + /// Send request. + /// </summary> + /// <param name="requestMessage">The <see cref="HttpRequestMessage"/>.</param> + /// <param name="cancellationToken">The cancellation token.</param> + /// <returns>A <see cref="Task"/> containing the <see cref="HttpResponseMessage"/>.</returns> + public Task<HttpResponseMessage> SendAsync(HttpRequestMessage requestMessage, CancellationToken cancellationToken) + { + return _httpClient.SendAsync(requestMessage, cancellationToken); + } + } +} |
