2018-11-23 07:03:32 +00:00
|
|
|
using NzbDrone.Core.Notifications;
|
|
|
|
|
2019-12-03 01:36:18 +00:00
|
|
|
namespace Radarr.Api.V3.Notifications
|
2018-11-23 07:03:32 +00:00
|
|
|
{
|
2021-02-04 21:14:52 +00:00
|
|
|
public class NotificationResource : ProviderResource<NotificationResource>
|
2018-11-23 07:03:32 +00:00
|
|
|
{
|
|
|
|
public string Link { get; set; }
|
|
|
|
public bool OnGrab { get; set; }
|
|
|
|
public bool OnDownload { get; set; }
|
|
|
|
public bool OnUpgrade { get; set; }
|
|
|
|
public bool OnRename { get; set; }
|
2022-06-03 01:44:47 +00:00
|
|
|
public bool OnMovieAdded { get; set; }
|
2021-03-05 23:30:08 +00:00
|
|
|
public bool OnMovieDelete { get; set; }
|
|
|
|
public bool OnMovieFileDelete { get; set; }
|
|
|
|
public bool OnMovieFileDeleteForUpgrade { get; set; }
|
2019-11-04 20:44:33 +00:00
|
|
|
public bool OnHealthIssue { get; set; }
|
2023-05-08 01:57:14 +00:00
|
|
|
public bool OnHealthRestored { get; set; }
|
2021-12-21 22:07:25 +00:00
|
|
|
public bool OnApplicationUpdate { get; set; }
|
2022-10-17 16:19:54 +00:00
|
|
|
public bool OnManualInteractionRequired { get; set; }
|
2018-11-23 07:03:32 +00:00
|
|
|
public bool SupportsOnGrab { get; set; }
|
|
|
|
public bool SupportsOnDownload { get; set; }
|
|
|
|
public bool SupportsOnUpgrade { get; set; }
|
|
|
|
public bool SupportsOnRename { get; set; }
|
2022-06-03 01:44:47 +00:00
|
|
|
public bool SupportsOnMovieAdded { get; set; }
|
2021-03-05 23:30:08 +00:00
|
|
|
public bool SupportsOnMovieDelete { get; set; }
|
|
|
|
public bool SupportsOnMovieFileDelete { get; set; }
|
|
|
|
public bool SupportsOnMovieFileDeleteForUpgrade { get; set; }
|
2019-11-04 20:44:33 +00:00
|
|
|
public bool SupportsOnHealthIssue { get; set; }
|
2023-05-08 01:57:14 +00:00
|
|
|
public bool SupportsOnHealthRestored { get; set; }
|
2021-12-21 05:12:12 +00:00
|
|
|
public bool SupportsOnApplicationUpdate { get; set; }
|
2022-10-17 16:19:54 +00:00
|
|
|
public bool SupportsOnManualInteractionRequired { get; set; }
|
2019-11-04 20:44:33 +00:00
|
|
|
public bool IncludeHealthWarnings { get; set; }
|
2018-11-23 07:03:32 +00:00
|
|
|
public string TestCommand { get; set; }
|
|
|
|
}
|
|
|
|
|
|
|
|
public class NotificationResourceMapper : ProviderResourceMapper<NotificationResource, NotificationDefinition>
|
|
|
|
{
|
|
|
|
public override NotificationResource ToResource(NotificationDefinition definition)
|
|
|
|
{
|
2019-12-22 22:08:53 +00:00
|
|
|
if (definition == null)
|
|
|
|
{
|
|
|
|
return default(NotificationResource);
|
|
|
|
}
|
2018-11-23 07:03:32 +00:00
|
|
|
|
|
|
|
var resource = base.ToResource(definition);
|
|
|
|
|
|
|
|
resource.OnGrab = definition.OnGrab;
|
|
|
|
resource.OnDownload = definition.OnDownload;
|
|
|
|
resource.OnUpgrade = definition.OnUpgrade;
|
|
|
|
resource.OnRename = definition.OnRename;
|
2022-06-03 01:44:47 +00:00
|
|
|
resource.OnMovieAdded = definition.OnMovieAdded;
|
2021-03-05 23:30:08 +00:00
|
|
|
resource.OnMovieDelete = definition.OnMovieDelete;
|
|
|
|
resource.OnMovieFileDelete = definition.OnMovieFileDelete;
|
|
|
|
resource.OnMovieFileDeleteForUpgrade = definition.OnMovieFileDeleteForUpgrade;
|
2019-11-04 20:44:33 +00:00
|
|
|
resource.OnHealthIssue = definition.OnHealthIssue;
|
2023-05-08 01:57:14 +00:00
|
|
|
resource.OnHealthRestored = definition.OnHealthRestored;
|
2021-12-21 22:07:25 +00:00
|
|
|
resource.OnApplicationUpdate = definition.OnApplicationUpdate;
|
2022-10-17 16:19:54 +00:00
|
|
|
resource.OnManualInteractionRequired = definition.OnManualInteractionRequired;
|
2018-11-23 07:03:32 +00:00
|
|
|
resource.SupportsOnGrab = definition.SupportsOnGrab;
|
|
|
|
resource.SupportsOnDownload = definition.SupportsOnDownload;
|
|
|
|
resource.SupportsOnUpgrade = definition.SupportsOnUpgrade;
|
|
|
|
resource.SupportsOnRename = definition.SupportsOnRename;
|
2022-06-03 01:44:47 +00:00
|
|
|
resource.SupportsOnMovieAdded = definition.SupportsOnMovieAdded;
|
2021-03-05 23:30:08 +00:00
|
|
|
resource.SupportsOnMovieDelete = definition.SupportsOnMovieDelete;
|
|
|
|
resource.SupportsOnMovieFileDelete = definition.SupportsOnMovieFileDelete;
|
|
|
|
resource.SupportsOnMovieFileDeleteForUpgrade = definition.SupportsOnMovieFileDeleteForUpgrade;
|
2019-11-04 20:44:33 +00:00
|
|
|
resource.SupportsOnHealthIssue = definition.SupportsOnHealthIssue;
|
2023-05-08 01:57:14 +00:00
|
|
|
resource.SupportsOnHealthRestored = definition.SupportsOnHealthRestored;
|
2019-11-04 20:44:33 +00:00
|
|
|
resource.IncludeHealthWarnings = definition.IncludeHealthWarnings;
|
2021-12-21 05:12:12 +00:00
|
|
|
resource.SupportsOnApplicationUpdate = definition.SupportsOnApplicationUpdate;
|
2022-10-17 16:19:54 +00:00
|
|
|
resource.SupportsOnManualInteractionRequired = definition.SupportsOnManualInteractionRequired;
|
2018-11-23 07:03:32 +00:00
|
|
|
|
|
|
|
return resource;
|
|
|
|
}
|
|
|
|
|
2022-05-24 03:41:50 +00:00
|
|
|
public override NotificationDefinition ToModel(NotificationResource resource, NotificationDefinition existingDefinition)
|
2018-11-23 07:03:32 +00:00
|
|
|
{
|
2019-12-22 22:08:53 +00:00
|
|
|
if (resource == null)
|
|
|
|
{
|
|
|
|
return default(NotificationDefinition);
|
|
|
|
}
|
2018-11-23 07:03:32 +00:00
|
|
|
|
2022-05-24 03:41:50 +00:00
|
|
|
var definition = base.ToModel(resource, existingDefinition);
|
2018-11-23 07:03:32 +00:00
|
|
|
|
|
|
|
definition.OnGrab = resource.OnGrab;
|
|
|
|
definition.OnDownload = resource.OnDownload;
|
|
|
|
definition.OnUpgrade = resource.OnUpgrade;
|
|
|
|
definition.OnRename = resource.OnRename;
|
2022-06-03 01:44:47 +00:00
|
|
|
definition.OnMovieAdded = resource.OnMovieAdded;
|
2021-03-05 23:30:08 +00:00
|
|
|
definition.OnMovieDelete = resource.OnMovieDelete;
|
|
|
|
definition.OnMovieFileDelete = resource.OnMovieFileDelete;
|
|
|
|
definition.OnMovieFileDeleteForUpgrade = resource.OnMovieFileDeleteForUpgrade;
|
2019-11-04 20:44:33 +00:00
|
|
|
definition.OnHealthIssue = resource.OnHealthIssue;
|
2023-05-08 01:57:14 +00:00
|
|
|
definition.OnHealthRestored = resource.OnHealthRestored;
|
2021-12-21 22:07:25 +00:00
|
|
|
definition.OnApplicationUpdate = resource.OnApplicationUpdate;
|
2022-10-17 16:19:54 +00:00
|
|
|
definition.OnManualInteractionRequired = resource.OnManualInteractionRequired;
|
2018-11-23 07:03:32 +00:00
|
|
|
definition.SupportsOnGrab = resource.SupportsOnGrab;
|
|
|
|
definition.SupportsOnDownload = resource.SupportsOnDownload;
|
|
|
|
definition.SupportsOnUpgrade = resource.SupportsOnUpgrade;
|
|
|
|
definition.SupportsOnRename = resource.SupportsOnRename;
|
2022-06-03 01:44:47 +00:00
|
|
|
definition.SupportsOnMovieAdded = resource.SupportsOnMovieAdded;
|
2021-03-05 23:30:08 +00:00
|
|
|
definition.SupportsOnMovieDelete = resource.SupportsOnMovieDelete;
|
|
|
|
definition.SupportsOnMovieFileDelete = resource.SupportsOnMovieFileDelete;
|
|
|
|
definition.SupportsOnMovieFileDeleteForUpgrade = resource.SupportsOnMovieFileDeleteForUpgrade;
|
2019-11-04 20:44:33 +00:00
|
|
|
definition.SupportsOnHealthIssue = resource.SupportsOnHealthIssue;
|
2023-05-08 01:57:14 +00:00
|
|
|
definition.SupportsOnHealthRestored = resource.SupportsOnHealthRestored;
|
2019-11-04 20:44:33 +00:00
|
|
|
definition.IncludeHealthWarnings = resource.IncludeHealthWarnings;
|
2021-12-21 05:12:12 +00:00
|
|
|
definition.SupportsOnApplicationUpdate = resource.SupportsOnApplicationUpdate;
|
2022-10-17 16:19:54 +00:00
|
|
|
definition.SupportsOnManualInteractionRequired = resource.SupportsOnManualInteractionRequired;
|
2018-11-23 07:03:32 +00:00
|
|
|
|
|
|
|
return definition;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|