mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-12-23 17:24:46 +03:00
add SyncJobCreated event
This commit is contained in:
@@ -49,7 +49,7 @@ namespace MediaBrowser.Server.Implementations.Sync
|
||||
|
||||
private ISyncProvider[] _providers = { };
|
||||
|
||||
public event EventHandler<GenericEventArgs<SyncJob>> SyncJobCreated;
|
||||
public event EventHandler<GenericEventArgs<SyncJobCreationResult>> SyncJobCreated;
|
||||
public event EventHandler<GenericEventArgs<SyncJob>> SyncJobCancelled;
|
||||
|
||||
public SyncManager(ILibraryManager libraryManager, ISyncRepository repo, IImageProcessor imageProcessor, ILogger logger, IUserManager userManager, Func<IDtoService> dtoService, IApplicationHost appHost, ITVSeriesManager tvSeriesManager, Func<IMediaEncoder> mediaEncoder, IFileSystem fileSystem, Func<ISubtitleEncoder> subtitleEncoder, IConfigurationManager config)
|
||||
@@ -103,14 +103,14 @@ namespace MediaBrowser.Server.Implementations.Sync
|
||||
|
||||
var target = GetSyncTargets(request.UserId)
|
||||
.FirstOrDefault(i => string.Equals(request.TargetId, i.Id));
|
||||
|
||||
|
||||
if (target == null)
|
||||
{
|
||||
throw new ArgumentException("Sync target not found.");
|
||||
}
|
||||
|
||||
var jobId = Guid.NewGuid().ToString("N");
|
||||
|
||||
|
||||
var job = new SyncJob
|
||||
{
|
||||
Id = jobId,
|
||||
@@ -149,26 +149,28 @@ namespace MediaBrowser.Server.Implementations.Sync
|
||||
await processor.SyncJobItems(jobItemsResult.Items, false, new Progress<double>(), CancellationToken.None)
|
||||
.ConfigureAwait(false);
|
||||
|
||||
if (SyncJobCreated != null)
|
||||
{
|
||||
EventHelper.FireEventIfNotNull(SyncJobCreated, this, new GenericEventArgs<SyncJob>
|
||||
{
|
||||
Argument = job
|
||||
|
||||
}, _logger);
|
||||
}
|
||||
|
||||
jobItemsResult = _repo.GetJobItems(new SyncJobItemQuery
|
||||
{
|
||||
Statuses = new List<SyncJobItemStatus> { SyncJobItemStatus.Queued, SyncJobItemStatus.Converting },
|
||||
JobId = jobId
|
||||
});
|
||||
|
||||
return new SyncJobCreationResult
|
||||
var returnResult = new SyncJobCreationResult
|
||||
{
|
||||
Job = GetJob(jobId),
|
||||
JobItems = jobItemsResult.Items.ToList()
|
||||
};
|
||||
|
||||
if (SyncJobCreated != null)
|
||||
{
|
||||
EventHelper.FireEventIfNotNull(SyncJobCreated, this, new GenericEventArgs<SyncJobCreationResult>
|
||||
{
|
||||
Argument = returnResult
|
||||
|
||||
}, _logger);
|
||||
}
|
||||
|
||||
return returnResult;
|
||||
}
|
||||
|
||||
public Task UpdateJob(SyncJob job)
|
||||
|
||||
Reference in New Issue
Block a user