aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.ServerApplication
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2013-06-03 14:15:35 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2013-06-03 14:15:35 -0400
commit08d9004d8f361aaf13756cab70fc659e5fbb775c (patch)
tree1f96203035f37c4f35d7819edb2f50d15fea80f7 /MediaBrowser.ServerApplication
parent59118a2ddbf31973873eef42ef18182300fe9a0c (diff)
a little more kernel consolidation
Diffstat (limited to 'MediaBrowser.ServerApplication')
-rw-r--r--MediaBrowser.ServerApplication/App.xaml.cs7
-rw-r--r--MediaBrowser.ServerApplication/ApplicationHost.cs67
-rw-r--r--MediaBrowser.ServerApplication/EntryPoints/StartupWizard.cs8
-rw-r--r--MediaBrowser.ServerApplication/MainWindow.xaml.cs12
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>