diff --git a/NzbDrone.Common/Composition/ContainerBuilderBase.cs b/NzbDrone.Common/Composition/ContainerBuilderBase.cs index 4348d7616..9ac2747f1 100644 --- a/NzbDrone.Common/Composition/ContainerBuilderBase.cs +++ b/NzbDrone.Common/Composition/ContainerBuilderBase.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Reflection; +using NzbDrone.Common.EnvironmentInfo; using NzbDrone.Common.Messaging; using TinyIoC; @@ -14,8 +15,10 @@ public abstract class ContainerBuilderBase public IContainer Container { get; private set; } - protected ContainerBuilderBase(params string[] assemblies) + protected ContainerBuilderBase(IStartupArguments args, params string[] assemblies) { + + _loadedTypes = new List(); foreach (var assembly in assemblies) @@ -25,6 +28,7 @@ protected ContainerBuilderBase(params string[] assemblies) Container = new Container(new TinyIoCContainer(), _loadedTypes); AutoRegisterInterfaces(); + Container.Register(args); } private void AutoRegisterInterfaces() diff --git a/NzbDrone.Host/MainAppContainerBuilder.cs b/NzbDrone.Host/MainAppContainerBuilder.cs index dfe421894..51f47d415 100644 --- a/NzbDrone.Host/MainAppContainerBuilder.cs +++ b/NzbDrone.Host/MainAppContainerBuilder.cs @@ -17,9 +17,8 @@ public static IContainer BuildContainer(StartupArguments args) } private MainAppContainerBuilder(StartupArguments args) - : base("NzbDrone.Host", "NzbDrone.Common", "NzbDrone.Core", "NzbDrone.Api") + : base(args, "NzbDrone.Host", "NzbDrone.Common", "NzbDrone.Core", "NzbDrone.Api") { - Container.Register(args); AutoRegisterImplementations(); diff --git a/NzbDrone.Update/UpdateApp.cs b/NzbDrone.Update/UpdateApp.cs index 11a56b85d..167499373 100644 --- a/NzbDrone.Update/UpdateApp.cs +++ b/NzbDrone.Update/UpdateApp.cs @@ -29,13 +29,13 @@ public static void Main(string[] args) try { Console.WriteLine("Starting NzbDrone Update Client"); - + IgnoreCertErrorPolicy.Register(); GlobalExceptionHandlers.Register(); new LogglyTarget().Register(LogLevel.Trace); - _container = UpdateContainerBuilder.Build(); + _container = UpdateContainerBuilder.Build(new StartupArguments(args)); logger.Info("Updating NzbDrone to version {0}", BuildInfo.Version); _container.Resolve().Start(args); diff --git a/NzbDrone.Update/UpdateContainerBuilder.cs b/NzbDrone.Update/UpdateContainerBuilder.cs index b60f6e0d9..faac971eb 100644 --- a/NzbDrone.Update/UpdateContainerBuilder.cs +++ b/NzbDrone.Update/UpdateContainerBuilder.cs @@ -1,18 +1,19 @@ using NzbDrone.Common.Composition; +using NzbDrone.Common.EnvironmentInfo; namespace NzbDrone.Update { public class UpdateContainerBuilder : ContainerBuilderBase { - private UpdateContainerBuilder() - : base("NzbDrone.Update", "NzbDrone.Common") + private UpdateContainerBuilder(IStartupArguments startupArguments) + : base(startupArguments, "NzbDrone.Update", "NzbDrone.Common") { } - public static IContainer Build() + public static IContainer Build(IStartupArguments startupArguments) { - return new UpdateContainerBuilder().Container; + return new UpdateContainerBuilder(startupArguments).Container; } } } \ No newline at end of file