diff options
| -rw-r--r-- | MediaBrowser.Api/PluginService.cs | 10 | ||||
| -rw-r--r-- | MediaBrowser.Common/Kernel/BaseKernel.cs | 7 | ||||
| -rw-r--r-- | MediaBrowser.Common/Kernel/IKernel.cs | 7 | ||||
| -rw-r--r-- | MediaBrowser.Common/MediaBrowser.Common.csproj | 1 | ||||
| -rw-r--r-- | MediaBrowser.Common/Security/ISecurityManager.cs | 34 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Kernel.cs | 9 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Plugins/PluginSecurityManager.cs | 5 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Updates/InstallationManager.cs | 2 |
8 files changed, 60 insertions, 15 deletions
diff --git a/MediaBrowser.Api/PluginService.cs b/MediaBrowser.Api/PluginService.cs index 7afd15893..b39ff48c4 100644 --- a/MediaBrowser.Api/PluginService.cs +++ b/MediaBrowser.Api/PluginService.cs @@ -202,9 +202,9 @@ namespace MediaBrowser.Api var result = new PluginSecurityInfo { - IsMBSupporter = kernel.PluginSecurityManager.IsMBSupporter, - SupporterKey = kernel.PluginSecurityManager.SupporterKey, - LegacyKey = kernel.PluginSecurityManager.LegacyKey + IsMBSupporter = kernel.SecurityManager.IsMBSupporter, + SupporterKey = kernel.SecurityManager.SupporterKey, + LegacyKey = kernel.SecurityManager.LegacyKey }; return ToOptimizedResult(result); @@ -220,8 +220,8 @@ namespace MediaBrowser.Api var info = _jsonSerializer.DeserializeFromStream<PluginSecurityInfo>(request.RequestStream); - kernel.PluginSecurityManager.SupporterKey = info.SupporterKey; - kernel.PluginSecurityManager.LegacyKey = info.LegacyKey; + kernel.SecurityManager.SupporterKey = info.SupporterKey; + kernel.SecurityManager.LegacyKey = info.LegacyKey; } /// <summary> diff --git a/MediaBrowser.Common/Kernel/BaseKernel.cs b/MediaBrowser.Common/Kernel/BaseKernel.cs index 9e8edce23..44e00877e 100644 --- a/MediaBrowser.Common/Kernel/BaseKernel.cs +++ b/MediaBrowser.Common/Kernel/BaseKernel.cs @@ -1,5 +1,6 @@ using MediaBrowser.Common.Events; using MediaBrowser.Common.Plugins; +using MediaBrowser.Common.Security; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Logging; using MediaBrowser.Model.Serialization; @@ -153,6 +154,12 @@ namespace MediaBrowser.Common.Kernel public IServerManager ServerManager { get; private set; } /// <summary> + /// Gets the plug-in security manager. + /// </summary> + /// <value>The plug-in security manager.</value> + public ISecurityManager SecurityManager { get; set; } + + /// <summary> /// Gets the UDP server port number. /// This can't be configurable because then the user would have to configure their client to discover the server. /// </summary> diff --git a/MediaBrowser.Common/Kernel/IKernel.cs b/MediaBrowser.Common/Kernel/IKernel.cs index 715dc9a27..4b7375ba1 100644 --- a/MediaBrowser.Common/Kernel/IKernel.cs +++ b/MediaBrowser.Common/Kernel/IKernel.cs @@ -1,4 +1,5 @@ using MediaBrowser.Common.Plugins; +using MediaBrowser.Common.Security; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.System; using System; @@ -90,6 +91,12 @@ namespace MediaBrowser.Common.Kernel IServerManager ServerManager { get; } /// <summary> + /// Gets the plug-in security manager. + /// </summary> + /// <value>The plug-in security manager.</value> + ISecurityManager SecurityManager { get; set; } + + /// <summary> /// Gets the web socket listeners. /// </summary> /// <value>The web socket listeners.</value> diff --git a/MediaBrowser.Common/MediaBrowser.Common.csproj b/MediaBrowser.Common/MediaBrowser.Common.csproj index 709d6c016..7f1f980eb 100644 --- a/MediaBrowser.Common/MediaBrowser.Common.csproj +++ b/MediaBrowser.Common/MediaBrowser.Common.csproj @@ -136,6 +136,7 @@ <Compile Include="ScheduledTasks\DailyTrigger.cs" /> <Compile Include="ScheduledTasks\IntervalTrigger.cs" /> <Compile Include="ScheduledTasks\WeeklyTrigger.cs" /> + <Compile Include="Security\ISecurityManager.cs" /> <Compile Include="Updates\IInstallationManager.cs" /> </ItemGroup> <ItemGroup> diff --git a/MediaBrowser.Common/Security/ISecurityManager.cs b/MediaBrowser.Common/Security/ISecurityManager.cs new file mode 100644 index 000000000..bcda3c6b4 --- /dev/null +++ b/MediaBrowser.Common/Security/ISecurityManager.cs @@ -0,0 +1,34 @@ +using System.Threading.Tasks; +using Mediabrowser.Model.Entities; + +namespace MediaBrowser.Common.Security +{ + public interface ISecurityManager + { + /// <summary> + /// Gets a value indicating whether this instance is MB supporter. + /// </summary> + /// <value><c>true</c> if this instance is MB supporter; otherwise, <c>false</c>.</value> + bool IsMBSupporter { get; } + + /// <summary> + /// Gets or sets the supporter key. + /// </summary> + /// <value>The supporter key.</value> + string SupporterKey { get; set; } + + /// <summary> + /// Gets or sets the legacy key. + /// </summary> + /// <value>The legacy key.</value> + string LegacyKey { get; set; } + + /// <summary> + /// Gets the registration status. + /// </summary> + /// <param name="feature">The feature.</param> + /// <param name="mb2Equivalent">The MB2 equivalent.</param> + /// <returns>Task{MBRegistrationRecord}.</returns> + Task<MBRegistrationRecord> GetRegistrationStatus(string feature, string mb2Equivalent = null); + } +}
\ No newline at end of file diff --git a/MediaBrowser.Controller/Kernel.cs b/MediaBrowser.Controller/Kernel.cs index 48dfa5c16..6faa20012 100644 --- a/MediaBrowser.Controller/Kernel.cs +++ b/MediaBrowser.Controller/Kernel.cs @@ -1,6 +1,7 @@ using MediaBrowser.Common.Kernel; using MediaBrowser.Common.Plugins; using MediaBrowser.Common.ScheduledTasks; +using MediaBrowser.Common.Security; using MediaBrowser.Common.Updates; using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Entities; @@ -92,12 +93,6 @@ namespace MediaBrowser.Controller public UserDataManager UserDataManager { get; private set; } /// <summary> - /// Gets the plug-in security manager. - /// </summary> - /// <value>The plug-in security manager.</value> - public PluginSecurityManager PluginSecurityManager { get; private set; } - - /// <summary> /// The _users /// </summary> private IEnumerable<User> _users; @@ -321,7 +316,7 @@ namespace MediaBrowser.Controller ImageManager = (ImageManager)ApplicationHost.CreateInstance(typeof(ImageManager)); ProviderManager = (ProviderManager)ApplicationHost.CreateInstance(typeof(ProviderManager)); UserDataManager = (UserDataManager)ApplicationHost.CreateInstance(typeof(UserDataManager)); - PluginSecurityManager = (PluginSecurityManager)ApplicationHost.CreateInstance(typeof(PluginSecurityManager)); + SecurityManager = (PluginSecurityManager)ApplicationHost.CreateInstance(typeof(PluginSecurityManager)); base.FindParts(); diff --git a/MediaBrowser.Controller/Plugins/PluginSecurityManager.cs b/MediaBrowser.Controller/Plugins/PluginSecurityManager.cs index db3f20ee3..3a097ba1f 100644 --- a/MediaBrowser.Controller/Plugins/PluginSecurityManager.cs +++ b/MediaBrowser.Controller/Plugins/PluginSecurityManager.cs @@ -1,4 +1,5 @@ -using MediaBrowser.Model.Serialization; +using MediaBrowser.Common.Security; +using MediaBrowser.Model.Serialization; using Mediabrowser.Model.Entities; using Mediabrowser.PluginSecurity; using MediaBrowser.Common.Kernel; @@ -12,7 +13,7 @@ namespace MediaBrowser.Controller.Plugins /// <summary> /// Class PluginSecurityManager /// </summary> - public class PluginSecurityManager + public class PluginSecurityManager : ISecurityManager { /// <summary> /// The _is MB supporter diff --git a/MediaBrowser.Controller/Updates/InstallationManager.cs b/MediaBrowser.Controller/Updates/InstallationManager.cs index 64b72ae63..633cc6bc3 100644 --- a/MediaBrowser.Controller/Updates/InstallationManager.cs +++ b/MediaBrowser.Controller/Updates/InstallationManager.cs @@ -183,7 +183,7 @@ namespace MediaBrowser.Controller.Updates PackageType? packageType = null, Version applicationVersion = null) { - var data = new Dictionary<string, string> { { "key", Kernel.PluginSecurityManager.SupporterKey }, { "mac", _networkManager.GetMacAddress() } }; + var data = new Dictionary<string, string> { { "key", Kernel.SecurityManager.SupporterKey }, { "mac", _networkManager.GetMacAddress() } }; using (var json = await HttpClient.Post(Controller.Kernel.MBAdminUrl + "service/package/retrieveall", data, Kernel.ResourcePools.Mb, cancellationToken).ConfigureAwait(false)) { |
