Hook new registration load to changing supporter keys

pull/702/head
Eric Reed 12 years ago
parent d3b37a73cc
commit a7f06c84b1

@ -73,9 +73,9 @@ namespace MediaBrowser.Common.Implementations.Security
{ {
var tasks = new List<Task>(); var tasks = new List<Task>();
ResetSupporterInfo();
tasks.AddRange(_registeredEntities.Select(i => i.LoadRegistrationInfoAsync())); tasks.AddRange(_registeredEntities.Select(i => i.LoadRegistrationInfoAsync()));
await Task.WhenAll(tasks); await Task.WhenAll(tasks);
ResetSupporterInfo();
} }
/// <summary> /// <summary>
@ -101,11 +101,8 @@ namespace MediaBrowser.Common.Implementations.Security
if (value != MBRegistration.SupporterKey) if (value != MBRegistration.SupporterKey)
{ {
MBRegistration.SupporterKey = value; MBRegistration.SupporterKey = value;
// Clear this so it will re-evaluate // re-load registration info
ResetSupporterInfo(); Task.Run(() => LoadAllRegistrationInfo());
// And we'll need to restart to re-evaluate the status of plug-ins
_appHost.NotifyPendingRestart();
} }
} }
} }
@ -118,10 +115,13 @@ namespace MediaBrowser.Common.Implementations.Security
{ {
get { return MBRegistration.LegacyKey; } get { return MBRegistration.LegacyKey; }
set set
{
if (value != MBRegistration.LegacyKey)
{ {
MBRegistration.LegacyKey = value; MBRegistration.LegacyKey = value;
// And we'll need to restart to re-evaluate the status of plug-ins // re-load registration info
_appHost.NotifyPendingRestart(); Task.Run(() => LoadAllRegistrationInfo());
}
} }
} }

@ -4,6 +4,12 @@ namespace MediaBrowser.Common.Security
{ {
public interface IRequiresRegistration 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(); Task LoadRegistrationInfoAsync();
} }
} }

Loading…
Cancel
Save