private static void OnCheckingForUpdate() { try { CheckingForUpdate?.Invoke(); } catch { // ignore all } }
/// <summary> /// Checking for update. /// </summary> /// <param name="e">The sender.</param> protected virtual void OnCheckingForUpdate(UpdaterStateEventArgs e) { if (_state == UpdaterState.Outdated) { CheckingForUpdate?.Invoke(new UpdaterStateEventArgs(GetEntryAssembly, _installOptions, _updateServerPackagePath, _state)); return; } CheckingForUpdate?.Invoke(new UpdaterStateEventArgs(GetEntryAssembly, _installOptions, _updateServerPackagePath, _state)); if (NetworkManager.InternetAvailable) { if (NetworkManager.SourceExists(e.PackagePath.OriginalString)) { if (ApplicationManager.CheckForUpdate(e.Assembly, e.PackagePath)) { _updateAvailable = true; NotificationUpdateAvailable(); _state = UpdaterState.Outdated; CheckingForUpdate?.Invoke(new UpdaterStateEventArgs(GetEntryAssembly, _installOptions, _updateServerPackagePath, _state)); } else { _updateAvailable = false; _state = UpdaterState.Updated; CheckingForUpdate?.Invoke(new UpdaterStateEventArgs(GetEntryAssembly, _installOptions, _updateServerPackagePath, _state)); } } else { _state = UpdaterState.PackageNotFound; _updateAvailable = false; CheckingForUpdate?.Invoke(new UpdaterStateEventArgs(GetEntryAssembly, _installOptions, _updateServerPackagePath, _state)); VisualExceptionDialog.Show(new FileNotFoundException(StringManager.RemoteFileNotFound(e.PackagePath.OriginalString))); } } else { _state = UpdaterState.NoConnection; _updateAvailable = false; CheckingForUpdate?.Invoke(new UpdaterStateEventArgs(GetEntryAssembly, _installOptions, _updateServerPackagePath, _state)); } _backgroundUpdateChecker.CancelAsync(); }