Пример #1
0
 public async Task EnrollAsync(IMultiFactorAssertion multiFactorAssertion, string?displayName)
 {
     try
     {
         await _multiFactor.Enroll(multiFactorAssertion.ToNative(), displayName).AsAsync().ConfigureAwait(false);
     }
     catch (FirebaseException e)
     {
         throw ExceptionMapper.Map(e);
     }
 }
Пример #2
0
        public async Task <IAuthResult> ResolveSignInAsync(IMultiFactorAssertion multiFactorAssertion)
        {
            try
            {
                var result = await _multiFactorResolver.ResolveSignIn(multiFactorAssertion.ToNative())
                             .AsAsync <Firebase.Auth.IAuthResult>()
                             .ConfigureAwait(false);

                return(new AuthResultWrapper(result));
            }
            catch (FirebaseException e)
            {
                throw ExceptionMapper.Map(e);
            }
        }
        public Task EnrollAsync(IMultiFactorAssertion multiFactorAssertion, string?displayName)
        {
            var tcs = new TaskCompletionSource <bool>();

            _multiFactor.Enroll(multiFactorAssertion.ToNative(), displayName, (error) =>
            {
                if (error != null)
                {
                    tcs.SetException(ExceptionMapper.Map(error));
                }
                else
                {
                    tcs.SetResult(true);
                }
            });

            return(tcs.Task);
        }
Пример #4
0
        public Task <IAuthResult> ResolveSignInAsync(IMultiFactorAssertion multiFactorAssertion)
        {
            var tcs = new TaskCompletionSource <IAuthResult>();

            _multiFactorResolver.ResolveSignIn(multiFactorAssertion.ToNative(), (authResult, error) =>
            {
                if (error != null)
                {
                    tcs.SetException(ExceptionMapper.Map(error));
                }
                else
                {
                    tcs.SetResult(new AuthResultWrapper(authResult));
                }
            });

            return(tcs.Task);
        }