diff options
Diffstat (limited to 'MediaBrowser.Controller/Kernel.cs')
| -rw-r--r-- | MediaBrowser.Controller/Kernel.cs | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/MediaBrowser.Controller/Kernel.cs b/MediaBrowser.Controller/Kernel.cs index 9f9ce924d..7841a2a5e 100644 --- a/MediaBrowser.Controller/Kernel.cs +++ b/MediaBrowser.Controller/Kernel.cs @@ -16,6 +16,7 @@ using MediaBrowser.Controller.Resolvers; using MediaBrowser.Model.Configuration;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Users;
+using MediaBrowser.Model.Progress;
namespace MediaBrowser.Controller
{
@@ -37,13 +38,13 @@ namespace MediaBrowser.Controller return ApplicationPaths.RootFolderPath;
}
}
-
+
/// <summary>
/// Gets the list of currently registered entity resolvers
/// </summary>
[ImportMany(typeof(IBaseItemResolver))]
public IEnumerable<IBaseItemResolver> EntityResolvers { get; private set; }
-
+
/// <summary>
/// Creates a kernal based on a Data path, which is akin to our current programdata path
/// </summary>
@@ -59,6 +60,19 @@ namespace MediaBrowser.Controller ItemController.BeginResolvePath += ItemController_BeginResolvePath;
}
+ public override void Init(IProgress<TaskProgress> progress)
+ {
+ base.Init(progress);
+
+ progress.Report(new TaskProgress() { Description = "Loading Users", PercentComplete = 15 });
+ ReloadUsers();
+
+ progress.Report(new TaskProgress() { Description = "Loading Media Library", PercentComplete = 20 });
+ ReloadRoot();
+
+ progress.Report(new TaskProgress() { Description = "Loading Complete", PercentComplete = 100 });
+ }
+
protected override void OnComposablePartsLoaded()
{
List<IBaseItemResolver> resolvers = EntityResolvers.ToList();
@@ -72,10 +86,6 @@ namespace MediaBrowser.Controller // The base class will start up all the plugins
base.OnComposablePartsLoaded();
-
- // Get users from users folder
- // Load root media folder
- Parallel.Invoke(ReloadUsers, ReloadRoot);
}
/// <summary>
@@ -149,7 +159,7 @@ namespace MediaBrowser.Controller {
return Configuration.DefaultUserConfiguration;
}
-
+
public void ReloadItem(BaseItem item)
{
Folder folder = item as Folder;
|
