sonarr_api_rs/models/
media_management_config_resource.rs

1/*
2 * Sonarr
3 *
4 * Sonarr API docs - The v3 API docs apply to both v3 and v4 versions of Sonarr. Some functionality may only be available in v4 of the Sonarr application.
5 *
6 * The version of the OpenAPI document: 3.0.0
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct MediaManagementConfigResource {
16    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
17    pub id: Option<i32>,
18    #[serde(rename = "autoUnmonitorPreviouslyDownloadedEpisodes", skip_serializing_if = "Option::is_none")]
19    pub auto_unmonitor_previously_downloaded_episodes: Option<bool>,
20    #[serde(rename = "recycleBin", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
21    pub recycle_bin: Option<Option<String>>,
22    #[serde(rename = "recycleBinCleanupDays", skip_serializing_if = "Option::is_none")]
23    pub recycle_bin_cleanup_days: Option<i32>,
24    #[serde(rename = "downloadPropersAndRepacks", skip_serializing_if = "Option::is_none")]
25    pub download_propers_and_repacks: Option<models::ProperDownloadTypes>,
26    #[serde(rename = "createEmptySeriesFolders", skip_serializing_if = "Option::is_none")]
27    pub create_empty_series_folders: Option<bool>,
28    #[serde(rename = "deleteEmptyFolders", skip_serializing_if = "Option::is_none")]
29    pub delete_empty_folders: Option<bool>,
30    #[serde(rename = "fileDate", skip_serializing_if = "Option::is_none")]
31    pub file_date: Option<models::FileDateType>,
32    #[serde(rename = "rescanAfterRefresh", skip_serializing_if = "Option::is_none")]
33    pub rescan_after_refresh: Option<models::RescanAfterRefreshType>,
34    #[serde(rename = "setPermissionsLinux", skip_serializing_if = "Option::is_none")]
35    pub set_permissions_linux: Option<bool>,
36    #[serde(rename = "chmodFolder", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
37    pub chmod_folder: Option<Option<String>>,
38    #[serde(rename = "chownGroup", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
39    pub chown_group: Option<Option<String>>,
40    #[serde(rename = "episodeTitleRequired", skip_serializing_if = "Option::is_none")]
41    pub episode_title_required: Option<models::EpisodeTitleRequiredType>,
42    #[serde(rename = "skipFreeSpaceCheckWhenImporting", skip_serializing_if = "Option::is_none")]
43    pub skip_free_space_check_when_importing: Option<bool>,
44    #[serde(rename = "minimumFreeSpaceWhenImporting", skip_serializing_if = "Option::is_none")]
45    pub minimum_free_space_when_importing: Option<i32>,
46    #[serde(rename = "copyUsingHardlinks", skip_serializing_if = "Option::is_none")]
47    pub copy_using_hardlinks: Option<bool>,
48    #[serde(rename = "useScriptImport", skip_serializing_if = "Option::is_none")]
49    pub use_script_import: Option<bool>,
50    #[serde(rename = "scriptImportPath", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
51    pub script_import_path: Option<Option<String>>,
52    #[serde(rename = "importExtraFiles", skip_serializing_if = "Option::is_none")]
53    pub import_extra_files: Option<bool>,
54    #[serde(rename = "extraFileExtensions", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
55    pub extra_file_extensions: Option<Option<String>>,
56    #[serde(rename = "enableMediaInfo", skip_serializing_if = "Option::is_none")]
57    pub enable_media_info: Option<bool>,
58}
59
60impl MediaManagementConfigResource {
61    pub fn new() -> MediaManagementConfigResource {
62        MediaManagementConfigResource {
63            id: None,
64            auto_unmonitor_previously_downloaded_episodes: None,
65            recycle_bin: None,
66            recycle_bin_cleanup_days: None,
67            download_propers_and_repacks: None,
68            create_empty_series_folders: None,
69            delete_empty_folders: None,
70            file_date: None,
71            rescan_after_refresh: None,
72            set_permissions_linux: None,
73            chmod_folder: None,
74            chown_group: None,
75            episode_title_required: None,
76            skip_free_space_check_when_importing: None,
77            minimum_free_space_when_importing: None,
78            copy_using_hardlinks: None,
79            use_script_import: None,
80            script_import_path: None,
81            import_extra_files: None,
82            extra_file_extensions: None,
83            enable_media_info: None,
84        }
85    }
86}
87