public async Task <string> AuthAction <T>(string endpoint, T content) { var body = JsonConvert.SerializeObject(content); var response = await _httpClient.PostAsync(endpoint, new StringContent(body, Encoding.UTF8, "application/json")); if (response.StatusCode != HttpStatusCode.OK) { return(null); } else { var accessToken = await response.Content.ReadAsStringAsync(); if (accessToken.Length == 0) { _currentAccessToken = null; return(null); } else { _currentAccessToken = accessToken; AccessTokenChanged?.Invoke(this, new EventArgs()); return(accessToken); } } }
internal void RestoreLoginInfo() { var value = loginInfoStorage.Load(); using (tokenChangeLock.WriterLock()) { loginInfo = value; ReadTokenData(); SetToken(); } AccessTokenChanged?.Invoke(value); }
protected virtual void OnAccessTokenChanged(EventArgs args) { AccessTokenChanged?.Invoke(this, args); }