From 46480f118728a7a83d983cea5b00614ec55c8dcc Mon Sep 17 00:00:00 2001 From: LukePulverenti Date: Mon, 4 Mar 2013 13:13:47 -0500 Subject: made RegisterResources a Task --- .../BaseApplicationHost.cs | 76 +++++++++++----------- 1 file changed, 38 insertions(+), 38 deletions(-) (limited to 'MediaBrowser.Common.Implementations/BaseApplicationHost.cs') diff --git a/MediaBrowser.Common.Implementations/BaseApplicationHost.cs b/MediaBrowser.Common.Implementations/BaseApplicationHost.cs index 0a60b703f..769cac713 100644 --- a/MediaBrowser.Common.Implementations/BaseApplicationHost.cs +++ b/MediaBrowser.Common.Implementations/BaseApplicationHost.cs @@ -154,30 +154,27 @@ namespace MediaBrowser.Common.Implementations /// Inits this instance. /// /// Task. - public virtual Task Init() + public virtual async Task Init() { - return Task.Run(() => - { - IsFirstRun = !ConfigurationManager.CommonConfiguration.IsStartupWizardCompleted; - - Logger = LogManager.GetLogger("App"); + IsFirstRun = !ConfigurationManager.CommonConfiguration.IsStartupWizardCompleted; - DiscoverTypes(); + Logger = LogManager.GetLogger("App"); - LogManager.ReloadLogger(ConfigurationManager.CommonConfiguration.EnableDebugLevelLogging ? LogSeverity.Debug : LogSeverity.Info); + DiscoverTypes(); - Logger.Info("Version {0} initializing", ApplicationVersion); + LogManager.ReloadLogger(ConfigurationManager.CommonConfiguration.EnableDebugLevelLogging ? LogSeverity.Debug : LogSeverity.Info); - Kernel = GetKernel(); + Logger.Info("Version {0} initializing", ApplicationVersion); - RegisterResources(); + Kernel = GetKernel(); - FindParts(); + await RegisterResources().ConfigureAwait(false); - Task.Run(() => ConfigureAutoRunAtStartup()); + FindParts(); - Kernel.Init(); - }); + Task.Run(() => ConfigureAutoRunAtStartup()); + + Kernel.Init(); } /// @@ -224,44 +221,47 @@ namespace MediaBrowser.Common.Implementations /// /// Registers resources that classes will depend on /// - protected virtual void RegisterResources() + protected virtual Task RegisterResources() { - RegisterSingleInstance(ConfigurationManager); - RegisterSingleInstance(this); + return Task.Run(() => + { + RegisterSingleInstance(ConfigurationManager); + RegisterSingleInstance(this); - RegisterSingleInstance(ApplicationPaths); + RegisterSingleInstance(ApplicationPaths); - var networkManager = new NetworkManager(); + var networkManager = new NetworkManager(); - var serverManager = new ServerManager.ServerManager(this, Kernel, networkManager, JsonSerializer, Logger, ConfigurationManager); + var serverManager = new ServerManager.ServerManager(this, Kernel, networkManager, JsonSerializer, Logger, ConfigurationManager); - TaskManager = new TaskManager(ApplicationPaths, JsonSerializer, Logger, serverManager); + TaskManager = new TaskManager(ApplicationPaths, JsonSerializer, Logger, serverManager); - RegisterSingleInstance(JsonSerializer); - RegisterSingleInstance(XmlSerializer); + RegisterSingleInstance(JsonSerializer); + RegisterSingleInstance(XmlSerializer); - RegisterSingleInstance(LogManager); - RegisterSingleInstance(Logger); + RegisterSingleInstance(LogManager); + RegisterSingleInstance(Logger); - RegisterSingleInstance(Kernel); + RegisterSingleInstance(Kernel); - RegisterSingleInstance(TaskManager); - RegisterSingleInstance(() => new AlchemyServer(Logger)); - RegisterSingleInstance(ProtobufSerializer); - RegisterSingleInstance(new UdpServer(Logger), false); + RegisterSingleInstance(TaskManager); + RegisterSingleInstance(() => new AlchemyServer(Logger)); + RegisterSingleInstance(ProtobufSerializer); + RegisterSingleInstance(new UdpServer(Logger), false); - var httpClient = new HttpClientManager.HttpClientManager(ApplicationPaths, Logger); + var httpClient = new HttpClientManager.HttpClientManager(ApplicationPaths, Logger); - RegisterSingleInstance(httpClient); + RegisterSingleInstance(httpClient); - RegisterSingleInstance(networkManager); - RegisterSingleInstance(serverManager); + RegisterSingleInstance(networkManager); + RegisterSingleInstance(serverManager); - SecurityManager = new PluginSecurityManager(Kernel, httpClient, JsonSerializer, ApplicationPaths); + SecurityManager = new PluginSecurityManager(Kernel, httpClient, JsonSerializer, ApplicationPaths); - RegisterSingleInstance(SecurityManager); + RegisterSingleInstance(SecurityManager); - RegisterSingleInstance(new PackageManager(SecurityManager, networkManager, httpClient, ApplicationPaths, JsonSerializer, Logger)); + RegisterSingleInstance(new PackageManager(SecurityManager, networkManager, httpClient, ApplicationPaths, JsonSerializer, Logger)); + }); } /// -- cgit v1.2.3