/// <summary> /// Creates file stream and callsback the owner of the request, then completes. /// </summary> /// <param name="fileRequest"></param> /// <returns>The result of the callback to the owner</returns> protected virtual bool FullfillFileRequest(PDFRemoteFileRequest fileRequest) { using (var stream = File.OpenRead(fileRequest.FilePath)) { var success = fileRequest.Callback(this._owner, fileRequest, stream); fileRequest.CompleteRequest(success); return(success); } }
/// <summary> /// Creates file stream and callsback the owner of the request, then completes. /// </summary> /// <param name="fileRequest"></param> /// <returns>The result of the callback to the owner</returns> protected async virtual Task <bool> FullfillFileRequestAsync(PDFRemoteFileRequest fileRequest) { var content = await File.ReadAllBytesAsync(fileRequest.FilePath); using (var stream = new MemoryStream(content)) { var success = fileRequest.Callback(this.Owner, fileRequest, stream); fileRequest.CompleteRequest(success); return(success); } }
/// <summary> /// Creates an http client /// </summary> /// <param name="urlRequest"></param> /// <returns></returns> protected async virtual Task <bool> FullfillUriRequestAsync(PDFRemoteFileRequest urlRequest) { var client = this.GetHttpClient(); using (var stream = await client.GetStreamAsync(urlRequest.FilePath)) { var success = urlRequest.Callback(this.Owner, urlRequest, stream); urlRequest.CompleteRequest(success); return(success); } }
/// <summary> /// Creates an http client /// </summary> /// <param name="urlRequest"></param> /// <returns></returns> protected virtual bool FullfillUriRequest(PDFRemoteFileRequest urlRequest) { var client = this.GetHttpClient(); using (var stream = client.GetStreamAsync(urlRequest.FilePath).Result) { var success = urlRequest.Callback(this._owner, urlRequest, stream); urlRequest.CompleteRequest(success); return(success); } }