referenced core plugins, fixed some dashboard issues, extracted library manager

This commit is contained in:
LukePulverenti
2013-02-28 14:32:41 -05:00
parent 4435e83e69
commit af7aa597c3
52 changed files with 557 additions and 337 deletions

View File

@@ -72,11 +72,13 @@ namespace MediaBrowser.Controller.IO
/// </summary>
/// <value>The task manager.</value>
private ITaskManager TaskManager { get; set; }
private ILibraryManager LibraryManager { get; set; }
/// <summary>
/// Initializes a new instance of the <see cref="DirectoryWatchers" /> class.
/// </summary>
public DirectoryWatchers(ILogger logger, ITaskManager taskManager)
public DirectoryWatchers(ILogger logger, ITaskManager taskManager, ILibraryManager libraryManager)
{
if (logger == null)
{
@@ -87,6 +89,7 @@ namespace MediaBrowser.Controller.IO
throw new ArgumentNullException("taskManager");
}
LibraryManager = libraryManager;
TaskManager = taskManager;
Logger = logger;
}
@@ -96,11 +99,11 @@ namespace MediaBrowser.Controller.IO
/// </summary>
internal void Start()
{
Kernel.Instance.LibraryManager.LibraryChanged += Instance_LibraryChanged;
var pathsToWatch = new List<string> { Kernel.Instance.RootFolder.Path };
LibraryManager.LibraryChanged += Instance_LibraryChanged;
var paths = Kernel.Instance.RootFolder.Children.OfType<Folder>()
var pathsToWatch = new List<string> { LibraryManager.RootFolder.Path };
var paths = LibraryManager.RootFolder.Children.OfType<Folder>()
.SelectMany(f =>
{
try
@@ -467,7 +470,7 @@ namespace MediaBrowser.Controller.IO
while (item == null && !string.IsNullOrEmpty(path))
{
item = Kernel.Instance.RootFolder.FindByPath(path);
item = LibraryManager.RootFolder.FindByPath(path);
path = Path.GetDirectoryName(path);
}
@@ -494,7 +497,7 @@ namespace MediaBrowser.Controller.IO
/// </summary>
private void Stop()
{
Kernel.Instance.LibraryManager.LibraryChanged -= Instance_LibraryChanged;
LibraryManager.LibraryChanged -= Instance_LibraryChanged;
FileSystemWatcher watcher;

View File

@@ -2,6 +2,7 @@
using MediaBrowser.Common.Kernel;
using MediaBrowser.Common.ScheduledTasks;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Library;
using MediaBrowser.Model.Logging;
using System;
using System.IO;
@@ -34,11 +35,12 @@ namespace MediaBrowser.Controller.IO
/// <param name="kernel">The kernel.</param>
/// <param name="logger">The logger.</param>
/// <param name="taskManager">The task manager.</param>
public FileSystemManager(Kernel kernel, ILogger logger, ITaskManager taskManager)
/// <param name="libraryManager">The library manager.</param>
public FileSystemManager(Kernel kernel, ILogger logger, ITaskManager taskManager, ILibraryManager libraryManager)
: base(kernel)
{
_logger = logger;
DirectoryWatchers = new DirectoryWatchers(logger, taskManager);
DirectoryWatchers = new DirectoryWatchers(logger, taskManager, libraryManager);
}
/// <summary>