/// <summary> /// Returns the organizations of the current user. /// </summary> public async Task <IReadOnlyCollection <OrganizationResult> > GetOrganizationsAsync(CancellationToken cancellationToken = default(CancellationToken)) { var requestUrl = context.CreateRequestUri($"user/orgs"); using (var httpClient = await context.CreateHttpClientAsync()) { var response = await httpClient.GetAsync(requestUrl, cancellationToken : cancellationToken); var responseJson = await response.Content.ReadAsStringAsync(); var results = JsonEntity.ParseJsonArray <OrganizationResult>(responseJson); return(results ?? Array.Empty <OrganizationResult>()); } }
/// <summary> /// Returns the teams in the specified organization. /// </summary> public async Task <IReadOnlyCollection <TeamResult> > GetTeamsAsync(string orgName, CancellationToken cancellationToken = default(CancellationToken)) { var requestUrl = context.CreateRequestUri($"orgs/{orgName}/teams"); using (var httpClient = await context.CreateHttpClientAsync()) { var response = await httpClient.GetAsync(requestUrl, cancellationToken : cancellationToken); var responseJson = await response.Content.ReadAsStringAsync(); var results = JsonEntity.ParseJsonArray <TeamResult>(responseJson); return(results); } }
/// <summary> /// Returns the access tokens for the user with the specified username. /// </summary> public async Task <IReadOnlyCollection <TokenResult> > GetTokensAsync(string username, CancellationToken cancellationToken = default(CancellationToken)) { if (username == null) { throw new ArgumentNullException(nameof(username)); } if (string.IsNullOrWhiteSpace(username)) { throw new ArgumentException($"{nameof(username)} is required", paramName: nameof(username)); } var requestUrl = context.CreateRequestUri($"users/{username}/tokens"); using (var httpClient = await context.CreateHttpClientAsync()) { var response = await httpClient.GetAsync(requestUrl, cancellationToken : cancellationToken); var responseJson = await response.Content.ReadAsStringAsync(); var results = JsonEntity.ParseJsonArray <TokenResult>(responseJson); return(results ?? Array.Empty <TokenResult>()); } }