Fixed: Task progress messages in the UI

(cherry picked from commit c6417337812f3578a27f9dc1e44fdad80f557271)

Closes #3370
This commit is contained in:
Mark McDowall 2024-03-18 16:48:35 -07:00 committed by Bogdan
parent 11eda3b11b
commit 37a9f670dd
7 changed files with 19 additions and 8 deletions

View file

@ -20,5 +20,7 @@ public RefreshAuthorCommand(int? authorId, bool isNewAuthor = false)
public override bool SendUpdatesToClient => true;
public override bool UpdateScheduledTask => !AuthorId.HasValue;
public override string CompletionMessage => "Completed";
}
}

View file

@ -18,5 +18,7 @@ public RefreshBookCommand(int? bookId)
public override bool SendUpdatesToClient => true;
public override bool UpdateScheduledTask => !BookId.HasValue;
public override string CompletionMessage => "Completed";
}
}

View file

@ -134,7 +134,7 @@ private async Task<List<DownloadDecision>> Dispatch(Func<IIndexer, Task<IList<Re
var reports = batch.SelectMany(x => x).ToList();
_logger.Debug("Total of {0} reports were found for {1} from {2} indexers", reports.Count, criteriaBase, indexers.Count);
_logger.ProgressDebug("Total of {0} reports were found for {1} from {2} indexers", reports.Count, criteriaBase, indexers.Count);
// Update the last search time for all albums if at least 1 indexer was searched.
if (indexers.Any())

View file

@ -5,7 +5,6 @@ namespace NzbDrone.Core.Indexers
public class RssSyncCommand : Command
{
public override bool SendUpdatesToClient => true;
public override bool IsLongRunning => true;
}
}

View file

@ -23,7 +23,7 @@ public virtual bool SendUpdatesToClient
}
public virtual bool UpdateScheduledTask => true;
public virtual string CompletionMessage => "Completed";
public virtual string CompletionMessage => null;
public virtual bool RequiresDiskAccess => false;
public virtual bool IsExclusive => false;
public virtual bool IsTypeExclusive => false;

View file

@ -1,10 +1,13 @@
using System;
using System;
using System.Threading;
using NzbDrone.Core.Messaging.Commands;
namespace NzbDrone.Core.ProgressMessaging
{
public static class ProgressMessageContext
{
private static AsyncLocal<CommandModel> _commandModelAsync = new AsyncLocal<CommandModel>();
[ThreadStatic]
private static CommandModel _commandModel;
@ -13,8 +16,15 @@ public static class ProgressMessageContext
public static CommandModel CommandModel
{
get { return _commandModel; }
set { _commandModel = value; }
get
{
return _commandModel ?? _commandModelAsync.Value;
}
set
{
_commandModel = value;
_commandModelAsync.Value = value;
}
}
public static bool LockReentrancy()

View file

@ -6,7 +6,5 @@ public class ApplicationUpdateCommand : Command
{
public override bool SendUpdatesToClient => true;
public override bool IsExclusive => true;
public override string CompletionMessage => null;
}
}