Inherit trigger from pushed command models

(cherry picked from commit 0bc4903954b955fce0c368ef7fd2a6f3761d6a93)
pull/2269/head
Bogdan 2 months ago
parent fd2a14e01b
commit 257d38de66

@ -105,6 +105,8 @@ namespace NzbDrone.Core.Messaging.Commands
_logger.Trace("Publishing {0}", command.Name);
_logger.Trace("Checking if command is queued or started: {0}", command.Name);
command.Trigger = trigger;
lock (_commandQueue)
{
var existingCommands = QueuedOrStarted(command.Name);
@ -141,7 +143,6 @@ namespace NzbDrone.Core.Messaging.Commands
var command = GetCommand(commandName);
command.LastExecutionTime = lastExecutionTime;
command.LastStartTime = lastStartTime;
command.Trigger = trigger;
return Push(command, priority, trigger);
}
@ -232,13 +233,13 @@ namespace NzbDrone.Core.Messaging.Commands
_repo.Trim();
}
private dynamic GetCommand(string commandName)
private Command GetCommand(string commandName)
{
commandName = commandName.Split('.').Last();
var commands = _knownTypes.GetImplementations(typeof(Command));
var commandType = commands.Single(c => c.Name.Equals(commandName, StringComparison.InvariantCultureIgnoreCase));
return Json.Deserialize("{}", commandType);
return Json.Deserialize("{}", commandType) as Command;
}
private void Update(CommandModel command, CommandStatus status, string message)

@ -61,9 +61,8 @@ namespace Prowlarr.Api.V1.Commands
using var reader = new StreamReader(Request.Body);
var body = reader.ReadToEnd();
dynamic command = STJson.Deserialize(body, commandType);
var command = STJson.Deserialize(body, commandType) as Command;
command.Trigger = CommandTrigger.Manual;
command.SuppressMessages = !command.SendUpdatesToClient;
command.SendUpdatesToClient = true;
command.ClientUserAgent = Request.Headers["User-Agent"];

Loading…
Cancel
Save