public void SendUriAsync_Simple() { var request = new SendUriRequest { PrinterUri = PrinterUrl, JobId = JobId, DocumentUri = DocumentUri }; var result = _protocol.Construct(request); CheckResult(result); }
/// <summary> /// Print-Job Request /// https://tools.ietf.org/html/rfc2911#section-3.2.1.1 /// </summary> /// <param name="request"></param> public IppRequestMessage Construct(SendUriRequest request) { if (request.DocumentUri == null && !request.LastDocument) { throw new ArgumentException($"{nameof(request.DocumentUri)} must be set for non-last document"); } return(ConstructIppRequest(request)); }
public void SendUriAsync_Full() { var request = new SendUriRequest { PrinterUri = PrinterUrl, JobId = JobId, DocumentUri = DocumentUri, DocumentAttributes = new DocumentAttributes { DocumentName = "Document Name", DocumentFormat = "application/octet-stream", DocumentNaturalLanguage = "en" } }; var result = _protocol.Construct(request); CheckResult(result); }
public async Task SendUriAsync_Full() { await TestJobRequestAsync(async jobId => { var request = new SendUriRequest { PrinterUri = Options.Value.PrinterUrl, JobId = jobId, DocumentUri = Options.Value.DocumentUri, DocumentAttributes = new DocumentAttributes { DocumentName = "Document Name", DocumentFormat = "application/octet-stream", DocumentNaturalLanguage = "en" } }; return(await TestJobRequestAsync(request, (client, r) => client.SendUriAsync(r))); }); }
/// <summary> /// Send-URI Operation /// https://tools.ietf.org/html/rfc2911#section-3.3.2 /// </summary> /// <param name="request"></param> /// <returns></returns> public async Task <SendUriResponse> SendUriAsync(SendUriRequest request) { return(await SendAsync(request.PrinterUri, () => _ippProtocol.Construct(request), ippResponse => _ippProtocol.ConstructSendUriResponse(ippResponse))); }