public ApplicationLauncher(
     ILiveOptions <ApplicationConfiguration> liveOptions,
     ICredentialManager credentialManager,
     IMutexHandler mutexHandler,
     ILogger <ApplicationLauncher> logger,
     IPrivilegeManager privilegeManager)
 {
     this.logger            = logger.ThrowIfNull(nameof(logger));
     this.mutexHandler      = mutexHandler.ThrowIfNull(nameof(mutexHandler));
     this.credentialManager = credentialManager.ThrowIfNull(nameof(credentialManager));
     this.liveOptions       = liveOptions.ThrowIfNull(nameof(liveOptions));
     this.privilegeManager  = privilegeManager.ThrowIfNull(nameof(privilegeManager));
 }
 public AskUpdateView(
     ILogger <AskUpdateView> logger,
     IViewManager viewManager,
     ILiveUpdateableOptions <ApplicationConfiguration> liveOptions,
     IPrivilegeManager privilegeManager,
     IApplicationUpdater applicationUpdater)
 {
     this.logger             = logger.ThrowIfNull(nameof(logger));
     this.viewManager        = viewManager.ThrowIfNull(nameof(viewManager));
     this.liveOptions        = liveOptions.ThrowIfNull(nameof(liveOptions));
     this.privilegeManager   = privilegeManager.ThrowIfNull(nameof(privilegeManager));
     this.applicationUpdater = applicationUpdater.ThrowIfNull(nameof(applicationUpdater));
     this.InitializeComponent();
 }