Esempio n. 1
0
        private void BackgroundWorkerDoWork(object sender, DoWorkEventArgs e)
        {
            BackgroundOperationType backgroundOperationType = (BackgroundOperationType)e.Argument;

            try
            {
                if (backgroundOperationType == BackgroundOperationType.CheckNewVersionAvailable)
                {
                    _newVersionAvailable = PassportPDFApplicationUpdateUtilities.IsNewVersionAvailable(_appId, _appVersion, out string latestVersion);
                    _latestVersionNumber = latestVersion;
                }
                else if (backgroundOperationType == BackgroundOperationType.CheckCurrentAppVersionIsSupported)
                {
                    _currentAppVersionIsSupported = PassportPDFApplicationUpdateUtilities.IsCurrentApplicationVersionSupported(_appId, _appVersion);
                }
                else if (backgroundOperationType == BackgroundOperationType.FetchPassportInfo)
                {
                    PassportPDFPassport passportPdfPassport = PassportPDFRequestsUtilities.GetPassportInfo(_passportToBeFetchedId);
                    if (passportPdfPassport != null)
                    {
                        _fetchedPassportInfo = new PassportInfo
                        {
                            PassportNumber   = passportPdfPassport.PassportId,
                            IsActive         = passportPdfPassport.IsActive,
                            SubscriptionDate = passportPdfPassport.SubscriptionDate ?? default,
                            TokensUsed       = passportPdfPassport.CurrentTokensUsed,
                            RemainingTokens  = passportPdfPassport.RemainingTokens,
                        };
                    }
                }
                else if (backgroundOperationType == BackgroundOperationType.FetchConfiguration)
                {
                    FrameworkGlobals.FetchPassportPDFConfigurationEx(_appId);
                }
                else if (backgroundOperationType == BackgroundOperationType.FetchOCRSupportedLanguages)
                {
                    _getAvailableOCRLanguagesResponse = PassportPDFRequestsUtilities.GetAvailableOCRLanguages();
                }
            }
            catch (Exception exception)
            {
                _apiCallException = exception;
            }
        }
        private void HandleApplicationUpdate()
        {
            bool downloadSuccess = DownloadLatestVersion(out string downloadedUpdatedAppFilePath);

            if (downloadSuccess)
            {
                if (_view.PromptCancellableInformationMessage(FrameworkGlobals.MessagesLocalizer.GetString("app_update_download_success_message", FrameworkGlobals.ApplicationLanguage), FrameworkGlobals.MessagesLocalizer.GetString("caption_information", FrameworkGlobals.ApplicationLanguage)))
                {
                    if (!PassportPDFApplicationUpdateUtilities.StartUpdatedAppInstallation(downloadedUpdatedAppFilePath))
                    {
                        _view.ShowErrorMessage(FrameworkGlobals.MessagesLocalizer.GetString("app_update_installation_failure_message", FrameworkGlobals.ApplicationLanguage), FrameworkGlobals.MessagesLocalizer.GetString("caption_error", FrameworkGlobals.ApplicationLanguage));
                    }
                    else
                    {
                        _view.ExitApplication();
                    }
                }
            }
            else
            {
                _view.ShowErrorMessage(FrameworkGlobals.MessagesLocalizer.GetString("app_update_download_failure_message", FrameworkGlobals.ApplicationLanguage), FrameworkGlobals.MessagesLocalizer.GetString("caption_error", FrameworkGlobals.ApplicationLanguage));
            }
        }
Esempio n. 3
0
 private void BackgroundWorkerDoWork(object sender, DoWorkEventArgs e)
 {
     _downloadedUpdateFilePath = PassportPDFApplicationUpdateUtilities.DownloadAppLatestVersion((string)e.Argument, OnUpdateDownloadCompletion, OnUpdateDownloadProgress);
 }