diff options
Diffstat (limited to 'MediaBrowser.Common/Security')
| -rw-r--r-- | MediaBrowser.Common/Security/IRequiresRegistration.cs | 15 | ||||
| -rw-r--r-- | MediaBrowser.Common/Security/ISecurityManager.cs | 32 | ||||
| -rw-r--r-- | MediaBrowser.Common/Security/PaymentRequiredException.cs | 8 |
3 files changed, 55 insertions, 0 deletions
diff --git a/MediaBrowser.Common/Security/IRequiresRegistration.cs b/MediaBrowser.Common/Security/IRequiresRegistration.cs new file mode 100644 index 000000000..7b1667c2e --- /dev/null +++ b/MediaBrowser.Common/Security/IRequiresRegistration.cs @@ -0,0 +1,15 @@ +using System.Threading.Tasks; + +namespace MediaBrowser.Common.Security +{ + public interface IRequiresRegistration + { + /// <summary> + /// Load all registration information required for this entity. + /// Your class should re-load all MBRegistrationRecords when this is called even if they were + /// previously loaded. + /// </summary> + /// <returns></returns> + Task LoadRegistrationInfoAsync(); + } +} diff --git a/MediaBrowser.Common/Security/ISecurityManager.cs b/MediaBrowser.Common/Security/ISecurityManager.cs new file mode 100644 index 000000000..b63a9efd0 --- /dev/null +++ b/MediaBrowser.Common/Security/ISecurityManager.cs @@ -0,0 +1,32 @@ +using MediaBrowser.Model.Entities; +using System.Threading.Tasks; + +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> + Task<bool> IsSupporter(); + + /// <summary> + /// Gets or sets the supporter key. + /// </summary> + /// <value>The supporter key.</value> + string SupporterKey { get; } + + /// <summary> + /// Gets the registration status. Overload to support existing plug-ins. + /// </summary> + Task<MBRegistrationRecord> GetRegistrationStatus(string feature); + + /// <summary> + /// Register and app store sale with our back-end + /// </summary> + /// <param name="parameters">Json parameters to pass to admin server</param> + Task RegisterAppStoreSale(string parameters); + Task UpdateSupporterKey(string newValue); + } +}
\ No newline at end of file diff --git a/MediaBrowser.Common/Security/PaymentRequiredException.cs b/MediaBrowser.Common/Security/PaymentRequiredException.cs new file mode 100644 index 000000000..27b3e6961 --- /dev/null +++ b/MediaBrowser.Common/Security/PaymentRequiredException.cs @@ -0,0 +1,8 @@ +using System; + +namespace MediaBrowser.Common.Security +{ + public class PaymentRequiredException : Exception + { + } +} |
