From fe3323a492a35cae736350e896afd077e13e111d Mon Sep 17 00:00:00 2001 From: LukePulverenti Date: Fri, 1 Mar 2013 16:22:34 -0500 Subject: fixes around http response caching, updated the mb icon in the dashboard, and isolated web socket events --- MediaBrowser.Controller/Kernel.cs | 31 +++------------------- MediaBrowser.Controller/Library/DtoBuilder.cs | 12 ++++----- MediaBrowser.Controller/Library/ILibraryManager.cs | 10 +++++++ .../Updates/InstallationManager.cs | 18 ++++++------- 4 files changed, 29 insertions(+), 42 deletions(-) (limited to 'MediaBrowser.Controller') diff --git a/MediaBrowser.Controller/Kernel.cs b/MediaBrowser.Controller/Kernel.cs index 46f4a33293..275b7868b1 100644 --- a/MediaBrowser.Controller/Kernel.cs +++ b/MediaBrowser.Controller/Kernel.cs @@ -10,7 +10,6 @@ using MediaBrowser.Controller.Persistence; using MediaBrowser.Controller.Playback; using MediaBrowser.Controller.Plugins; using MediaBrowser.Controller.Providers; -using MediaBrowser.Controller.Resolvers; using MediaBrowser.Controller.Updates; using MediaBrowser.Controller.Weather; using MediaBrowser.Model.Configuration; @@ -52,7 +51,7 @@ namespace MediaBrowser.Controller /// Gets the installation manager. /// /// The installation manager. - public InstallationManager InstallationManager { get; private set; } + public InstallationManager InstallationManager { get; set; } /// /// Gets or sets the file system manager. @@ -112,18 +111,6 @@ namespace MediaBrowser.Controller /// The image enhancers. public IEnumerable ImageEnhancers { get; private set; } - /// - /// Gets the list of currently registered entity resolvers - /// - /// The entity resolvers enumerable. - public IEnumerable EntityResolvers { get; private set; } - - /// - /// Gets the list of BasePluginFolders added by plugins - /// - /// The plugin folders. - public IEnumerable PluginFolderCreators { get; private set; } - /// /// Gets the list of available user repositories /// @@ -154,12 +141,6 @@ namespace MediaBrowser.Controller /// The item repository. public IItemRepository ItemRepository { get; private set; } - /// - /// Gets the list of available item repositories - /// - /// The user data repositories. - private IEnumerable UserDataRepositories { get; set; } - /// /// Gets the list of available DisplayPreferencesRepositories /// @@ -167,10 +148,10 @@ namespace MediaBrowser.Controller private IEnumerable DisplayPreferencesRepositories { get; set; } /// - /// Gets the list of entity resolution ignore rules + /// Gets the list of available item repositories /// - /// The entity resolution ignore rules. - public IEnumerable EntityResolutionIgnoreRules { get; private set; } + /// The user data repositories. + private IEnumerable UserDataRepositories { get; set; } /// /// Gets the active user data repository @@ -217,7 +198,6 @@ namespace MediaBrowser.Controller BaseItem.LibraryManager = ApplicationHost.Resolve(); User.UserManager = ApplicationHost.Resolve(); - InstallationManager = (InstallationManager)ApplicationHost.CreateInstance(typeof(InstallationManager)); FFMpegManager = (FFMpegManager)ApplicationHost.CreateInstance(typeof(FFMpegManager)); ImageManager = (ImageManager)ApplicationHost.CreateInstance(typeof(ImageManager)); ProviderManager = (ProviderManager)ApplicationHost.CreateInstance(typeof(ProviderManager)); @@ -225,7 +205,6 @@ namespace MediaBrowser.Controller base.FindParts(); - EntityResolutionIgnoreRules = ApplicationHost.GetExports(); UserDataRepositories = ApplicationHost.GetExports(); UserRepositories = ApplicationHost.GetExports(); DisplayPreferencesRepositories = ApplicationHost.GetExports(); @@ -234,9 +213,7 @@ namespace MediaBrowser.Controller IntroProviders = ApplicationHost.GetExports(); PluginConfigurationPages = ApplicationHost.GetExports(); ImageEnhancers = ApplicationHost.GetExports().OrderBy(e => e.Priority).ToArray(); - PluginFolderCreators = ApplicationHost.GetExports(); StringFiles = ApplicationHost.GetExports(); - EntityResolvers = ApplicationHost.GetExports().OrderBy(e => e.Priority).ToArray(); MetadataProviders = ApplicationHost.GetExports().OrderBy(e => e.Priority).ToArray(); } diff --git a/MediaBrowser.Controller/Library/DtoBuilder.cs b/MediaBrowser.Controller/Library/DtoBuilder.cs index c3fa38ebfa..0a892cbfb8 100644 --- a/MediaBrowser.Controller/Library/DtoBuilder.cs +++ b/MediaBrowser.Controller/Library/DtoBuilder.cs @@ -24,11 +24,11 @@ namespace MediaBrowser.Controller.Library /// const string IndexFolderDelimeter = "-index-"; - private ILogger Logger; + private readonly ILogger _logger; public DtoBuilder(ILogger logger) { - Logger = logger; + _logger = logger; } /// @@ -62,7 +62,7 @@ namespace MediaBrowser.Controller.Library catch (Exception ex) { // Have to use a catch-all unfortunately because some .net image methods throw plain Exceptions - Logger.ErrorException("Error generating PrimaryImageAspectRatio for {0}", ex, item.Name); + _logger.ErrorException("Error generating PrimaryImageAspectRatio for {0}", ex, item.Name); } } @@ -124,7 +124,7 @@ namespace MediaBrowser.Controller.Library catch (Exception ex) { // Have to use a catch-all unfortunately because some .net image methods throw plain Exceptions - Logger.ErrorException("Error generating PrimaryImageAspectRatio for {0}", ex, item.Name); + _logger.ErrorException("Error generating PrimaryImageAspectRatio for {0}", ex, item.Name); } } @@ -219,7 +219,7 @@ namespace MediaBrowser.Controller.Library } catch (FileNotFoundException) { - Logger.Error("Image file does not exist: {0}", path); + _logger.Error("Image file does not exist: {0}", path); return; } @@ -581,7 +581,7 @@ namespace MediaBrowser.Controller.Library } catch (IOException ex) { - Logger.ErrorException("Error getting person {0}", ex, c.Name); + _logger.ErrorException("Error getting person {0}", ex, c.Name); return null; } }) diff --git a/MediaBrowser.Controller/Library/ILibraryManager.cs b/MediaBrowser.Controller/Library/ILibraryManager.cs index a013b2b47c..721b5c216e 100644 --- a/MediaBrowser.Controller/Library/ILibraryManager.cs +++ b/MediaBrowser.Controller/Library/ILibraryManager.cs @@ -4,6 +4,7 @@ using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.IO; +using MediaBrowser.Controller.Resolvers; using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Library @@ -141,5 +142,14 @@ namespace MediaBrowser.Controller.Library /// The user id. /// BaseItem. BaseItem GetItemById(Guid id, Guid userId); + + /// + /// Adds the parts. + /// + /// The rules. + /// The plugin folders. + /// The resolvers. + void AddParts(IEnumerable rules, IEnumerable pluginFolders, + IEnumerable resolvers); } } \ No newline at end of file diff --git a/MediaBrowser.Controller/Updates/InstallationManager.cs b/MediaBrowser.Controller/Updates/InstallationManager.cs index 7765b8aeff..f248c6d44f 100644 --- a/MediaBrowser.Controller/Updates/InstallationManager.cs +++ b/MediaBrowser.Controller/Updates/InstallationManager.cs @@ -13,7 +13,6 @@ using System.Collections.Concurrent; using System.Collections.Generic; using System.IO; using System.Linq; -using System.Security.Cryptography; using System.Threading; using System.Threading.Tasks; @@ -24,12 +23,16 @@ namespace MediaBrowser.Controller.Updates /// public class InstallationManager : BaseManager { + public event EventHandler> PackageInstalling; + public event EventHandler> PackageInstallationCompleted; + public event EventHandler> PackageInstallationFailed; + public event EventHandler> PackageInstallationCancelled; + /// /// The current installations /// public List> CurrentInstallations { get; set; } - /// /// The completed installations /// @@ -48,9 +51,6 @@ namespace MediaBrowser.Controller.Updates private void OnPluginUninstalled(IPlugin plugin) { EventHelper.QueueEventIfNotNull(PluginUninstalled, this, new GenericEventArgs { Argument = plugin }, _logger); - - // Notify connected ui's - Kernel.ServerManager.SendWebSocketMessage("PluginUninstalled", plugin.GetPluginInfo()); } #endregion @@ -372,7 +372,7 @@ namespace MediaBrowser.Controller.Updates var linkedToken = CancellationTokenSource.CreateLinkedTokenSource(cancellationToken, innerCancellationTokenSource.Token).Token; - Kernel.ServerManager.SendWebSocketMessage("PackageInstalling", installationInfo); + EventHelper.QueueEventIfNotNull(PackageInstalling, this, new GenericEventArgs() { Argument = installationInfo }, _logger); try { @@ -385,7 +385,7 @@ namespace MediaBrowser.Controller.Updates CompletedInstallations.Add(installationInfo); - Kernel.ServerManager.SendWebSocketMessage("PackageInstallationCompleted", installationInfo); + EventHelper.QueueEventIfNotNull(PackageInstallationCompleted, this, new GenericEventArgs() { Argument = installationInfo }, _logger); } catch (OperationCanceledException) { @@ -396,7 +396,7 @@ namespace MediaBrowser.Controller.Updates _logger.Info("Package installation cancelled: {0} {1}", package.name, package.versionStr); - Kernel.ServerManager.SendWebSocketMessage("PackageInstallationCancelled", installationInfo); + EventHelper.QueueEventIfNotNull(PackageInstallationCancelled, this, new GenericEventArgs() { Argument = installationInfo }, _logger); throw; } @@ -407,7 +407,7 @@ namespace MediaBrowser.Controller.Updates CurrentInstallations.Remove(tuple); } - Kernel.ServerManager.SendWebSocketMessage("PackageInstallationFailed", installationInfo); + EventHelper.QueueEventIfNotNull(PackageInstallationFailed, this, new GenericEventArgs() { Argument = installationInfo }, _logger); throw; } -- cgit v1.2.3