Merge pull request #2359 from softworkz/ServerSyncEvents

Improved server sync event handling
This commit is contained in:
Luke 2016-12-22 15:49:21 -05:00 committed by GitHub
commit f02fa76c19
2 changed files with 24 additions and 15 deletions

View file

@ -1042,10 +1042,7 @@ namespace Emby.Server.Implementations.Sync
throw new ArgumentException("Operation is not valid for this job item"); throw new ArgumentException("Operation is not valid for this job item");
} }
if (jobItem.Status != SyncJobItemStatus.Synced) jobItem.Status = SyncJobItemStatus.Cancelled;
{
jobItem.Status = SyncJobItemStatus.Cancelled;
}
jobItem.Progress = 0; jobItem.Progress = 0;
jobItem.IsMarkedForRemoval = true; jobItem.IsMarkedForRemoval = true;
@ -1071,18 +1068,18 @@ namespace Emby.Server.Implementations.Sync
_logger.ErrorException("Error deleting directory {0}", ex, path); _logger.ErrorException("Error deleting directory {0}", ex, path);
} }
//var jobItemsResult = GetJobItems(new SyncJobItemQuery var jobItemsResult = GetJobItems(new SyncJobItemQuery
//{ {
// AddMetadata = false, AddMetadata = false,
// JobId = jobItem.JobId, JobId = jobItem.JobId,
// Limit = 0, Limit = 0,
// Statuses = new[] { SyncJobItemStatus.Converting, SyncJobItemStatus.Failed, SyncJobItemStatus.Queued, SyncJobItemStatus.ReadyToTransfer, SyncJobItemStatus.Synced, SyncJobItemStatus.Transferring } Statuses = new[] { SyncJobItemStatus.Converting, SyncJobItemStatus.Queued, SyncJobItemStatus.ReadyToTransfer, SyncJobItemStatus.Synced, SyncJobItemStatus.Transferring }
//}); });
//if (jobItemsResult.TotalRecordCount == 0) if (jobItemsResult.TotalRecordCount == 0)
//{ {
// await CancelJob(jobItem.JobId).ConfigureAwait(false); await CancelJob(jobItem.JobId).ConfigureAwait(false);
//} }
} }
public Task MarkJobItemForRemoval(string id) public Task MarkJobItemForRemoval(string id)

View file

@ -38,6 +38,18 @@ namespace Emby.Server.Implementations.Sync
} }
} }
if (item.Status == SyncJobItemStatus.Cancelled)
{
try
{
await _sessionManager.SendMessageToUserDeviceSessions(item.TargetId, "SyncJobItemCancelled", item, CancellationToken.None).ConfigureAwait(false);
}
catch
{
}
}
} }
public void Dispose() public void Dispose()