added live tv events

This commit is contained in:
Luke Pulverenti
2014-01-15 00:38:08 -05:00
parent c07d958df9
commit ca831ae88a
10 changed files with 102 additions and 10 deletions

View File

@@ -1,5 +1,6 @@
using MediaBrowser.Common.Extensions;
using MediaBrowser.Common.IO;
using MediaBrowser.Common.ScheduledTasks;
using MediaBrowser.Controller;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Drawing;
@@ -37,6 +38,7 @@ namespace MediaBrowser.Server.Implementations.LiveTv
private readonly IUserDataManager _userDataManager;
private readonly ILibraryManager _libraryManager;
private readonly IMediaEncoder _mediaEncoder;
private readonly ITaskManager _taskManager;
private readonly LiveTvDtoService _tvDtoService;
@@ -81,7 +83,27 @@ namespace MediaBrowser.Server.Implementations.LiveTv
{
_services.AddRange(services);
ActiveService = _services.FirstOrDefault();
SetActiveService(_services.FirstOrDefault());
}
private void SetActiveService(ILiveTvService service)
{
if (ActiveService != null)
{
ActiveService.DataSourceChanged -= service_DataSourceChanged;
}
ActiveService = service;
if (service != null)
{
service.DataSourceChanged += service_DataSourceChanged;
}
}
void service_DataSourceChanged(object sender, EventArgs e)
{
_taskManager.CancelIfRunningAndQueue<RefreshChannelsScheduledTask>();
}
public Task<QueryResult<ChannelInfoDto>> GetChannels(ChannelQuery query, CancellationToken cancellationToken)

View File

@@ -42,7 +42,6 @@ namespace MediaBrowser.Server.Implementations.LiveTv
{
return new ITaskTrigger[]
{
new StartupTrigger(),
new SystemEventTrigger{ SystemEvent = SystemEvent.WakeFromSleep},