e0a6c7842b
* refactored code added deluge support added transmission support added content blocker added blacklist and whitelist * increased level on some logs; updated test docker compose; updated dev appsettings * updated docker compose and readme * moved some logs * fixed env var typo; fixed sonarr and radarr default download client
37 lines
781 B
C#
37 lines
781 B
C#
namespace Common.Configuration;
|
|
|
|
public record TransmissionConfig
|
|
{
|
|
public const string SectionName = "Transmission";
|
|
|
|
public required bool Enabled { get; init; }
|
|
|
|
public Uri? Url { get; init; }
|
|
|
|
public string? Username { get; init; }
|
|
|
|
public string? Password { get; init; }
|
|
|
|
public void Validate()
|
|
{
|
|
if (!Enabled)
|
|
{
|
|
return;
|
|
}
|
|
|
|
if (Url is null)
|
|
{
|
|
throw new ArgumentNullException(nameof(Url));
|
|
}
|
|
|
|
if (string.IsNullOrEmpty(Username))
|
|
{
|
|
throw new ArgumentNullException(nameof(Username));
|
|
}
|
|
|
|
if (string.IsNullOrEmpty(Password))
|
|
{
|
|
throw new ArgumentNullException(nameof(Password));
|
|
}
|
|
}
|
|
} |