mirror of
https://github.com/lidarr/Lidarr
synced 2024-12-21 23:32:27 +00:00
Inherit trigger from pushed command models
(cherry picked from commit 0bc4903954b955fce0c368ef7fd2a6f3761d6a93) Closes #5181
This commit is contained in:
parent
a843a46fbe
commit
8623b4410c
3 changed files with 7 additions and 8 deletions
|
@ -179,9 +179,8 @@ public ActionResult<ArtistResource> UpdateArtist(ArtistResource artistResource,
|
|||
ArtistId = artist.Id,
|
||||
SourcePath = sourcePath,
|
||||
DestinationPath = destinationPath,
|
||||
MoveFiles = moveFiles,
|
||||
Trigger = CommandTrigger.Manual
|
||||
});
|
||||
MoveFiles = moveFiles
|
||||
}, trigger: CommandTrigger.Manual);
|
||||
|
||||
var model = artistResource.ToModel(artist);
|
||||
|
||||
|
|
|
@ -66,9 +66,8 @@ public ActionResult<CommandResource> StartCommand(CommandResource commandResourc
|
|||
? CommandPriority.High
|
||||
: CommandPriority.Normal;
|
||||
|
||||
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["UserAgent"];
|
||||
|
|
|
@ -106,6 +106,8 @@ public CommandModel Push<TCommand>(TCommand command, CommandPriority priority =
|
|||
_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);
|
||||
|
@ -142,7 +144,6 @@ public CommandModel Push(string commandName, DateTime? lastExecutionTime, DateTi
|
|||
var command = GetCommand(commandName);
|
||||
command.LastExecutionTime = lastExecutionTime;
|
||||
command.LastStartTime = lastStartTime;
|
||||
command.Trigger = trigger;
|
||||
|
||||
return Push(command, priority, trigger);
|
||||
}
|
||||
|
@ -244,13 +245,13 @@ public void CleanCommands()
|
|||
_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)
|
||||
|
|
Loading…
Reference in a new issue