private async Task <Stream> DownloadHashedMediaResourceAsync(IMediaResourceDownloadRequest request, CancellationToken cancelToken = default(CancellationToken)) { var cryptor = await this.GetCredentialsCryptorAsync(cancelToken); MediaItemUrlBuilder urlBuilder = new MediaItemUrlBuilder( this.restGrammar, this.webApiGrammar, this.sessionConfig, this.mediaSettings, request.ItemSource); var hashUrlGetterFlow = new GetMediaContentHashTask(urlBuilder, this.httpClient, cryptor); string hashedMediaUrl = await RestApiCallFlow.LoadRequestFromNetworkFlow(request, hashUrlGetterFlow, cancelToken); try { Stream result = await this.httpClient.GetStreamAsync(hashedMediaUrl); return(result); } catch (Exception ex) { throw new LoadDataFromNetworkException(TaskFlowErrorMessages.NETWORK_EXCEPTION_MESSAGE, ex); } }
private async Task<Stream> DownloadHashedMediaResourceAsync(IMediaResourceDownloadRequest request, CancellationToken cancelToken = default(CancellationToken)) { var cryptor = await this.GetCredentialsCryptorAsync(cancelToken); MediaItemUrlBuilder urlBuilder = new MediaItemUrlBuilder( this.restGrammar, this.webApiGrammar, this.sessionConfig, this.mediaSettings, request.ItemSource); var hashUrlGetterFlow = new GetMediaContentHashTask(urlBuilder, this.httpClient, cryptor); string hashedMediaUrl = await RestApiCallFlow.LoadRequestFromNetworkFlow(request, hashUrlGetterFlow, cancelToken); try { Stream result = await this.httpClient.GetStreamAsync(hashedMediaUrl); return result; } catch (Exception ex) { throw new LoadDataFromNetworkException(TaskFlowErrorMessages.NETWORK_EXCEPTION_MESSAGE, ex); } }