protected override async Task <int> OnExecuteAuthenticatedAsync(QBittorrentClient client, CommandLineApplication app, IConsole console) { var rules = await client.GetRssAutoDownloadingRulesAsync(); if (rules.ContainsKey(Name)) { throw new Exception($"The rule with the name \"{Name}\" already exists."); } var rule = new RssAutoDownloadingRule { Enabled = !Disabled, MustContain = MustContain ?? string.Empty, MustNotContain = MustNotContain ?? string.Empty, UseRegex = UseRegex, EpisodeFilter = EpisodeFilter ?? string.Empty, SmartFilter = SmartFilter, PreviouslyMatchedEpisodes = PreviouslyMatchedEpisodes, AffectedFeeds = AffectedFeeds, IgnoreDays = IgnoreDays, LastMatch = LastMatch, AddPaused = ConvertPauseState(Paused), AssignedCategory = Category ?? string.Empty, SavePath = SavePath ?? string.Empty }; await client.SetRssAutoDownloadingRuleAsync(Name, rule); return(ExitCodes.Success); }
public RssRuleViewModel(string name, RssAutoDownloadingRule wrappedObject) { Name = name; _wrappedObject = wrappedObject ?? throw new ArgumentNullException(nameof(wrappedObject)); }