Esempio n. 1
0
        public async Task <Account> GetAsync()
        {
            try {
                Account account = await _accountsHttpClient.GetAccountAsync(_authenticator.GetAccess());

                return(account);
            }
            catch (UnauthorizedException) {
                bool refreshResult = await _authenticator.RefreshAccessToken();

                if (refreshResult == false)
                {
                    _loginRenavigator.Renavigate();
                    return(null);
                }
                Account account = await _accountsHttpClient.GetAccountAsync(_authenticator.GetAccess());

                if (account == null)
                {
                    _loginRenavigator.Renavigate();
                }
                return(account);
            }
            catch (Exception) {
                _loginRenavigator.Renavigate();
                return(null);
            }
        }
        public async System.Threading.Tasks.Task Login(string username, string password)
        {
            Tokens = await _authenticationClient.LoginAsync(username, password);

            _tokenProvider.WriteTokensToFile(Tokens);
            CurrentAccount = await _accountClient.GetAccountAsync(Tokens.AccessToken);
        }