Hook new registration load to changing supporter keys

pull/702/head
Eric Reed 11 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();
} }
} }
} }
@ -119,9 +116,12 @@ namespace MediaBrowser.Common.Implementations.Security
get { return MBRegistration.LegacyKey; } get { return MBRegistration.LegacyKey; }
set set
{ {
MBRegistration.LegacyKey = value; if (value != MBRegistration.LegacyKey)
// And we'll need to restart to re-evaluate the status of plug-ins {
_appHost.NotifyPendingRestart(); MBRegistration.LegacyKey = value;
// re-load registration info
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