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.
Lidarr/src/NzbDrone.Core/Messaging/Commands/Command.cs

46 lines
1.3 KiB

using System;
using System.Text.Json.Serialization;
using NzbDrone.Common.Serializer;
namespace NzbDrone.Core.Messaging.Commands
{
[JsonConverter(typeof(PolymorphicWriteOnlyJsonConverter<Command>))]
public abstract class Command
{
private bool _sendUpdatesToClient;
public virtual bool SendUpdatesToClient
{
get
{
return _sendUpdatesToClient;
}
set
{
_sendUpdatesToClient = value;
}
}
public virtual bool UpdateScheduledTask => true;
public virtual string CompletionMessage => null;
public virtual bool RequiresDiskAccess => false;
public virtual bool IsExclusive => false;
public virtual bool IsTypeExclusive => false;
public virtual bool IsLongRunning => false;
public string Name { get; private set; }
public DateTime? LastExecutionTime { get; set; }
public DateTime? LastStartTime { get; set; }
public CommandTrigger Trigger { get; set; }
public bool SuppressMessages { get; set; }
public string ClientUserAgent { get; set; }
public Command()
{
Name = GetType().Name.Replace("Command", "");
}
}
}