aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Common.Implementations/Security/PluginSecurityManager.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Common.Implementations/Security/PluginSecurityManager.cs')
-rw-r--r--MediaBrowser.Common.Implementations/Security/PluginSecurityManager.cs19
1 files changed, 18 insertions, 1 deletions
diff --git a/MediaBrowser.Common.Implementations/Security/PluginSecurityManager.cs b/MediaBrowser.Common.Implementations/Security/PluginSecurityManager.cs
index 0404ee7fe..beca1637d 100644
--- a/MediaBrowser.Common.Implementations/Security/PluginSecurityManager.cs
+++ b/MediaBrowser.Common.Implementations/Security/PluginSecurityManager.cs
@@ -1,4 +1,5 @@
-using MediaBrowser.Common.Configuration;
+using System.Collections.Generic;
+using MediaBrowser.Common.Configuration;
using MediaBrowser.Common.Security;
using MediaBrowser.Model.Serialization;
using Mediabrowser.Model.Entities;
@@ -7,6 +8,7 @@ using MediaBrowser.Common.Net;
using System;
using System.Threading;
using System.Threading.Tasks;
+using System.Linq;
namespace MediaBrowser.Common.Implementations.Security
{
@@ -44,6 +46,7 @@ namespace MediaBrowser.Common.Implementations.Security
private IHttpClient _httpClient;
private IJsonSerializer _jsonSerializer;
private IApplicationHost _appHost;
+ private IEnumerable<IRequiresRegistration> _registeredEntities;
/// <summary>
/// Initializes a new instance of the <see cref="PluginSecurityManager" /> class.
@@ -58,10 +61,24 @@ namespace MediaBrowser.Common.Implementations.Security
_appHost = appHost;
_httpClient = httpClient;
_jsonSerializer = jsonSerializer;
+ _registeredEntities = _appHost.GetExports<IRequiresRegistration>();
MBRegistration.Init(appPaths);
}
/// <summary>
+ /// Load all registration info for all entities that require registration
+ /// </summary>
+ /// <returns></returns>
+ public async Task LoadAllRegistrationInfo()
+ {
+ var tasks = new List<Task>();
+
+ tasks.AddRange(_registeredEntities.Select(i => i.LoadRegistrationInfoAsync()));
+ await Task.WhenAll(tasks);
+ ResetSupporterInfo();
+ }
+
+ /// <summary>
/// Gets the registration status.
/// </summary>
/// <param name="feature">The feature.</param>