using Emby.Dlna; using MediaBrowser.Controller.Configuration; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Filters; using Microsoft.Extensions.DependencyInjection; namespace Jellyfin.Api.Attributes; /// public sealed class DlnaEnabledAttribute : ActionFilterAttribute { /// public override void OnActionExecuting(ActionExecutingContext context) { var serverConfigurationManager = context.HttpContext.RequestServices.GetRequiredService(); var enabled = serverConfigurationManager.GetDlnaConfiguration().EnableServer; if (!enabled) { context.Result = new StatusCodeResult(StatusCodes.Status503ServiceUnavailable); } } }