diff options
| author | LukePulverenti <luke.pulverenti@gmail.com> | 2013-03-03 02:27:40 -0500 |
|---|---|---|
| committer | LukePulverenti <luke.pulverenti@gmail.com> | 2013-03-03 02:27:40 -0500 |
| commit | 7b0b5a35382d0b43f298d7ef015d6fd3031a8c72 (patch) | |
| tree | 9ffb770fe05b7d51995be8fb1dbdae4eaec01e26 | |
| parent | 7665b1563d6459aabe9ceea7cecc192d487c1686 (diff) | |
created an init method on base app host
| -rw-r--r-- | MediaBrowser.Common.Implementations/BaseApplicationHost.cs | 31 | ||||
| -rw-r--r-- | MediaBrowser.Common/Kernel/IApplicationHost.cs | 6 | ||||
| -rw-r--r-- | MediaBrowser.ServerApplication/App.xaml.cs | 1 | ||||
| -rw-r--r-- | MediaBrowser.ServerApplication/ApplicationHost.cs | 10 | ||||
| -rw-r--r-- | Nuget/MediaBrowser.Common.Internal.nuspec | 4 | ||||
| -rw-r--r-- | Nuget/MediaBrowser.Common.nuspec | 2 | ||||
| -rw-r--r-- | Nuget/MediaBrowser.Server.Core.nuspec | 4 |
7 files changed, 43 insertions, 15 deletions
diff --git a/MediaBrowser.Common.Implementations/BaseApplicationHost.cs b/MediaBrowser.Common.Implementations/BaseApplicationHost.cs index 3d7421f67..4e1b4634e 100644 --- a/MediaBrowser.Common.Implementations/BaseApplicationHost.cs +++ b/MediaBrowser.Common.Implementations/BaseApplicationHost.cs @@ -1,4 +1,5 @@ -using MediaBrowser.Common.Implementations.Udp; +using System.Threading.Tasks; +using MediaBrowser.Common.Implementations.Udp; using MediaBrowser.Common.Implementations.Updates; using MediaBrowser.Common.Implementations.WebSocket; using MediaBrowser.Common.Kernel; @@ -48,7 +49,7 @@ namespace MediaBrowser.Common.Implementations /// The container /// </summary> protected readonly Container Container = new Container(); - + /// <summary> /// Gets assemblies that failed to load /// </summary> @@ -114,16 +115,26 @@ namespace MediaBrowser.Common.Implementations protected BaseApplicationHost() { FailedAssemblies = new List<string>(); + } - ApplicationPaths = GetApplicationPaths(); + /// <summary> + /// Inits this instance. + /// </summary> + /// <returns>Task.</returns> + public virtual Task Init() + { + return Task.Run(() => + { + ApplicationPaths = GetApplicationPaths(); - LogManager = GetLogManager(); + LogManager = GetLogManager(); - Logger = LogManager.GetLogger("App"); + Logger = LogManager.GetLogger("App"); - IsFirstRun = !File.Exists(ApplicationPaths.SystemConfigurationFilePath); + IsFirstRun = !File.Exists(ApplicationPaths.SystemConfigurationFilePath); - DiscoverTypes(); + DiscoverTypes(); + }); } /// <summary> @@ -157,7 +168,7 @@ namespace MediaBrowser.Common.Implementations Plugins = GetExports<IPlugin>(); } - + /// <summary> /// Discovers the types. /// </summary> @@ -189,7 +200,7 @@ namespace MediaBrowser.Common.Implementations RegisterSingleInstance(networkManager); RegisterSingleInstance(serverManager); } - + /// <summary> /// Gets a list of types within an assembly /// This will handle situations that would normally throw an exception - such as a type within the assembly that depends on some other non-existant reference @@ -353,7 +364,7 @@ namespace MediaBrowser.Common.Implementations /// <param name="autorun">if set to <c>true</c> [autorun].</param> public void ConfigureAutoRunAtStartup(bool autorun) { - + } /// <summary> diff --git a/MediaBrowser.Common/Kernel/IApplicationHost.cs b/MediaBrowser.Common/Kernel/IApplicationHost.cs index 29934988a..38a1cb318 100644 --- a/MediaBrowser.Common/Kernel/IApplicationHost.cs +++ b/MediaBrowser.Common/Kernel/IApplicationHost.cs @@ -110,5 +110,11 @@ namespace MediaBrowser.Common.Kernel /// </summary> /// <param name="plugin">The plugin.</param> void RemovePlugin(IPlugin plugin); + + /// <summary> + /// Inits this instance. + /// </summary> + /// <returns>Task.</returns> + Task Init(); } } diff --git a/MediaBrowser.ServerApplication/App.xaml.cs b/MediaBrowser.ServerApplication/App.xaml.cs index 95ece67e6..d79b2ff43 100644 --- a/MediaBrowser.ServerApplication/App.xaml.cs +++ b/MediaBrowser.ServerApplication/App.xaml.cs @@ -165,6 +165,7 @@ namespace MediaBrowser.ServerApplication protected async void LoadKernel() { CompositionRoot = new ApplicationHost(); + await CompositionRoot.Init(); Logger = CompositionRoot.Logger; Kernel = CompositionRoot.Kernel; diff --git a/MediaBrowser.ServerApplication/ApplicationHost.cs b/MediaBrowser.ServerApplication/ApplicationHost.cs index d70d179a6..668887a56 100644 --- a/MediaBrowser.ServerApplication/ApplicationHost.cs +++ b/MediaBrowser.ServerApplication/ApplicationHost.cs @@ -78,6 +78,16 @@ namespace MediaBrowser.ServerApplication public ApplicationHost() : base() { + } + + /// <summary> + /// Inits this instance. + /// </summary> + /// <returns>Task.</returns> + public override async Task Init() + { + await base.Init().ConfigureAwait(false); + Kernel = new Kernel(this, ServerApplicationPaths, _xmlSerializer, Logger); var networkManager = new NetworkManager(); diff --git a/Nuget/MediaBrowser.Common.Internal.nuspec b/Nuget/MediaBrowser.Common.Internal.nuspec index 748191c03..b51ed3cc0 100644 --- a/Nuget/MediaBrowser.Common.Internal.nuspec +++ b/Nuget/MediaBrowser.Common.Internal.nuspec @@ -2,7 +2,7 @@ <package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd"> <metadata> <id>MediaBrowser.Common.Internal</id> - <version>3.0.24</version> + <version>3.0.25</version> <title>MediaBrowser.Common.Internal</title> <authors>Luke</authors> <owners>ebr,Luke,scottisafool</owners> @@ -12,7 +12,7 @@ <description>Contains common components shared by Media Browser Theatre and Media Browser Server. Not intended for plugin developer consumption.</description> <copyright>Copyright © Media Browser 2013</copyright> <dependencies> - <dependency id="MediaBrowser.Common" version="3.0.24" /> + <dependency id="MediaBrowser.Common" version="3.0.25" /> <dependency id="NLog" version="2.0.0.2000" /> <dependency id="ServiceStack" version="3.9.37" /> <dependency id="ServiceStack.Api.Swagger" version="3.9.35" /> diff --git a/Nuget/MediaBrowser.Common.nuspec b/Nuget/MediaBrowser.Common.nuspec index e1bb8b3e6..19b37c869 100644 --- a/Nuget/MediaBrowser.Common.nuspec +++ b/Nuget/MediaBrowser.Common.nuspec @@ -2,7 +2,7 @@ <package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd"> <metadata> <id>MediaBrowser.Common</id> - <version>3.0.24</version> + <version>3.0.25</version> <title>MediaBrowser.Common</title> <authors>Media Browser Team</authors> <owners>ebr,Luke,scottisafool</owners> diff --git a/Nuget/MediaBrowser.Server.Core.nuspec b/Nuget/MediaBrowser.Server.Core.nuspec index 04f326348..dfcb28aa0 100644 --- a/Nuget/MediaBrowser.Server.Core.nuspec +++ b/Nuget/MediaBrowser.Server.Core.nuspec @@ -2,7 +2,7 @@ <package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd"> <metadata> <id>MediaBrowser.Server.Core</id> - <version>3.0.24</version> + <version>3.0.25</version> <title>Media Browser.Server.Core</title> <authors>Media Browser Team</authors> <owners>ebr,Luke,scottisafool</owners> @@ -12,7 +12,7 @@ <description>Contains core components required to build plugins for Media Browser Server.</description> <copyright>Copyright © Media Browser 2013</copyright> <dependencies> - <dependency id="MediaBrowser.Common" version="3.0.24" /> + <dependency id="MediaBrowser.Common" version="3.0.25" /> </dependencies> </metadata> <files> |
