aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Barron <barronpm@gmail.com>2024-01-17 12:02:12 -0500
committerPatrick Barron <barronpm@gmail.com>2024-02-02 20:13:24 -0500
commitefd024bafecd132d7b2f94839e19847411cbf273 (patch)
tree159371e9fab867562f8b0d201154094ff9113875
parent81cf4b6c509fcd2f3669154c051de2a598841dd9 (diff)
Use DI for IListingsProvider
-rw-r--r--Emby.Server.Implementations/ApplicationHost.cs2
-rw-r--r--MediaBrowser.Controller/LiveTv/ILiveTvManager.cs3
-rw-r--r--src/Jellyfin.LiveTv/Extensions/LiveTvServiceCollectionExtensions.cs3
-rw-r--r--src/Jellyfin.LiveTv/LiveTvManager.cs10
4 files changed, 10 insertions, 8 deletions
diff --git a/Emby.Server.Implementations/ApplicationHost.cs b/Emby.Server.Implementations/ApplicationHost.cs
index 5870fed76..84189f7f5 100644
--- a/Emby.Server.Implementations/ApplicationHost.cs
+++ b/Emby.Server.Implementations/ApplicationHost.cs
@@ -695,7 +695,7 @@ namespace Emby.Server.Implementations
GetExports<IMetadataSaver>(),
GetExports<IExternalId>());
- Resolve<ILiveTvManager>().AddParts(GetExports<ILiveTvService>(), GetExports<IListingsProvider>());
+ Resolve<ILiveTvManager>().AddParts(GetExports<ILiveTvService>());
Resolve<IMediaSourceManager>().AddParts(GetExports<IMediaSourceProvider>());
}
diff --git a/MediaBrowser.Controller/LiveTv/ILiveTvManager.cs b/MediaBrowser.Controller/LiveTv/ILiveTvManager.cs
index 2dbc2cf82..69daa5c20 100644
--- a/MediaBrowser.Controller/LiveTv/ILiveTvManager.cs
+++ b/MediaBrowser.Controller/LiveTv/ILiveTvManager.cs
@@ -71,8 +71,7 @@ namespace MediaBrowser.Controller.LiveTv
/// Adds the parts.
/// </summary>
/// <param name="services">The services.</param>
- /// <param name="listingProviders">The listing providers.</param>
- void AddParts(IEnumerable<ILiveTvService> services, IEnumerable<IListingsProvider> listingProviders);
+ void AddParts(IEnumerable<ILiveTvService> services);
/// <summary>
/// Gets the timer.
diff --git a/src/Jellyfin.LiveTv/Extensions/LiveTvServiceCollectionExtensions.cs b/src/Jellyfin.LiveTv/Extensions/LiveTvServiceCollectionExtensions.cs
index 21dab69e0..eb97ef3ee 100644
--- a/src/Jellyfin.LiveTv/Extensions/LiveTvServiceCollectionExtensions.cs
+++ b/src/Jellyfin.LiveTv/Extensions/LiveTvServiceCollectionExtensions.cs
@@ -1,5 +1,6 @@
using Jellyfin.LiveTv.Channels;
using Jellyfin.LiveTv.Guide;
+using Jellyfin.LiveTv.Listings;
using Jellyfin.LiveTv.TunerHosts;
using Jellyfin.LiveTv.TunerHosts.HdHomerun;
using MediaBrowser.Controller.Channels;
@@ -29,5 +30,7 @@ public static class LiveTvServiceCollectionExtensions
services.AddSingleton<ITunerHost, HdHomerunHost>();
services.AddSingleton<ITunerHost, M3UTunerHost>();
+ services.AddSingleton<IListingsProvider, SchedulesDirect>();
+ services.AddSingleton<IListingsProvider, XmlTvListingsProvider>();
}
}
diff --git a/src/Jellyfin.LiveTv/LiveTvManager.cs b/src/Jellyfin.LiveTv/LiveTvManager.cs
index aa3be2048..1595c8553 100644
--- a/src/Jellyfin.LiveTv/LiveTvManager.cs
+++ b/src/Jellyfin.LiveTv/LiveTvManager.cs
@@ -47,9 +47,9 @@ namespace Jellyfin.LiveTv
private readonly ILocalizationManager _localization;
private readonly IChannelManager _channelManager;
private readonly LiveTvDtoService _tvDtoService;
+ private readonly IListingsProvider[] _listingProviders;
private ILiveTvService[] _services = Array.Empty<ILiveTvService>();
- private IListingsProvider[] _listingProviders = Array.Empty<IListingsProvider>();
public LiveTvManager(
IServerConfigurationManager config,
@@ -61,7 +61,8 @@ namespace Jellyfin.LiveTv
ITaskManager taskManager,
ILocalizationManager localization,
IChannelManager channelManager,
- LiveTvDtoService liveTvDtoService)
+ LiveTvDtoService liveTvDtoService,
+ IEnumerable<IListingsProvider> listingProviders)
{
_config = config;
_logger = logger;
@@ -73,6 +74,7 @@ namespace Jellyfin.LiveTv
_userDataManager = userDataManager;
_channelManager = channelManager;
_tvDtoService = liveTvDtoService;
+ _listingProviders = listingProviders.ToArray();
}
public event EventHandler<GenericEventArgs<TimerEventInfo>> SeriesTimerCancelled;
@@ -97,12 +99,10 @@ namespace Jellyfin.LiveTv
}
/// <inheritdoc />
- public void AddParts(IEnumerable<ILiveTvService> services, IEnumerable<IListingsProvider> listingProviders)
+ public void AddParts(IEnumerable<ILiveTvService> services)
{
_services = services.ToArray();
- _listingProviders = listingProviders.ToArray();
-
foreach (var service in _services)
{
if (service is EmbyTV.EmbyTV embyTv)