@ -12,7 +12,7 @@ namespace NzbDrone.Update
{
{
private readonly UpdateProvider _updateProvider ;
private readonly UpdateProvider _updateProvider ;
private readonly ProcessProvider _processProvider ;
private readonly ProcessProvider _processProvider ;
private static IContainer _ kernel ;
private static IContainer _ container ;
private static readonly Logger logger = LogManager . GetCurrentClassLogger ( ) ;
private static readonly Logger logger = LogManager . GetCurrentClassLogger ( ) ;
@ -27,11 +27,13 @@ namespace NzbDrone.Update
try
try
{
{
Console . WriteLine ( "Starting NzbDrone Update Client" ) ;
Console . WriteLine ( "Starting NzbDrone Update Client" ) ;
_kernel = new ContainerBuilder ( ) . Build ( ) ;
var builder = new ContainerBuilder ( ) ;
builder . RegisterAssemblyTypes ( typeof ( UpdateProvider ) . Assembly ) . SingleInstance ( ) ;
_container = builder . Build ( ) ;
InitLoggers ( ) ;
InitLoggers ( ) ;
logger . Info ( "Updating NzbDrone to version {0}" , _ kernel . Resolve < EnvironmentProvider > ( ) . Version ) ;
logger . Info ( "Updating NzbDrone to version {0}" , _ container . Resolve < EnvironmentProvider > ( ) . Version ) ;
_ kernel . Resolve < Program > ( ) . Start ( args ) ;
_ container . Resolve < Program > ( ) . Start ( args ) ;
}
}
catch ( Exception e )
catch ( Exception e )
{
{
@ -46,8 +48,8 @@ namespace NzbDrone.Update
{
{
try
try
{
{
var environmentProvider = _ kernel . Resolve < EnvironmentProvider > ( ) ;
var environmentProvider = _ container . Resolve < EnvironmentProvider > ( ) ;
var diskProvider = _ kernel . Resolve < DiskProvider > ( ) ;
var diskProvider = _ container . Resolve < DiskProvider > ( ) ;
logger . Info ( "Copying log files to application directory." ) ;
logger . Info ( "Copying log files to application directory." ) ;
diskProvider . CopyDirectory ( environmentProvider . GetSandboxLogFolder ( ) , environmentProvider . GetUpdateLogFolder ( ) ) ;
diskProvider . CopyDirectory ( environmentProvider . GetSandboxLogFolder ( ) , environmentProvider . GetUpdateLogFolder ( ) ) ;
}
}
@ -59,7 +61,7 @@ namespace NzbDrone.Update
private static void InitLoggers ( )
private static void InitLoggers ( )
{
{
ReportingService . RestProvider = _ kernel . Resolve < RestProvider > ( ) ;
ReportingService . RestProvider = _ container . Resolve < RestProvider > ( ) ;
ReportingService . SetupExceptronDriver ( ) ;
ReportingService . SetupExceptronDriver ( ) ;
LogConfiguration . RegisterRemote ( ) ;
LogConfiguration . RegisterRemote ( ) ;