using System; using NzbDrone.Api.REST; using NzbDrone.Core.Configuration; using NzbDrone.Core.MediaFiles; namespace NzbDrone.Api.Config { public class MediaManagementConfigResource : RestResource { public bool AutoUnmonitorPreviouslyDownloadedEpisodes { get; set; } public string RecycleBin { get; set; } public bool AutoDownloadPropers { get; set; } public bool CreateEmptySeriesFolders { get; set; } public FileDateType FileDate { get; set; } public bool SetPermissionsLinux { get; set; } public string FileChmod { get; set; } public string FolderChmod { get; set; } public string ChownUser { get; set; } public string ChownGroup { get; set; } public bool SkipFreeSpaceCheckWhenImporting { get; set; } public bool CopyUsingHardlinks { get; set; } public bool EnableMediaInfo { get; set; } } public static class MediaManagementConfigResourceMapper { public static MediaManagementConfigResource ToResource(IConfigService model) { return new MediaManagementConfigResource { AutoUnmonitorPreviouslyDownloadedEpisodes = model.AutoUnmonitorPreviouslyDownloadedEpisodes, RecycleBin = model.RecycleBin, AutoDownloadPropers = model.AutoDownloadPropers, CreateEmptySeriesFolders = model.CreateEmptySeriesFolders, FileDate = model.FileDate, SetPermissionsLinux = model.SetPermissionsLinux, FileChmod = model.FileChmod, FolderChmod = model.FolderChmod, ChownUser = model.ChownUser, ChownGroup = model.ChownGroup, SkipFreeSpaceCheckWhenImporting = model.SkipFreeSpaceCheckWhenImporting, CopyUsingHardlinks = model.CopyUsingHardlinks, EnableMediaInfo = model.EnableMediaInfo, }; } } }