jellyLMS/Jellyfin.Plugin.JellyLMS/PluginServiceRegistrator.cs
Duncan Tourolle 2f5a182afd
Some checks failed
🏗️ Build Plugin / call (push) Failing after 0s
📝 Create/Update Release Draft & Release Bump PR / call (push) Failing after 0s
🔬 Run CodeQL / call (push) Failing after 0s
🧪 Test Plugin / call (push) Failing after 0s
First POC with working playback
2025-12-13 23:54:33 +01:00

26 lines
1.0 KiB
C#

using Jellyfin.Plugin.JellyLMS.Services;
using MediaBrowser.Controller;
using MediaBrowser.Controller.Plugins;
using Microsoft.Extensions.DependencyInjection;
namespace Jellyfin.Plugin.JellyLMS;
/// <summary>
/// Registers plugin services with Jellyfin's DI container.
/// </summary>
public class PluginServiceRegistrator : IPluginServiceRegistrator
{
/// <inheritdoc />
public void RegisterServices(IServiceCollection serviceCollection, IServerApplicationHost applicationHost)
{
serviceCollection.AddSingleton<ILmsApiClient, LmsApiClient>();
serviceCollection.AddSingleton<LmsPlayerManager>();
serviceCollection.AddSingleton<LmsSessionManager>();
serviceCollection.AddHostedService(sp => sp.GetRequiredService<LmsSessionManager>());
// Device discovery service - registers LMS players as Jellyfin sessions for casting
// Use AddHostedService directly to let DI handle construction
serviceCollection.AddHostedService<LmsDeviceDiscoveryService>();
}
}