public virtual HttpRequest Create(ReplaceDocumentRequest request) { var httpRequest = CreateFor<ReplaceDocumentRequest>(new HttpMethod("COPY"), GenerateRequestUrl(request.SrcId, request.SrcRev)); httpRequest.Headers.Add("Destination", string.Concat(request.TrgId, "?rev=", request.TrgRev)); return httpRequest; }
protected virtual string GenerateRelativeUrl(ReplaceDocumentRequest request) { var urlParams = new UrlParams(); urlParams.AddIfNotNullOrWhiteSpace("rev", request.SrcRev); return(string.Format("/{0}{1}", new UrlSegment(request.SrcId), new QueryString(urlParams))); }
public virtual HttpRequest Create(ReplaceDocumentRequest request) { var httpRequest = CreateFor <ReplaceDocumentRequest>(new HttpMethod("COPY"), GenerateRequestUrl(request.SrcId, request.SrcRev)); httpRequest.Headers.Add("Destination", string.Concat(request.TrgId, "?rev=", request.TrgRev)); return(httpRequest); }
public virtual async Task <DocumentHeaderResponse> ReplaceAsync(ReplaceDocumentRequest request) { var httpRequest = CreateHttpRequest(request); using (var res = await SendAsync(httpRequest).ForAwait()) { return(ProcessDocumentHeaderResponse(res)); } }
public virtual async Task <DocumentHeaderResponse> ReplaceAsync(ReplaceDocumentRequest request, CancellationToken cancellationToken = default) { var httpRequest = ReplaceDocumentHttpRequestFactory.Create(request); using (var res = await SendAsync(httpRequest, cancellationToken).ForAwait()) { return(await DocumentHeaderReponseFactory.CreateAsync(res).ForAwait()); } }
public virtual async Task <DocumentHeaderResponse> ReplaceAsync(ReplaceDocumentRequest request) { Ensure.That(request, "request").IsNotNull(); using (var httpRequest = CreateHttpRequest(request)) { using (var res = await SendAsync(httpRequest).ForAwait()) { return(ProcessDocumentHeaderResponse(res)); } } }
public virtual HttpRequest Create(ReplaceDocumentRequest request) { Ensure.That(request, "request").IsNotNull(); var httpRequest = new HttpRequest(new HttpMethod("COPY"), GenerateRelativeUrl(request)) .SetRequestTypeHeader(request.GetType()) .SetIfMatchHeader(request.SrcRev); httpRequest.Headers.Add("Destination", string.Concat(request.TrgId, "?rev=", request.TrgRev)); return(httpRequest); }
protected virtual HttpRequest CreateHttpRequest(ReplaceDocumentRequest request) { return(ReplaceDocumentHttpRequestFactory.Create(request)); }
public static Task <DocumentHeaderResponse> PerformAsync(this IMyCouchClient client, ReplaceDocumentRequest request) { return(client.Documents.ReplaceAsync(request)); }