Remove proxy support
This commit is contained in:
@@ -1,27 +0,0 @@
|
|||||||
namespace UmlautAdaptarr.Options;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Represents options for proxy configuration.
|
|
||||||
/// </summary>
|
|
||||||
public class Proxy
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Gets or sets a value indicating whether to use a proxy.
|
|
||||||
/// </summary>
|
|
||||||
public bool Enabled { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets or sets the address of the proxy.
|
|
||||||
/// </summary>
|
|
||||||
public string? Address { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets or sets the username for proxy authentication.
|
|
||||||
/// </summary>
|
|
||||||
public string? Username { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets or sets the password for proxy authentication.
|
|
||||||
/// </summary>
|
|
||||||
public string? Password { get; set; }
|
|
||||||
}
|
|
||||||
@@ -1,32 +0,0 @@
|
|||||||
namespace UmlautAdaptarr.Options;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Represents options for proxy configuration.
|
|
||||||
/// </summary>
|
|
||||||
public class ProxyOptions
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Gets or sets a value indicating whether to use a proxy.
|
|
||||||
/// </summary>
|
|
||||||
public bool Enabled { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets or sets the address of the proxy.
|
|
||||||
/// </summary>
|
|
||||||
public string? Address { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets or sets the username for proxy authentication.
|
|
||||||
/// </summary>
|
|
||||||
public string? Username { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets or sets the password for proxy authentication.
|
|
||||||
/// </summary>
|
|
||||||
public string? Password { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Bypass Local Ip Addresses , Proxy will ignore local Ip Addresses
|
|
||||||
/// </summary>
|
|
||||||
public bool BypassOnLocal { get; set; }
|
|
||||||
}
|
|
||||||
@@ -39,8 +39,6 @@ internal class Program
|
|||||||
DecompressionMethods.Brotli
|
DecompressionMethods.Brotli
|
||||||
};
|
};
|
||||||
|
|
||||||
var proxyOptions = configuration.GetSection("Proxy").Get<ProxyOptions>();
|
|
||||||
handler.ConfigureProxy(proxyOptions);
|
|
||||||
return handler;
|
return handler;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -1,53 +0,0 @@
|
|||||||
using System;
|
|
||||||
using System.Net;
|
|
||||||
using UmlautAdaptarr.Options;
|
|
||||||
|
|
||||||
namespace UmlautAdaptarr.Utilities
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Extension methods for configuring proxies.
|
|
||||||
/// </summary>
|
|
||||||
public static class ProxyExtension
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Logger instance for logging proxy configurations.
|
|
||||||
/// </summary>
|
|
||||||
private static ILogger Logger = GlobalStaticLogger.Logger;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Configures the proxy settings for the provided HttpClientHandler instance.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="handler">The HttpClientHandler instance to configure.</param>
|
|
||||||
/// <param name="proxyOptions">ProxyOptions options to be used for configuration.</param>
|
|
||||||
/// <returns>The configured HttpClientHandler instance.</returns>
|
|
||||||
public static HttpClientHandler ConfigureProxy(this HttpClientHandler handler, ProxyOptions? proxyOptions)
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
if (proxyOptions != null && proxyOptions.Enabled)
|
|
||||||
{
|
|
||||||
Logger.LogInformation("Use Proxy {0}", proxyOptions.Address);
|
|
||||||
handler.UseProxy = true;
|
|
||||||
handler.Proxy = new WebProxy(proxyOptions.Address, proxyOptions.BypassOnLocal);
|
|
||||||
|
|
||||||
if (!string.IsNullOrEmpty(proxyOptions.Username) && !string.IsNullOrEmpty(proxyOptions.Password))
|
|
||||||
{
|
|
||||||
Logger.LogInformation("Use Proxy Credentials from User {0}", proxyOptions.Username);
|
|
||||||
handler.DefaultProxyCredentials =
|
|
||||||
new NetworkCredential(proxyOptions.Username, proxyOptions.Password);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Logger.LogDebug("No proxy was set");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
Logger.LogError(ex, "Error occurred while configuring proxy, no Proxy will be used!");
|
|
||||||
}
|
|
||||||
|
|
||||||
return handler;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -64,19 +64,5 @@
|
|||||||
"Enabled": false,
|
"Enabled": false,
|
||||||
"Host": "your_readarr_host_url",
|
"Host": "your_readarr_host_url",
|
||||||
"ApiKey": "your_readarr_api_key"
|
"ApiKey": "your_readarr_api_key"
|
||||||
},
|
|
||||||
|
|
||||||
// Docker Environment Variables:
|
|
||||||
// - Proxy__Enabled: true (set to false to disable)
|
|
||||||
// - Proxy__Address: http://yourproxyaddress:port
|
|
||||||
// - Proxy__Username: your_proxy_username
|
|
||||||
// - Proxy__Password: your_proxy_password
|
|
||||||
// - Proxy__BypassOnLocal: true (set to false to not bypass local IP addresses)
|
|
||||||
"Proxy": {
|
|
||||||
"Enabled": false,
|
|
||||||
"Address": "http://yourproxyaddress:port",
|
|
||||||
"Username": "your_proxy_username",
|
|
||||||
"Password": "your_proxy_password",
|
|
||||||
"BypassOnLocal": true
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user