aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Common/Net/HttpRequestOptions.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Common/Net/HttpRequestOptions.cs')
-rw-r--r--MediaBrowser.Common/Net/HttpRequestOptions.cs66
1 files changed, 17 insertions, 49 deletions
diff --git a/MediaBrowser.Common/Net/HttpRequestOptions.cs b/MediaBrowser.Common/Net/HttpRequestOptions.cs
index bea178517..94b972a02 100644
--- a/MediaBrowser.Common/Net/HttpRequestOptions.cs
+++ b/MediaBrowser.Common/Net/HttpRequestOptions.cs
@@ -1,6 +1,5 @@
using System;
using System.Collections.Generic;
-using System.Linq;
using System.Threading;
using Microsoft.Net.Http.Headers;
@@ -17,7 +16,7 @@ namespace MediaBrowser.Common.Net
/// <value>The URL.</value>
public string Url { get; set; }
- public CompressionMethod? DecompressionMethod { get; set; }
+ public CompressionMethod DecompressionMethod { get; set; }
/// <summary>
/// Gets or sets the accept header.
@@ -28,6 +27,7 @@ namespace MediaBrowser.Common.Net
get => GetHeaderValue(HeaderNames.Accept);
set => RequestHeaders[HeaderNames.Accept] = value;
}
+
/// <summary>
/// Gets or sets the cancellation token.
/// </summary>
@@ -35,12 +35,6 @@ namespace MediaBrowser.Common.Net
public CancellationToken CancellationToken { get; set; }
/// <summary>
- /// Gets or sets the resource pool.
- /// </summary>
- /// <value>The resource pool.</value>
- public SemaphoreSlim ResourcePool { get; set; }
-
- /// <summary>
/// Gets or sets the user agent.
/// </summary>
/// <value>The user agent.</value>
@@ -54,25 +48,21 @@ namespace MediaBrowser.Common.Net
/// Gets or sets the referrer.
/// </summary>
/// <value>The referrer.</value>
- public string Referer { get; set; }
+ public string Referer
+ {
+ get => GetHeaderValue(HeaderNames.Referer);
+ set => RequestHeaders[HeaderNames.Referer] = value;
+ }
/// <summary>
/// Gets or sets the host.
/// </summary>
/// <value>The host.</value>
- public string Host { get; set; }
-
- /// <summary>
- /// Gets or sets the progress.
- /// </summary>
- /// <value>The progress.</value>
- public IProgress<double> Progress { get; set; }
-
- /// <summary>
- /// Gets or sets a value indicating whether [enable HTTP compression].
- /// </summary>
- /// <value><c>true</c> if [enable HTTP compression]; otherwise, <c>false</c>.</value>
- public bool EnableHttpCompression { get; set; }
+ public string Host
+ {
+ get => GetHeaderValue(HeaderNames.Host);
+ set => RequestHeaders[HeaderNames.Host] = value;
+ }
public Dictionary<string, string> RequestHeaders { get; private set; }
@@ -83,24 +73,14 @@ namespace MediaBrowser.Common.Net
public bool BufferContent { get; set; }
- public bool LogRequest { get; set; }
- public bool LogRequestAsDebug { get; set; }
- public bool LogErrors { get; set; }
- public bool LogResponse { get; set; }
- public bool LogResponseHeaders { get; set; }
-
public bool LogErrorResponseBody { get; set; }
public bool EnableKeepAlive { get; set; }
public CacheMode CacheMode { get; set; }
public TimeSpan CacheLength { get; set; }
- public int TimeoutMs { get; set; }
public bool EnableDefaultUserAgent { get; set; }
- public bool AppendCharsetToMimeType { get; set; }
- public string DownloadFilePath { get; set; }
-
private string GetHeaderValue(string name)
{
RequestHeaders.TryGetValue(name, out var value);
@@ -113,24 +93,10 @@ namespace MediaBrowser.Common.Net
/// </summary>
public HttpRequestOptions()
{
- EnableHttpCompression = true;
-
RequestHeaders = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
- LogRequest = true;
- LogErrors = true;
CacheMode = CacheMode.None;
-
- TimeoutMs = 20000;
- }
-
- public void SetPostData(IDictionary<string, string> values)
- {
- var strings = values.Keys.Select(key => string.Format("{0}={1}", key, values[key]));
- var postContent = string.Join("&", strings.ToArray());
-
- RequestContent = postContent;
- RequestContentType = "application/x-www-form-urlencoded";
+ DecompressionMethod = CompressionMethod.Deflate;
}
}
@@ -140,9 +106,11 @@ namespace MediaBrowser.Common.Net
Unconditional = 1
}
+ [Flags]
public enum CompressionMethod
{
- Deflate,
- Gzip
+ None = 0b00000001,
+ Deflate = 0b00000010,
+ Gzip = 0b00000100
}
}