public IObservable<TwoFactorChallengeResult> HandleTwoFactorException(TwoFactorAuthorizationException exception) { var userError = new TwoFactorRequiredUserError(exception); return twoFactorDialog.Show(userError) .ObserveOn(RxApp.MainThreadScheduler) .SelectMany(x => x == RecoveryOptionResult.RetryOperation ? Observable.Return(userError.ChallengeResult) : Observable.Throw<TwoFactorChallengeResult>(exception)); }
public IObservable <TwoFactorChallengeResult> HandleTwoFactorException(TwoFactorAuthorizationException exception) { var userError = new TwoFactorRequiredUserError(exception); return(twoFactorDialog.Show(userError) .ObserveOn(RxApp.MainThreadScheduler) .SelectMany(x => x == RecoveryOptionResult.RetryOperation ? Observable.Return(userError.ChallengeResult) : Observable.Throw <TwoFactorChallengeResult>(exception))); }
public async Task <TwoFactorChallengeResult> HandleTwoFactorException(TwoFactorAuthorizationException exception) { await ThreadingHelper.SwitchToMainThreadAsync(); var userError = new TwoFactorRequiredUserError(exception); var result = await twoFactorDialog.Show(userError); if (result != null) { return(result); } else { throw exception; } }
public async Task <TwoFactorChallengeResult> HandleTwoFactorException(TwoFactorAuthorizationException exception) { Guard.ArgumentNotNull(exception, nameof(exception)); await JoinableTaskContext.Factory.SwitchToMainThreadAsync(); var userError = new TwoFactorRequiredUserError(exception); var result = await twoFactorDialog.Show(userError); if (result != null) { return(result); } else { throw exception; } }