From a2ae2630bbc8a8eb16e443698aa05367b4e71daa Mon Sep 17 00:00:00 2001 From: Eric Reed Date: Thu, 14 Mar 2013 13:16:07 -0400 Subject: [PATCH] Need to delay building of IRequiresRegistration until other parts are registered. --- .../Security/PluginSecurityManager.cs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/MediaBrowser.Common.Implementations/Security/PluginSecurityManager.cs b/MediaBrowser.Common.Implementations/Security/PluginSecurityManager.cs index c345e122f3..6ac4d2d5d2 100644 --- a/MediaBrowser.Common.Implementations/Security/PluginSecurityManager.cs +++ b/MediaBrowser.Common.Implementations/Security/PluginSecurityManager.cs @@ -47,6 +47,13 @@ namespace MediaBrowser.Common.Implementations.Security private IJsonSerializer _jsonSerializer; private IApplicationHost _appHost; private IEnumerable _registeredEntities; + protected IEnumerable RegisteredEntities + { + get + { + return _registeredEntities ?? (_registeredEntities = _appHost.GetExports()); + } + } /// /// Initializes a new instance of the class. @@ -61,7 +68,6 @@ namespace MediaBrowser.Common.Implementations.Security _appHost = appHost; _httpClient = httpClient; _jsonSerializer = jsonSerializer; - _registeredEntities = _appHost.GetExports(); MBRegistration.Init(appPaths); } @@ -74,7 +80,7 @@ namespace MediaBrowser.Common.Implementations.Security var tasks = new List(); ResetSupporterInfo(); - tasks.AddRange(_registeredEntities.Select(i => i.LoadRegistrationInfoAsync())); + tasks.AddRange(RegisteredEntities.Select(i => i.LoadRegistrationInfoAsync())); await Task.WhenAll(tasks); }