/// <summary> /// Retrieves space status /// </summary> /// <param name="apiSession">api session</param> /// <param name="cancellationToken"></param> /// <returns></returns> public Task <SpaceStatus> GetSpaceStatusAsync(ApiSession apiSession, CancellationToken cancellationToken) { if (apiSession == null) { throw new ArgumentNullException(nameof(apiSession)); } return(Wrapped(async(token) => { var apiResult = await _lowLevelApiClient.SpacesGetSpaceStatusAsync(apiSession, apiSession.SpaceName, token); return MapOrFail(apiResult, (dto) => SpaceStatusMapper.MapFromDto(dto)); }, cancellationToken, OperationType.ShortOperation)); }
/// <summary> /// Retrieves space status /// </summary> /// <param name="apiSession">api session</param> /// <param name="cancellationToken"></param> /// <returns></returns> public async Task <SpaceStatus> GetSpaceStatusAsync(ApiSession apiSession, CancellationToken cancellationToken) { if (apiSession == null) { throw new ArgumentNullException(nameof(apiSession)); } var spaceName = apiSession.SpaceName; var url = UrlHelper.JoinUrl("spaces", spaceName, "status"); using (HttpResponseMessage response = await GetHttpClient().SendAsync(BuildHttpRequestMessage(HttpMethod.Get, url, null, apiSession), cancellationToken)) { var dto = await HandleResponse <SpaceStatusDto>(response); var entity = SpaceStatusMapper.MapFromDto(dto); return(entity); } }