public static void Start(StartupContext startupContext, IUserAlert userAlert, Action <IContainer> startCallback = null) { try { SecurityProtocolPolicy.Register(); X509CertificateValidationPolicy.Register(); Logger.Info("Starting Gamearr - {0} - Version {1}", Assembly.GetCallingAssembly().Location, Assembly.GetExecutingAssembly().GetName().Version); if (!PlatformValidation.IsValidate(userAlert)) { throw new TerminateApplicationException("Missing system requirements"); } LongPathSupport.Enable(); _container = MainAppContainerBuilder.BuildContainer(startupContext); _container.Resolve <InitializeLogger>().Initialize(); _container.Resolve <IAppFolderFactory>().Register(); _container.Resolve <IProvidePidFile>().Write(); var appMode = GetApplicationMode(startupContext); Start(appMode, startupContext); if (startCallback != null) { startCallback(_container); } else { SpinToExit(appMode); } } catch (InvalidConfigFileException ex) { throw new GamearrStartupException(ex); } catch (AccessDeniedConfigFileException ex) { throw new GamearrStartupException(ex); } catch (TerminateApplicationException ex) { Logger.Info(ex.Message); LogManager.Configuration = null; } }
public static void Start(StartupContext startupContext, IUserAlert userAlert, Action <IContainer> startCallback = null) { LogTargets.Register(startupContext, false, true); try { GlobalExceptionHandlers.Register(); IgnoreCertErrorPolicy.Register(); Logger.Info("Starting NzbDrone - {0} - Version {1}", Assembly.GetCallingAssembly().Location, Assembly.GetExecutingAssembly().GetName().Version); if (!PlatformValidation.IsValidate(userAlert)) { throw new TerminateApplicationException("Missing system requirements"); } _container = MainAppContainerBuilder.BuildContainer(startupContext); _container.Resolve <IAppFolderFactory>().Register(); _container.Resolve <IProvidePidFile>().Write(); var appMode = GetApplicationMode(startupContext); Start(appMode, startupContext); if (startCallback != null) { startCallback(_container); } else { SpinToExit(appMode); } } catch (TerminateApplicationException e) { Logger.Info(e.Message); LogManager.Configuration = null; } }
public static IContainer Start(StartupArguments args, IUserAlert userAlert) { var logger = NzbDroneLogger.GetLogger(); GlobalExceptionHandlers.Register(); IgnoreCertErrorPolicy.Register(); logger.Info("Starting NzbDrone Console. Version {0}", Assembly.GetExecutingAssembly().GetName().Version); if (!PlatformValidation.IsValidate(userAlert)) { throw new TerminateApplicationException(); } var container = MainAppContainerBuilder.BuildContainer(args); DbFactory.RegisterDatabase(container); container.Resolve <Router>().Route(); return(container); }