diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2016-02-11 13:29:42 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2016-02-11 13:29:42 -0500 |
| commit | 9e8d35dadc2859d39c3daab98458fd9d1be03865 (patch) | |
| tree | d592e66201771359cecf28d3ab58f4ed32f7838e /MediaBrowser.Server.Implementations | |
| parent | 232d0eb14c10003a98b33c1d9c7a26c69f852d21 (diff) | |
update recording sync fields
Diffstat (limited to 'MediaBrowser.Server.Implementations')
3 files changed, 15 insertions, 8 deletions
diff --git a/MediaBrowser.Server.Implementations/Dto/DtoService.cs b/MediaBrowser.Server.Implementations/Dto/DtoService.cs index ec54033df..89f572a54 100644 --- a/MediaBrowser.Server.Implementations/Dto/DtoService.cs +++ b/MediaBrowser.Server.Implementations/Dto/DtoService.cs @@ -212,17 +212,17 @@ namespace MediaBrowser.Server.Implementations.Dto }).Items; } - public void FillSyncInfo(IEnumerable<IHasSyncInfo> dtos, DtoOptions options, User user) + public void FillSyncInfo(IEnumerable<Tuple<BaseItem, BaseItemDto>> tuples, DtoOptions options, User user) { if (options.Fields.Contains(ItemFields.SyncInfo)) { var syncProgress = GetSyncedItemProgress(options); - foreach (var dto in dtos) + foreach (var tuple in tuples) { - var item = _libraryManager.GetItemById(dto.Id); + var item = tuple.Item1; - FillSyncInfo(dto, item, syncProgress, options, user); + FillSyncInfo(tuple.Item2, item, syncProgress, options, user); } } } diff --git a/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs b/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs index 1e878f28c..dcebc0c42 100644 --- a/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs +++ b/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs @@ -1592,18 +1592,18 @@ namespace MediaBrowser.Server.Implementations.LiveTv var internalResult = await GetInternalRecordings(query, cancellationToken).ConfigureAwait(false); - var returnArray = internalResult.Items - .Select(i => _dtoService.GetBaseItemDto(i, options, user)) + var tuples = internalResult.Items + .Select(i => new Tuple<BaseItem, BaseItemDto>(i, _dtoService.GetBaseItemDto(i, options, user))) .ToArray(); if (user != null) { - _dtoService.FillSyncInfo(returnArray, new DtoOptions(), user); + _dtoService.FillSyncInfo(tuples, new DtoOptions(), user); } return new QueryResult<BaseItemDto> { - Items = returnArray, + Items = tuples.Select(i => i.Item2).ToArray(), TotalRecordCount = internalResult.TotalRecordCount }; } @@ -1684,6 +1684,8 @@ namespace MediaBrowser.Server.Implementations.LiveTv } + _lastRecordingRefreshTime = DateTime.MinValue; + // This is the responsibility of the live tv service await _libraryManager.DeleteItem((BaseItem)recording, new DeleteOptions { diff --git a/MediaBrowser.Server.Implementations/Sync/SyncManager.cs b/MediaBrowser.Server.Implementations/Sync/SyncManager.cs index 21377da7e..50a960956 100644 --- a/MediaBrowser.Server.Implementations/Sync/SyncManager.cs +++ b/MediaBrowser.Server.Implementations/Sync/SyncManager.cs @@ -491,6 +491,11 @@ namespace MediaBrowser.Server.Implementations.Sync public bool SupportsSync(BaseItem item) { + if (item == null) + { + throw new ArgumentNullException("item"); + } + if (item is Playlist) { return true; |
