2018-02-15 12:39:01 +00:00
|
|
|
using System.Collections.Generic;
|
2014-03-13 05:27:36 +00:00
|
|
|
using NzbDrone.Core.MediaFiles;
|
2016-04-25 19:53:26 +00:00
|
|
|
using NzbDrone.Common.Http.Proxy;
|
2017-06-17 13:02:58 +00:00
|
|
|
using NzbDrone.Core.Parser;
|
2019-04-13 03:25:58 +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
|
|
|
|
2014-02-16 09:56:12 +00:00
|
|
|
//Download Client
|
2015-10-03 17:45:26 +00:00
|
|
|
string DownloadClientWorkingFolders { get; set; }
|
|
|
|
int DownloadClientHistoryLimit { get; set; }
|
2019-05-02 10:51:21 +00:00
|
|
|
int CheckForFinishedDownloadInterval { get; set; }
|
2014-02-16 09:56:12 +00:00
|
|
|
|
2014-04-19 15:09:22 +00:00
|
|
|
//Completed/Failed Download Handling (Download client)
|
2015-10-03 17:45:26 +00:00
|
|
|
bool EnableCompletedDownloadHandling { get; set; }
|
|
|
|
bool RemoveCompletedDownloads { get; set; }
|
2014-04-19 15:09:22 +00:00
|
|
|
|
2015-10-03 17:45:26 +00:00
|
|
|
bool AutoRedownloadFailed { get; set; }
|
|
|
|
bool RemoveFailedDownloads { get; set; }
|
2014-04-01 20:07:41 +00:00
|
|
|
|
2014-02-16 09:56:12 +00:00
|
|
|
//Media Management
|
2018-11-23 07:03:32 +00:00
|
|
|
bool AutoUnmonitorPreviouslyDownloadedMovies { get; set; }
|
2015-10-03 17:45:26 +00:00
|
|
|
string RecycleBin { get; set; }
|
2019-08-31 02:50:03 +00:00
|
|
|
int RecycleBinCleanupDays { get; set; }
|
2015-10-03 17:45:26 +00:00
|
|
|
bool AutoDownloadPropers { get; set; }
|
2018-11-23 07:03:32 +00:00
|
|
|
bool CreateEmptyMovieFolders { get; set; }
|
|
|
|
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-08-31 02:50:03 +00:00
|
|
|
int MinimumFreeSpaceWhenImporting { get; set; }
|
2015-10-03 17:45:26 +00:00
|
|
|
bool CopyUsingHardlinks { get; set; }
|
|
|
|
bool EnableMediaInfo { get; set; }
|
2018-02-15 12:39:01 +00:00
|
|
|
bool ImportExtraFiles { get; set; }
|
2015-12-25 09:22:00 +00:00
|
|
|
string ExtraFileExtensions { get; set; }
|
2018-11-23 07:03:32 +00:00
|
|
|
RescanAfterRefreshType RescanAfterRefresh { get; set; }
|
2017-04-26 11:31:55 +00:00
|
|
|
bool AutoRenameFolders { get; set; }
|
|
|
|
bool PathsDefaultStatic { get; set; }
|
2014-02-16 09:56:12 +00:00
|
|
|
|
|
|
|
//Permissions (Media Management)
|
2015-10-03 17:45:26 +00:00
|
|
|
bool SetPermissionsLinux { get; set; }
|
|
|
|
string FileChmod { get; set; }
|
|
|
|
string FolderChmod { get; set; }
|
|
|
|
string ChownUser { get; set; }
|
|
|
|
string ChownGroup { get; set; }
|
2014-02-16 09:56:12 +00:00
|
|
|
|
|
|
|
//Indexers
|
2015-10-03 17:45:26 +00:00
|
|
|
int Retention { get; set; }
|
|
|
|
int RssSyncInterval { get; set; }
|
2018-03-26 07:03:43 +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
|
|
|
|
2017-04-17 15:12:09 +00:00
|
|
|
bool PreferIndexerFlags { get; set; }
|
2017-02-23 05:03:48 +00:00
|
|
|
|
2019-12-22 21:24:10 +00:00
|
|
|
int AvailabilityDelay { get; set; }
|
2017-04-17 15:12:09 +00:00
|
|
|
|
2019-12-22 21:24:10 +00:00
|
|
|
bool AllowHardcodedSubs { get; set; }
|
|
|
|
string WhitelistedHardcodedSubs { get; set; }
|
2017-06-17 13:02:58 +00:00
|
|
|
ParsingLeniencyType ParsingLeniency { get; set; }
|
2017-04-10 09:17:31 +00:00
|
|
|
|
2017-01-28 19:59:21 +00:00
|
|
|
int NetImportSyncInterval { get; set; }
|
2019-12-22 21:24:10 +00:00
|
|
|
string ListSyncLevel { get; set; }
|
|
|
|
string ImportExclusions { get; set; }
|
2017-01-28 19:59:21 +00:00
|
|
|
|
2014-08-05 05:44:09 +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; }
|
2015-01-02 18:57:51 +00:00
|
|
|
|
|
|
|
//Internal
|
2015-10-03 17:45:26 +00:00
|
|
|
bool CleanupMetadataImages { get; set; }
|
2019-04-13 03:25:58 +00:00
|
|
|
string PlexClientIdentifier { get; }
|
2015-01-26 02:03:21 +00:00
|
|
|
|
|
|
|
//Forms Auth
|
|
|
|
string RijndaelPassphrase { get; }
|
|
|
|
string HmacPassphrase { get; }
|
|
|
|
string RijndaelSalt { get; }
|
|
|
|
string HmacSalt { get; }
|
2016-02-02 18:42:22 +00:00
|
|
|
|
|
|
|
//Proxy
|
|
|
|
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-11-23 07:03:32 +00:00
|
|
|
|
|
|
|
// Backups
|
|
|
|
string BackupFolder { get; }
|
|
|
|
int BackupInterval { get; }
|
|
|
|
int BackupRetention { get; }
|
2019-04-13 03:25:58 +00:00
|
|
|
|
|
|
|
CertificateValidationType CertificateValidation { get; }
|
2013-02-24 06:48:52 +00:00
|
|
|
}
|
2013-07-04 01:00:46 +00:00
|
|
|
}
|