|
|
|
@ -970,20 +970,18 @@ namespace MediaBrowser.Providers.Manager
|
|
|
|
|
var id = item.Id;
|
|
|
|
|
_logger.LogInformation("OnRefreshProgress {0} {1}", id.ToString("N", CultureInfo.InvariantCulture), progress);
|
|
|
|
|
|
|
|
|
|
if (_activeRefreshes.TryAdd(id, progress))
|
|
|
|
|
{
|
|
|
|
|
RefreshProgress?.Invoke(this, new GenericEventArgs<Tuple<BaseItem, double>>(new Tuple<BaseItem, double>(item, progress)));
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
// TODO: Need to hunt down the conditions for this happening
|
|
|
|
|
throw new Exception(
|
|
|
|
|
// TODO: Need to hunt down the conditions for this happening
|
|
|
|
|
_activeRefreshes.AddOrUpdate(
|
|
|
|
|
id,
|
|
|
|
|
(_) => throw new Exception(
|
|
|
|
|
string.Format(
|
|
|
|
|
CultureInfo.InvariantCulture,
|
|
|
|
|
"Refresh for item {0} {1} is not in progress",
|
|
|
|
|
item.GetType().Name,
|
|
|
|
|
item.Id.ToString("N", CultureInfo.InvariantCulture)));
|
|
|
|
|
}
|
|
|
|
|
item.Id.ToString("N", CultureInfo.InvariantCulture))),
|
|
|
|
|
(_, _) => progress);
|
|
|
|
|
|
|
|
|
|
RefreshProgress?.Invoke(this, new GenericEventArgs<Tuple<BaseItem, double>>(new Tuple<BaseItem, double>(item, progress)));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private readonly SimplePriorityQueue<Tuple<Guid, MetadataRefreshOptions>> _refreshQueue =
|
|
|
|
|