aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/LiveTv
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-04-12 14:58:21 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-04-12 14:58:21 -0400
commit933fca78e65c146b3cf16eefce6410b21e18cdbe (patch)
tree679c7f4410698a7f766094a5b5366bcf36bd496b /MediaBrowser.Server.Implementations/LiveTv
parentd4b61da59d9adabadb5ef7d96be30350f6d4f476 (diff)
support sync for live tv recordings
Diffstat (limited to 'MediaBrowser.Server.Implementations/LiveTv')
-rw-r--r--MediaBrowser.Server.Implementations/LiveTv/LiveTvDtoService.cs2
-rw-r--r--MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs25
2 files changed, 20 insertions, 7 deletions
diff --git a/MediaBrowser.Server.Implementations/LiveTv/LiveTvDtoService.cs b/MediaBrowser.Server.Implementations/LiveTv/LiveTvDtoService.cs
index 401cf8765..61017ffb3 100644
--- a/MediaBrowser.Server.Implementations/LiveTv/LiveTvDtoService.cs
+++ b/MediaBrowser.Server.Implementations/LiveTv/LiveTvDtoService.cs
@@ -8,12 +8,12 @@ using MediaBrowser.Controller.LiveTv;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.LiveTv;
using MediaBrowser.Model.Logging;
+using MediaBrowser.Model.Querying;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
-using MediaBrowser.Model.Querying;
namespace MediaBrowser.Server.Implementations.LiveTv
{
diff --git a/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs b/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs
index 92e2aedd2..3f164ee6f 100644
--- a/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs
+++ b/MediaBrowser.Server.Implementations/LiveTv/LiveTvManager.cs
@@ -1148,7 +1148,9 @@ namespace MediaBrowser.Server.Implementations.LiveTv
RefreshIfNeeded(programs.Take(500));
// Load these now which will prefetch metadata
- await GetRecordings(new RecordingQuery(), cancellationToken).ConfigureAwait(false);
+ var dtoOptions = new DtoOptions();
+ dtoOptions.Fields.Remove(ItemFields.SyncInfo);
+ await GetRecordings(new RecordingQuery(), dtoOptions, cancellationToken).ConfigureAwait(false);
progress.Report(100);
}
@@ -1322,7 +1324,7 @@ namespace MediaBrowser.Server.Implementations.LiveTv
};
}
- public async Task<QueryResult<RecordingInfoDto>> GetRecordings(RecordingQuery query, CancellationToken cancellationToken)
+ public async Task<QueryResult<RecordingInfoDto>> GetRecordings(RecordingQuery query, DtoOptions options, CancellationToken cancellationToken)
{
var user = string.IsNullOrEmpty(query.UserId) ? null : _userManager.GetUserById(query.UserId);
@@ -1338,6 +1340,11 @@ namespace MediaBrowser.Server.Implementations.LiveTv
})
.ToArray();
+ if (user != null)
+ {
+ _dtoService.FillSyncInfo(returnArray, new DtoOptions(), user);
+ }
+
return new QueryResult<RecordingInfoDto>
{
Items = returnArray,
@@ -1410,7 +1417,10 @@ namespace MediaBrowser.Server.Implementations.LiveTv
public async Task DeleteRecording(string recordingId)
{
- var recording = await GetRecording(recordingId, CancellationToken.None).ConfigureAwait(false);
+ var dtoOptions = new DtoOptions();
+ dtoOptions.Fields.Remove(ItemFields.SyncInfo);
+
+ var recording = await GetRecording(recordingId, dtoOptions, CancellationToken.None).ConfigureAwait(false);
if (recording == null)
{
@@ -1450,14 +1460,14 @@ namespace MediaBrowser.Server.Implementations.LiveTv
await service.CancelSeriesTimerAsync(timer.ExternalId, CancellationToken.None).ConfigureAwait(false);
}
- public async Task<RecordingInfoDto> GetRecording(string id, CancellationToken cancellationToken, User user = null)
+ public async Task<RecordingInfoDto> GetRecording(string id, DtoOptions options, CancellationToken cancellationToken, User user = null)
{
var results = await GetRecordings(new RecordingQuery
{
UserId = user == null ? null : user.Id.ToString("N"),
Id = id
- }, cancellationToken).ConfigureAwait(false);
+ }, options, cancellationToken).ConfigureAwait(false);
return results.Items.FirstOrDefault();
}
@@ -1737,11 +1747,14 @@ namespace MediaBrowser.Server.Implementations.LiveTv
public async Task<QueryResult<RecordingGroupDto>> GetRecordingGroups(RecordingGroupQuery query, CancellationToken cancellationToken)
{
+ var dtoOptions = new DtoOptions();
+ dtoOptions.Fields.Remove(ItemFields.SyncInfo);
+
var recordingResult = await GetRecordings(new RecordingQuery
{
UserId = query.UserId
- }, cancellationToken).ConfigureAwait(false);
+ }, dtoOptions, cancellationToken).ConfigureAwait(false);
var recordings = recordingResult.Items;