aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/Sync
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-01-27 23:04:26 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-01-27 23:04:26 -0500
commit5880b34fbab464a3d70afa31267c2b3b05d27327 (patch)
treed2d6bd2a661ec39f7c5fd600d23140ca7c75cf7e /MediaBrowser.Server.Implementations/Sync
parent782fe92cf766c09c84200e9e2228e555e6644add (diff)
add SyncJobCreated event
Diffstat (limited to 'MediaBrowser.Server.Implementations/Sync')
-rw-r--r--MediaBrowser.Server.Implementations/Sync/SyncManager.cs28
1 files changed, 15 insertions, 13 deletions
diff --git a/MediaBrowser.Server.Implementations/Sync/SyncManager.cs b/MediaBrowser.Server.Implementations/Sync/SyncManager.cs
index 71bc0e46b..5ead8f02b 100644
--- a/MediaBrowser.Server.Implementations/Sync/SyncManager.cs
+++ b/MediaBrowser.Server.Implementations/Sync/SyncManager.cs
@@ -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)