From 1925288a860ccc3fcd7364432ac5057eccf044e0 Mon Sep 17 00:00:00 2001 From: Eric Reed Date: Tue, 26 Feb 2013 17:13:58 -0500 Subject: [PATCH] Extract ISecurityManager interface --- .../MediaBrowser.Common.csproj | 1 + .../Security/ISecurityManager.cs | 34 +++++++++++++++++++ .../Plugins/PluginSecurityManager.cs | 5 +-- 3 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 MediaBrowser.Common/Security/ISecurityManager.cs 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 @@ + 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 + { + /// + /// Gets a value indicating whether this instance is MB supporter. + /// + /// true if this instance is MB supporter; otherwise, false. + bool IsMBSupporter { get; } + + /// + /// Gets or sets the supporter key. + /// + /// The supporter key. + string SupporterKey { get; set; } + + /// + /// Gets or sets the legacy key. + /// + /// The legacy key. + string LegacyKey { get; set; } + + /// + /// Gets the registration status. + /// + /// The feature. + /// The MB2 equivalent. + /// Task{MBRegistrationRecord}. + Task GetRegistrationStatus(string feature, string mb2Equivalent = null); + } +} \ No newline at end of file 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 /// /// Class PluginSecurityManager /// - public class PluginSecurityManager + public class PluginSecurityManager : ISecurityManager { /// /// The _is MB supporter