Use IHostedService for Live TV
This commit is contained in:
parent
690e603b90
commit
c9311c9e7e
|
@ -7,6 +7,7 @@ using System.Text;
|
|||
using Emby.Server.Implementations.EntryPoints;
|
||||
using Jellyfin.Api.Middleware;
|
||||
using Jellyfin.LiveTv;
|
||||
using Jellyfin.LiveTv.EmbyTV;
|
||||
using Jellyfin.LiveTv.Extensions;
|
||||
using Jellyfin.MediaEncoding.Hls.Extensions;
|
||||
using Jellyfin.Networking;
|
||||
|
@ -127,6 +128,7 @@ namespace Jellyfin.Server
|
|||
services.AddHlsPlaylistGenerator();
|
||||
services.AddLiveTvServices();
|
||||
|
||||
services.AddHostedService<LiveTvHost>();
|
||||
services.AddHostedService<AutoDiscoveryHost>();
|
||||
services.AddHostedService<PortForwardingHost>();
|
||||
services.AddHostedService<NfoUserDataSaver>();
|
||||
|
|
|
@ -1,21 +0,0 @@
|
|||
#pragma warning disable CS1591
|
||||
|
||||
using System.Threading.Tasks;
|
||||
using MediaBrowser.Controller.Plugins;
|
||||
|
||||
namespace Jellyfin.LiveTv.EmbyTV
|
||||
{
|
||||
public sealed class EntryPoint : IServerEntryPoint
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public Task RunAsync()
|
||||
{
|
||||
return EmbyTV.Current.Start();
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public void Dispose()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
31
src/Jellyfin.LiveTv/EmbyTV/LiveTvHost.cs
Normal file
31
src/Jellyfin.LiveTv/EmbyTV/LiveTvHost.cs
Normal file
|
@ -0,0 +1,31 @@
|
|||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using MediaBrowser.Controller.LiveTv;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
|
||||
namespace Jellyfin.LiveTv.EmbyTV;
|
||||
|
||||
/// <summary>
|
||||
/// <see cref="IHostedService"/> responsible for initializing Live TV.
|
||||
/// </summary>
|
||||
public sealed class LiveTvHost : IHostedService
|
||||
{
|
||||
private readonly EmbyTV _service;
|
||||
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="LiveTvHost"/> class.
|
||||
/// </summary>
|
||||
/// <param name="services">The available <see cref="ILiveTvService"/>s.</param>
|
||||
public LiveTvHost(IEnumerable<ILiveTvService> services)
|
||||
{
|
||||
_service = services.OfType<EmbyTV>().First();
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public Task StartAsync(CancellationToken cancellationToken) => _service.Start();
|
||||
|
||||
/// <inheritdoc />
|
||||
public Task StopAsync(CancellationToken cancellationToken) => Task.CompletedTask;
|
||||
}
|
Loading…
Reference in New Issue
Block a user