/// <summary> /// Prerforms browsing the Space /// </summary> /// <param name="apiSession">api session</param> /// <param name="folderPath">folder path like /path/to/folder</param> /// <param name="cancellationToken"></param> /// <returns></returns> public Task <SpaceBrowsingInfo> SpaceBrowseAsync(ApiSession apiSession, string folderPath, CancellationToken cancellationToken) { if (apiSession == null) { throw new ArgumentNullException(nameof(apiSession)); } return(Wrapped(async(token) => { var apiResult = await _lowLevelApiClient.WebFilesBrowseSpaceAsync(apiSession, folderPath, token); return MapOrFail(apiResult, (dto) => SpaceBrowsingMapper.MapFromDto(dto)); }, cancellationToken, OperationType.ShortOperation)); }
/// <summary> /// Prerforms browsing the Space /// </summary> /// <param name="apiSession">api session</param> /// <param name="folderPath">folder path like /path/to/folder</param> /// <param name="cancellationToken"></param> /// <returns></returns> public async Task <SpaceBrowsingInfo> BrowseSpaceAsync(ApiSession apiSession, string folderPath, CancellationToken cancellationToken) { if (apiSession == null) { throw new ArgumentNullException(nameof(apiSession)); } var spaceName = apiSession.SpaceName; var nvc = new NameValueCollection(); nvc.Add("_", DateTime.Now.Ticks.ToString()); var url = UrlHelper.JoinUrl("space", spaceName, "browse", folderPath) + nvc.ToQueryString(); using (var response = await GetHttpClient().SendAsync(BuildHttpRequestMessage(HttpMethod.Get, url, null, apiSession), cancellationToken)) { var dto = await HandleResponse <SpaceBrowsingResponseDto>(response); return(SpaceBrowsingMapper.MapFromDto(dto)); } }