You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
using System;
|
|
|
|
using Lidarr.Http.REST;
|
|
|
|
using NzbDrone.Core.Datastore.Events;
|
|
|
|
|
|
|
|
namespace Lidarr.Http
|
|
|
|
{
|
|
|
|
public class ResourceChangeMessage<TResource>
|
|
|
|
where TResource : RestResource
|
|
|
|
{
|
|
|
|
public TResource Resource { get; private set; }
|
|
|
|
public ModelAction Action { get; private set; }
|
|
|
|
|
|
|
|
public ResourceChangeMessage(ModelAction action)
|
|
|
|
{
|
|
|
|
if (action != ModelAction.Deleted && action != ModelAction.Sync)
|
|
|
|
{
|
|
|
|
throw new InvalidOperationException("Resource message without a resource needs to have Delete or Sync as action");
|
|
|
|
}
|
|
|
|
|
|
|
|
Action = action;
|
|
|
|
}
|
|
|
|
|
|
|
|
public ResourceChangeMessage(TResource resource, ModelAction action)
|
|
|
|
{
|
|
|
|
Resource = resource;
|
|
|
|
Action = action;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|