2017-09-18 03:00:37 +00:00
|
|
|
using System.Collections.Generic;
|
2016-04-25 19:53:26 +00:00
|
|
|
using NzbDrone.Common.Http.Proxy;
|
2020-01-03 12:49:24 +00:00
|
|
|
using NzbDrone.Core.MediaFiles;
|
2019-05-05 03:50:00 +00:00
|
|
|
using NzbDrone.Core.Qualities;
|
2019-03-29 02:20:40 +00:00
|
|
|
using NzbDrone.Core.Security;
|
2013-02-24 06:48:52 +00:00
|
|
|
|
|
|
|
namespace NzbDrone.Core.Configuration
|
|
|
|
{
|
|
|
|
public interface IConfigService
|
|
|
|
{
|
2014-02-16 09:56:12 +00:00
|
|
|
void SaveConfigDictionary(Dictionary<string, object> configValues);
|
|
|
|
|
2015-10-03 17:45:26 +00:00
|
|
|
bool IsDefined(string key);
|
2014-04-19 15:09:22 +00:00
|
|
|
|
2022-11-22 01:51:00 +00:00
|
|
|
// Download Client
|
2015-10-03 17:45:26 +00:00
|
|
|
string DownloadClientWorkingFolders { get; set; }
|
|
|
|
int DownloadClientHistoryLimit { get; set; }
|
2014-02-16 09:56:12 +00:00
|
|
|
|
2022-11-22 01:51:00 +00:00
|
|
|
// Completed/Failed Download Handling (Download client)
|
2015-10-03 17:45:26 +00:00
|
|
|
bool EnableCompletedDownloadHandling { get; set; }
|
2014-04-19 15:09:22 +00:00
|
|
|
|
2015-10-03 17:45:26 +00:00
|
|
|
bool AutoRedownloadFailed { get; set; }
|
2014-04-01 20:07:41 +00:00
|
|
|
|
2022-11-22 01:51:00 +00:00
|
|
|
// Media Management
|
2017-07-25 01:56:40 +00:00
|
|
|
bool AutoUnmonitorPreviouslyDownloadedTracks { get; set; }
|
2015-10-03 17:45:26 +00:00
|
|
|
string RecycleBin { get; set; }
|
2019-08-11 07:22:26 +00:00
|
|
|
int RecycleBinCleanupDays { get; set; }
|
2019-05-05 03:50:00 +00:00
|
|
|
ProperDownloadTypes DownloadPropersAndRepacks { get; set; }
|
2017-07-25 01:56:40 +00:00
|
|
|
bool CreateEmptyArtistFolders { get; set; }
|
2018-03-15 01:28:46 +00:00
|
|
|
bool DeleteEmptyFolders { get; set; }
|
2014-03-13 05:27:36 +00:00
|
|
|
FileDateType FileDate { get; set; }
|
2015-10-03 17:45:26 +00:00
|
|
|
bool SkipFreeSpaceCheckWhenImporting { get; set; }
|
2019-09-12 00:50:57 +00:00
|
|
|
int MinimumFreeSpaceWhenImporting { get; set; }
|
2015-10-03 17:45:26 +00:00
|
|
|
bool CopyUsingHardlinks { get; set; }
|
2017-03-25 16:13:28 +00:00
|
|
|
bool ImportExtraFiles { get; set; }
|
2015-12-25 09:22:00 +00:00
|
|
|
string ExtraFileExtensions { get; set; }
|
2020-02-27 21:27:03 +00:00
|
|
|
bool WatchLibraryForChanges { get; set; }
|
2018-11-11 04:50:21 +00:00
|
|
|
RescanAfterRefreshType RescanAfterRefresh { get; set; }
|
2019-02-16 14:49:24 +00:00
|
|
|
AllowFingerprinting AllowFingerprinting { get; set; }
|
2014-02-16 09:56:12 +00:00
|
|
|
|
2022-11-22 01:51:00 +00:00
|
|
|
// Permissions (Media Management)
|
2015-10-03 17:45:26 +00:00
|
|
|
bool SetPermissionsLinux { get; set; }
|
2020-10-05 23:00:47 +00:00
|
|
|
string ChmodFolder { get; set; }
|
|
|
|
string ChownGroup { get; set; }
|
2014-02-16 09:56:12 +00:00
|
|
|
|
2022-11-22 01:51:00 +00:00
|
|
|
// Indexers
|
2015-10-03 17:45:26 +00:00
|
|
|
int Retention { get; set; }
|
|
|
|
int RssSyncInterval { get; set; }
|
2018-01-14 19:47:36 +00:00
|
|
|
int MaximumSize { get; set; }
|
2015-10-03 17:45:26 +00:00
|
|
|
int MinimumAge { get; set; }
|
2014-08-05 05:44:09 +00:00
|
|
|
|
2022-11-22 01:51:00 +00:00
|
|
|
// UI
|
2015-10-03 17:45:26 +00:00
|
|
|
int FirstDayOfWeek { get; set; }
|
|
|
|
string CalendarWeekColumnHeader { get; set; }
|
|
|
|
|
|
|
|
string ShortDateFormat { get; set; }
|
|
|
|
string LongDateFormat { get; set; }
|
|
|
|
string TimeFormat { get; set; }
|
|
|
|
bool ShowRelativeDates { get; set; }
|
|
|
|
bool EnableColorImpairedMode { get; set; }
|
2021-10-02 01:03:57 +00:00
|
|
|
int UILanguage { get; set; }
|
2020-01-03 12:49:24 +00:00
|
|
|
|
2019-03-05 01:16:56 +00:00
|
|
|
bool ExpandAlbumByDefault { get; set; }
|
|
|
|
bool ExpandSingleByDefault { get; set; }
|
|
|
|
bool ExpandEPByDefault { get; set; }
|
|
|
|
bool ExpandBroadcastByDefault { get; set; }
|
|
|
|
bool ExpandOtherByDefault { get; set; }
|
2015-01-02 18:57:51 +00:00
|
|
|
|
2022-11-22 01:51:00 +00:00
|
|
|
// Internal
|
2015-10-03 17:45:26 +00:00
|
|
|
bool CleanupMetadataImages { get; set; }
|
2015-01-26 02:03:21 +00:00
|
|
|
|
2018-09-02 04:42:03 +00:00
|
|
|
string PlexClientIdentifier { get; }
|
|
|
|
|
2022-11-22 01:51:00 +00:00
|
|
|
// Metadata
|
2017-09-21 02:13:14 +00:00
|
|
|
string MetadataSource { get; set; }
|
2019-03-15 12:10:45 +00:00
|
|
|
WriteAudioTagsType WriteAudioTags { get; set; }
|
|
|
|
bool ScrubAudioTags { get; set; }
|
2015-01-26 02:03:21 +00:00
|
|
|
|
2022-11-22 01:51:00 +00:00
|
|
|
// Forms Auth
|
2015-01-26 02:03:21 +00:00
|
|
|
string RijndaelPassphrase { get; }
|
|
|
|
string HmacPassphrase { get; }
|
|
|
|
string RijndaelSalt { get; }
|
|
|
|
string HmacSalt { get; }
|
2016-02-02 18:42:22 +00:00
|
|
|
|
2022-11-22 01:51:00 +00:00
|
|
|
// Proxy
|
2016-02-02 18:42:22 +00:00
|
|
|
bool ProxyEnabled { get; }
|
|
|
|
ProxyType ProxyType { get; }
|
|
|
|
string ProxyHostname { get; }
|
|
|
|
int ProxyPort { get; }
|
|
|
|
string ProxyUsername { get; }
|
|
|
|
string ProxyPassword { get; }
|
2016-04-25 19:53:26 +00:00
|
|
|
string ProxyBypassFilter { get; }
|
2016-02-02 18:42:22 +00:00
|
|
|
bool ProxyBypassLocalAddresses { get; }
|
2018-01-14 22:11:37 +00:00
|
|
|
|
|
|
|
// Backups
|
|
|
|
string BackupFolder { get; }
|
|
|
|
int BackupInterval { get; }
|
|
|
|
int BackupRetention { get; }
|
|
|
|
|
2019-03-29 02:20:40 +00:00
|
|
|
CertificateValidationType CertificateValidation { get; }
|
2022-08-07 18:54:39 +00:00
|
|
|
string ApplicationUrl { get; }
|
2013-02-24 06:48:52 +00:00
|
|
|
}
|
2013-07-04 01:00:46 +00:00
|
|
|
}
|