using System.Collections.Generic; using FluentValidation.Results; using NzbDrone.Common; using NzbDrone.Core.Tv; namespace NzbDrone.Core.Notifications.Pushover { public class Pushover : NotificationBase { private readonly IPushoverProxy _proxy; public Pushover(IPushoverProxy proxy) { _proxy = proxy; } public override string Link { get { return "https://pushover.net/"; } } public override void OnGrab(string message) { const string title = "Episode Grabbed"; _proxy.SendNotification(title, message, Settings.ApiKey, Settings.UserKey, (PushoverPriority)Settings.Priority, Settings.Sound); } public override void OnDownload(DownloadMessage message) { const string title = "Episode Downloaded"; _proxy.SendNotification(title, message.Message, Settings.ApiKey, Settings.UserKey, (PushoverPriority)Settings.Priority, Settings.Sound); } public override void AfterRename(Series series) { } public override ValidationResult Test() { var failures = new List(); failures.AddIfNotNull(_proxy.Test(Settings)); return new ValidationResult(failures); } } }