diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-06-03 14:15:35 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-06-03 14:15:35 -0400 |
| commit | 08d9004d8f361aaf13756cab70fc659e5fbb775c (patch) | |
| tree | 1f96203035f37c4f35d7819edb2f50d15fea80f7 /MediaBrowser.ServerApplication | |
| parent | 59118a2ddbf31973873eef42ef18182300fe9a0c (diff) | |
a little more kernel consolidation
Diffstat (limited to 'MediaBrowser.ServerApplication')
4 files changed, 57 insertions, 37 deletions
diff --git a/MediaBrowser.ServerApplication/App.xaml.cs b/MediaBrowser.ServerApplication/App.xaml.cs index 5a1d7505c..260081416 100644 --- a/MediaBrowser.ServerApplication/App.xaml.cs +++ b/MediaBrowser.ServerApplication/App.xaml.cs @@ -226,10 +226,13 @@ namespace MediaBrowser.ServerApplication /// Opens the dashboard page. /// </summary> /// <param name="page">The page.</param> - public static void OpenDashboardPage(string page, User loggedInUser, IServerConfigurationManager configurationManager) + /// <param name="loggedInUser">The logged in user.</param> + /// <param name="configurationManager">The configuration manager.</param> + /// <param name="appHost">The app host.</param> + public static void OpenDashboardPage(string page, User loggedInUser, IServerConfigurationManager configurationManager, IServerApplicationHost appHost) { var url = "http://localhost:" + configurationManager.Configuration.HttpServerPortNumber + "/" + - Kernel.Instance.WebApplicationName + "/dashboard/" + page; + appHost.WebApplicationName + "/dashboard/" + page; OpenUrl(url); } diff --git a/MediaBrowser.ServerApplication/ApplicationHost.cs b/MediaBrowser.ServerApplication/ApplicationHost.cs index 17ee2d597..9e9ab7ff3 100644 --- a/MediaBrowser.ServerApplication/ApplicationHost.cs +++ b/MediaBrowser.ServerApplication/ApplicationHost.cs @@ -40,7 +40,6 @@ using MediaBrowser.Server.Implementations.Providers; using MediaBrowser.Server.Implementations.ServerManager; using MediaBrowser.Server.Implementations.Session; using MediaBrowser.Server.Implementations.Sqlite; -using MediaBrowser.Server.Implementations.Udp; using MediaBrowser.Server.Implementations.Updates; using MediaBrowser.Server.Implementations.WebSocket; using MediaBrowser.ServerApplication.Implementations; @@ -50,7 +49,6 @@ using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; -using System.Net.Sockets; using System.Reflection; using System.Threading; using System.Threading.Tasks; @@ -89,6 +87,28 @@ namespace MediaBrowser.ServerApplication } /// <summary> + /// Gets the name of the web application that can be used for url building. + /// All api urls will be of the form {protocol}://{host}:{port}/{appname}/... + /// </summary> + /// <value>The name of the web application.</value> + public string WebApplicationName + { + get { return "mediabrowser"; } + } + + /// <summary> + /// Gets the HTTP server URL prefix. + /// </summary> + /// <value>The HTTP server URL prefix.</value> + public string HttpServerUrlPrefix + { + get + { + return "http://+:" + ServerConfigurationManager.Configuration.HttpServerPortNumber + "/" + WebApplicationName + "/"; + } + } + + /// <summary> /// Gets the configuration manager. /// </summary> /// <returns>IConfigurationManager.</returns> @@ -200,7 +220,7 @@ namespace MediaBrowser.ServerApplication /// <returns>Task.</returns> protected override async Task RegisterResources() { - ServerKernel = new Kernel(ServerConfigurationManager); + ServerKernel = new Kernel(); await base.RegisterResources().ConfigureAwait(false); @@ -261,7 +281,7 @@ namespace MediaBrowser.ServerApplication HttpServer = await _httpServerCreationTask.ConfigureAwait(false); RegisterSingleInstance(HttpServer, false); - ServerManager = new ServerManager(this, JsonSerializer, Logger, ServerConfigurationManager, ServerKernel); + ServerManager = new ServerManager(this, JsonSerializer, Logger, ServerConfigurationManager); RegisterSingleInstance(ServerManager); var displayPreferencesTask = Task.Run(async () => await ConfigureDisplayPreferencesRepositories().ConfigureAwait(false)); @@ -279,14 +299,15 @@ namespace MediaBrowser.ServerApplication /// </summary> private void SetKernelProperties() { + ServerKernel.ImageManager = new ImageManager(ServerKernel, LogManager.GetLogger("ImageManager"), + ApplicationPaths); Parallel.Invoke( - () => ServerKernel.FFMpegManager = new FFMpegManager(ApplicationPaths, MediaEncoder, LibraryManager, Logger), - () => ServerKernel.ImageManager = new ImageManager(ServerKernel, LogManager.GetLogger("ImageManager"), ApplicationPaths), - () => ServerKernel.WeatherProviders = GetExports<IWeatherProvider>(), - () => ServerKernel.ImageEnhancers = GetExports<IImageEnhancer>().OrderBy(e => e.Priority).ToArray(), - () => ServerKernel.StringFiles = GetExports<LocalizedStringData>(), - SetStaticProperties - ); + () => ServerKernel.FFMpegManager = new FFMpegManager(ApplicationPaths, MediaEncoder, LibraryManager, Logger), + () => ServerKernel.WeatherProviders = GetExports<IWeatherProvider>(), + () => ServerKernel.ImageManager.ImageEnhancers = GetExports<IImageEnhancer>().OrderBy(e => e.Priority).ToArray(), + () => LocalizedStrings.StringFiles = GetExports<LocalizedStringData>(), + SetStaticProperties + ); } /// <summary> @@ -364,20 +385,16 @@ namespace MediaBrowser.ServerApplication ServerManager.AddWebSocketListeners(GetExports<IWebSocketListener>(false)); StartServer(true); - - Parallel.Invoke( - - () => LibraryManager.AddParts(GetExports<IResolverIgnoreRule>(), - GetExports<IVirtualFolderCreator>(), - GetExports<IItemResolver>(), - GetExports<IIntroProvider>(), - GetExports<IBaseItemComparer>(), - GetExports<ILibraryPrescanTask>(), - GetExports<ILibraryPostScanTask>()), - () => ProviderManager.AddMetadataProviders(GetExports<BaseMetadataProvider>().ToArray()) + LibraryManager.AddParts(GetExports<IResolverIgnoreRule>(), + GetExports<IVirtualFolderCreator>(), + GetExports<IItemResolver>(), + GetExports<IIntroProvider>(), + GetExports<IBaseItemComparer>(), + GetExports<ILibraryPrescanTask>(), + GetExports<ILibraryPostScanTask>()); - ); + ProviderManager.AddMetadataProviders(GetExports<BaseMetadataProvider>().ToArray()); } /// <summary> @@ -414,7 +431,7 @@ namespace MediaBrowser.ServerApplication { base.OnConfigurationUpdated(sender, e); - if (!string.Equals(HttpServer.UrlPrefix, ServerKernel.HttpServerUrlPrefix, StringComparison.OrdinalIgnoreCase)) + if (!string.Equals(HttpServer.UrlPrefix, HttpServerUrlPrefix, StringComparison.OrdinalIgnoreCase)) { NotifyPendingRestart(); } @@ -553,7 +570,7 @@ namespace MediaBrowser.ServerApplication FileName = tmpFile, Arguments = string.Format("{0} {1} {2} {3}", ServerConfigurationManager.Configuration.HttpServerPortNumber, - ServerKernel.HttpServerUrlPrefix, + HttpServerUrlPrefix, UdpServerPort, ServerConfigurationManager.Configuration.LegacyWebSocketPortNumber), diff --git a/MediaBrowser.ServerApplication/EntryPoints/StartupWizard.cs b/MediaBrowser.ServerApplication/EntryPoints/StartupWizard.cs index 22ec16b02..cbdd92c71 100644 --- a/MediaBrowser.ServerApplication/EntryPoints/StartupWizard.cs +++ b/MediaBrowser.ServerApplication/EntryPoints/StartupWizard.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Common; +using MediaBrowser.Controller; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Plugins; @@ -17,7 +17,7 @@ namespace MediaBrowser.ServerApplication.EntryPoints /// <summary> /// The _app host /// </summary> - private readonly IApplicationHost _appHost; + private readonly IServerApplicationHost _appHost; /// <summary> /// The _user manager /// </summary> @@ -31,7 +31,7 @@ namespace MediaBrowser.ServerApplication.EntryPoints /// </summary> /// <param name="appHost">The app host.</param> /// <param name="userManager">The user manager.</param> - public StartupWizard(IApplicationHost appHost, IUserManager userManager, IServerConfigurationManager configurationManager) + public StartupWizard(IServerApplicationHost appHost, IUserManager userManager, IServerConfigurationManager configurationManager) { _appHost = appHost; _userManager = userManager; @@ -58,7 +58,7 @@ namespace MediaBrowser.ServerApplication.EntryPoints try { - App.OpenDashboardPage("wizardStart.html", user, _configurationManager); + App.OpenDashboardPage("wizardStart.html", user, _configurationManager, _appHost); } catch (Win32Exception ex) { diff --git a/MediaBrowser.ServerApplication/MainWindow.xaml.cs b/MediaBrowser.ServerApplication/MainWindow.xaml.cs index 0c9307394..f23016d7b 100644 --- a/MediaBrowser.ServerApplication/MainWindow.xaml.cs +++ b/MediaBrowser.ServerApplication/MainWindow.xaml.cs @@ -29,7 +29,7 @@ namespace MediaBrowser.ServerApplication /// <summary> /// The _app host /// </summary> - private readonly IApplicationHost _appHost; + private readonly IServerApplicationHost _appHost; /// <summary> /// The _log manager @@ -57,7 +57,7 @@ namespace MediaBrowser.ServerApplication /// <param name="jsonSerializer">The json serializer.</param> /// <param name="displayPreferencesManager">The display preferences manager.</param> /// <exception cref="System.ArgumentNullException">logger</exception> - public MainWindow(ILogManager logManager, IApplicationHost appHost, IServerConfigurationManager configurationManager, IUserManager userManager, ILibraryManager libraryManager, IJsonSerializer jsonSerializer, IDisplayPreferencesManager displayPreferencesManager) + public MainWindow(ILogManager logManager, IServerApplicationHost appHost, IServerConfigurationManager configurationManager, IUserManager userManager, ILibraryManager libraryManager, IJsonSerializer jsonSerializer, IDisplayPreferencesManager displayPreferencesManager) { if (logManager == null) { @@ -189,13 +189,13 @@ namespace MediaBrowser.ServerApplication void cmdApiDocs_Click(object sender, EventArgs e) { App.OpenUrl("http://localhost:" + _configurationManager.Configuration.HttpServerPortNumber + "/" + - Kernel.Instance.WebApplicationName + "/metadata"); + _appHost.WebApplicationName + "/metadata"); } void cmdSwaggerApiDocs_Click(object sender, EventArgs e) { App.OpenUrl("http://localhost:" + _configurationManager.Configuration.HttpServerPortNumber + "/" + - Kernel.Instance.WebApplicationName + "/swagger-ui/index.html"); + _appHost.WebApplicationName + "/swagger-ui/index.html"); } void cmdGithubWiki_Click(object sender, EventArgs e) @@ -254,7 +254,7 @@ namespace MediaBrowser.ServerApplication /// </summary> private void OpenDashboard(User loggedInUser) { - App.OpenDashboardPage("dashboard.html", loggedInUser, _configurationManager); + App.OpenDashboardPage("dashboard.html", loggedInUser, _configurationManager, _appHost); } /// <summary> @@ -275,7 +275,7 @@ namespace MediaBrowser.ServerApplication private void cmdBrowseLibrary_click(object sender, RoutedEventArgs e) { var user = _userManager.Users.FirstOrDefault(u => u.Configuration.IsAdministrator); - App.OpenDashboardPage("index.html", user, _configurationManager); + App.OpenDashboardPage("index.html", user, _configurationManager, _appHost); } /// <summary> |
