aboutsummaryrefslogtreecommitdiff
path: root/Emby.Server.Implementations/ApplicationHost.cs
diff options
context:
space:
mode:
authorDavid <daullmer@gmail.com>2020-08-11 17:04:11 +0200
committerDavid <daullmer@gmail.com>2020-08-11 18:20:16 +0200
commit9e95fe8f9d402ec178024be962115abd6033fb51 (patch)
tree40c0899290371ac81a941eb134dad53caad38908 /Emby.Server.Implementations/ApplicationHost.cs
parent98d1d2325d515ef0e6bd0a59c961967e9b5224be (diff)
Add plugin assemblies to mvc builder
Diffstat (limited to 'Emby.Server.Implementations/ApplicationHost.cs')
-rw-r--r--Emby.Server.Implementations/ApplicationHost.cs25
1 files changed, 24 insertions, 1 deletions
diff --git a/Emby.Server.Implementations/ApplicationHost.cs b/Emby.Server.Implementations/ApplicationHost.cs
index 0201ed7a3..438f4384f 100644
--- a/Emby.Server.Implementations/ApplicationHost.cs
+++ b/Emby.Server.Implementations/ApplicationHost.cs
@@ -53,7 +53,6 @@ using MediaBrowser.Common.Net;
using MediaBrowser.Common.Plugins;
using MediaBrowser.Common.Updates;
using MediaBrowser.Controller;
-using MediaBrowser.Controller.Authentication;
using MediaBrowser.Controller.Channels;
using MediaBrowser.Controller.Chapters;
using MediaBrowser.Controller.Collections;
@@ -98,6 +97,7 @@ using MediaBrowser.Providers.Plugins.TheTvdb;
using MediaBrowser.Providers.Subtitles;
using MediaBrowser.XbmcMetadata.Providers;
using Microsoft.AspNetCore.Http;
+using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using Prometheus.DotNetRuntime;
@@ -1385,6 +1385,29 @@ namespace Emby.Server.Implementations
_plugins = list.ToArray();
}
+ public IEnumerable<Assembly> GetApiPluginAssemblies()
+ {
+ var assemblies = new List<Assembly>();
+ try
+ {
+ var types = _allConcreteTypes
+ .Where(i => typeof(ControllerBase).IsAssignableFrom(i))
+ // .Select(i => ActivatorUtilities.CreateInstance(ServiceProvider, i))
+ .ToArray();
+
+ foreach (var variable in types)
+ {
+ assemblies.Add(variable.Assembly);
+ }
+ }
+ catch (Exception ex)
+ {
+ // ignore
+ }
+
+ return assemblies;
+ }
+
public virtual void LaunchUrl(string url)
{
if (!CanLaunchWebBrowser)