aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.ServerApplication
diff options
context:
space:
mode:
authorLukePulverenti <luke.pulverenti@gmail.com>2013-03-04 23:25:27 -0500
committerLukePulverenti <luke.pulverenti@gmail.com>2013-03-04 23:25:27 -0500
commitbf9e24502c26bc130960cebc6b1be16635070bc8 (patch)
tree4e7f07ec99b476b179ee4ef85d19860f3a73ee85 /MediaBrowser.ServerApplication
parent4c725e69a8bb96da1f69fc3d958c680b77712f81 (diff)
extracted an installation manager interface
Diffstat (limited to 'MediaBrowser.ServerApplication')
-rw-r--r--MediaBrowser.ServerApplication/ApplicationHost.cs31
-rw-r--r--MediaBrowser.ServerApplication/WebSocketEvents.cs22
2 files changed, 17 insertions, 36 deletions
diff --git a/MediaBrowser.ServerApplication/ApplicationHost.cs b/MediaBrowser.ServerApplication/ApplicationHost.cs
index 80ed5bea7..d22c522e7 100644
--- a/MediaBrowser.ServerApplication/ApplicationHost.cs
+++ b/MediaBrowser.ServerApplication/ApplicationHost.cs
@@ -25,6 +25,7 @@ using MediaBrowser.Server.Implementations;
using MediaBrowser.Server.Implementations.BdInfo;
using MediaBrowser.Server.Implementations.Configuration;
using MediaBrowser.Server.Implementations.Library;
+using MediaBrowser.Server.Implementations.Updates;
using MediaBrowser.ServerApplication.Implementations;
using MediaBrowser.WebDashboard.Api;
using System;
@@ -43,11 +44,6 @@ namespace MediaBrowser.ServerApplication
public class ApplicationHost : BaseApplicationHost<ServerApplicationPaths>
{
/// <summary>
- /// The _web socket events
- /// </summary>
- private WebSocketEvents _webSocketEvents;
-
- /// <summary>
/// Gets the server kernel.
/// </summary>
/// <value>The server kernel.</value>
@@ -114,6 +110,8 @@ namespace MediaBrowser.ServerApplication
RegisterSingleInstance<IUserManager>(userManager);
RegisterSingleInstance<ILibraryManager>(new LibraryManager(ServerKernel, Logger, TaskManager, userManager, ServerConfigurationManager));
+
+ RegisterSingleInstance<IInstallationManager>(new InstallationManager(Kernel, HttpClient, PackageManager, JsonSerializer, Logger, this));
}
/// <summary>
@@ -124,10 +122,6 @@ namespace MediaBrowser.ServerApplication
base.FindParts();
Resolve<ILibraryManager>().AddParts(GetExports<IResolverIgnoreRule>(), GetExports<IVirtualFolderCreator>(), GetExports<IItemResolver>(), GetExports<IIntroProvider>());
-
- ServerKernel.InstallationManager = (InstallationManager)CreateInstance(typeof(InstallationManager));
-
- _webSocketEvents = new WebSocketEvents(Resolve<IServerManager>(), Resolve<IKernel>(), Resolve<ILogger>(), Resolve<IUserManager>(), Resolve<ILibraryManager>(), ServerKernel.InstallationManager);
}
/// <summary>
@@ -157,7 +151,7 @@ namespace MediaBrowser.ServerApplication
{
var pkgManager = Resolve<IPackageManager>();
var availablePackages = await pkgManager.GetAvailablePackages(CancellationToken.None).ConfigureAwait(false);
- var version = ServerKernel.InstallationManager.GetLatestCompatibleVersion(availablePackages, Constants.MBServerPkgName, ConfigurationManager.CommonConfiguration.SystemUpdateLevel);
+ var version = Resolve<IInstallationManager>().GetLatestCompatibleVersion(availablePackages, Constants.MBServerPkgName, ConfigurationManager.CommonConfiguration.SystemUpdateLevel);
return version != null ? new CheckForUpdateResult { AvailableVersion = version.version, IsUpdateAvailable = version.version > ApplicationVersion, Package = version } :
new CheckForUpdateResult { AvailableVersion = ApplicationVersion, IsUpdateAvailable = false };
@@ -223,22 +217,5 @@ namespace MediaBrowser.ServerApplication
{
App.Instance.Dispatcher.Invoke(App.Instance.Shutdown);
}
-
- /// <summary>
- /// Releases unmanaged and - optionally - managed resources.
- /// </summary>
- /// <param name="dispose"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
- protected override void Dispose(bool dispose)
- {
- if (dispose)
- {
- if (_webSocketEvents != null)
- {
- _webSocketEvents.Dispose();
- }
- }
-
- base.Dispose(dispose);
- }
}
}
diff --git a/MediaBrowser.ServerApplication/WebSocketEvents.cs b/MediaBrowser.ServerApplication/WebSocketEvents.cs
index 6ffd077f8..4d6720869 100644
--- a/MediaBrowser.ServerApplication/WebSocketEvents.cs
+++ b/MediaBrowser.ServerApplication/WebSocketEvents.cs
@@ -3,6 +3,7 @@ using MediaBrowser.Common.Kernel;
using MediaBrowser.Common.Plugins;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Library;
+using MediaBrowser.Controller.Plugins;
using MediaBrowser.Controller.Updates;
using MediaBrowser.Model.Logging;
using MediaBrowser.Model.Updates;
@@ -13,7 +14,7 @@ namespace MediaBrowser.ServerApplication
/// <summary>
/// Class WebSocketEvents
/// </summary>
- public class WebSocketEvents : IDisposable
+ public class WebSocketEvents : IServerEntryPoint, IDisposable
{
/// <summary>
/// The _server manager
@@ -37,7 +38,7 @@ namespace MediaBrowser.ServerApplication
/// <summary>
/// The _installation manager
/// </summary>
- private readonly InstallationManager _installationManager;
+ private readonly IInstallationManager _installationManager;
/// <summary>
/// The _kernel
@@ -50,7 +51,7 @@ namespace MediaBrowser.ServerApplication
/// <param name="serverManager">The server manager.</param>
/// <param name="logger">The logger.</param>
/// <param name="userManager">The user manager.</param>
- public WebSocketEvents(IServerManager serverManager, IKernel kernel, ILogger logger, IUserManager userManager, ILibraryManager libraryManager, InstallationManager installationManager)
+ public WebSocketEvents(IServerManager serverManager, IKernel kernel, ILogger logger, IUserManager userManager, ILibraryManager libraryManager, IInstallationManager installationManager)
{
_serverManager = serverManager;
_logger = logger;
@@ -58,19 +59,22 @@ namespace MediaBrowser.ServerApplication
_libraryManager = libraryManager;
_installationManager = installationManager;
_kernel = kernel;
+ }
+ public void Run()
+ {
_userManager.UserDeleted += userManager_UserDeleted;
_userManager.UserUpdated += userManager_UserUpdated;
_libraryManager.LibraryChanged += libraryManager_LibraryChanged;
- kernel.HasPendingRestartChanged += kernel_HasPendingRestartChanged;
+ _kernel.HasPendingRestartChanged += kernel_HasPendingRestartChanged;
- installationManager.PluginUninstalled += InstallationManager_PluginUninstalled;
- installationManager.PackageInstalling += installationManager_PackageInstalling;
- installationManager.PackageInstallationCancelled += installationManager_PackageInstallationCancelled;
- installationManager.PackageInstallationCompleted += installationManager_PackageInstallationCompleted;
- installationManager.PackageInstallationFailed += installationManager_PackageInstallationFailed;
+ _installationManager.PluginUninstalled += InstallationManager_PluginUninstalled;
+ _installationManager.PackageInstalling += installationManager_PackageInstalling;
+ _installationManager.PackageInstallationCancelled += installationManager_PackageInstallationCancelled;
+ _installationManager.PackageInstallationCompleted += installationManager_PackageInstallationCompleted;
+ _installationManager.PackageInstallationFailed += installationManager_PackageInstallationFailed;
}
/// <summary>