diff options
| -rw-r--r-- | MediaBrowser.Common/Kernel/BaseKernel.cs | 5 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Kernel.cs | 24 |
2 files changed, 21 insertions, 8 deletions
diff --git a/MediaBrowser.Common/Kernel/BaseKernel.cs b/MediaBrowser.Common/Kernel/BaseKernel.cs index 02de6dee6..6e24fcfc2 100644 --- a/MediaBrowser.Common/Kernel/BaseKernel.cs +++ b/MediaBrowser.Common/Kernel/BaseKernel.cs @@ -45,17 +45,20 @@ namespace MediaBrowser.Common.Kernel public BaseKernel()
{
-
+
}
public virtual void Init(IProgress<TaskProgress> progress)
{
ReloadLogger();
+ progress.Report(new TaskProgress() { Description = "Loading configuration", PercentComplete = 0 });
ReloadConfiguration();
+ progress.Report(new TaskProgress() { Description = "Starting Http server", PercentComplete = 5 });
ReloadHttpServer();
+ progress.Report(new TaskProgress() { Description = "Loading Plugins", PercentComplete = 10 });
ReloadComposableParts();
}
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;
|
