using NzbDrone.Core.ThingiProvider; namespace NzbDrone.Core.Notifications { public class NotificationDefinition : ProviderDefinition { public bool OnGrab { get; set; } public bool OnReleaseImport { get; set; } public bool OnUpgrade { get; set; } public bool OnRename { get; set; } public bool OnHealthIssue { get; set; } public bool OnDownloadFailure { get; set; } public bool OnImportFailure { get; set; } public bool OnTrackRetag { get; set; } public bool OnApplicationUpdate { get; set; } public bool SupportsOnGrab { get; set; } public bool SupportsOnReleaseImport { get; set; } public bool SupportsOnUpgrade { get; set; } public bool SupportsOnRename { get; set; } public bool SupportsOnHealthIssue { get; set; } public bool IncludeHealthWarnings { get; set; } public bool SupportsOnDownloadFailure { get; set; } public bool SupportsOnImportFailure { get; set; } public bool SupportsOnTrackRetag { get; set; } public bool SupportsOnApplicationUpdate { get; set; } public override bool Enable => OnGrab || OnReleaseImport || (OnReleaseImport && OnUpgrade) || OnHealthIssue || OnDownloadFailure || OnImportFailure || OnTrackRetag || OnApplicationUpdate; } }