public virtual async Task <DatabaseHeaderResponse> CompactAsync(CompactDatabaseRequest request) { var httpRequest = CompactHttpRequestFactory.Create(request); using (var httpResponse = await SendAsync(httpRequest).ForAwait()) return(await DatabaseHeaderResponseFactory.CreateAsync(request, httpResponse).ForAwait()); }
public virtual async Task <DatabaseHeaderResponse> CompactAsync(CancellationToken cancellationToken = default) { var request = new CompactDatabaseRequest(Connection.DbName); var httpRequest = CompactHttpRequestFactory.Create(request); using (var httpResponse = await SendAsync(httpRequest, cancellationToken).ForAwait()) return(await DatabaseHeaderResponseFactory.CreateAsync(request, httpResponse).ForAwait()); }
public virtual HttpRequest Create(CompactDatabaseRequest request) { Ensure.That(request, "request").IsNotNull(); return(new HttpRequest(HttpMethod.Post, GenerateRelativeUrl(request)) .SetRequestTypeHeader(request.GetType()) .SetJsonContent()); }
public virtual async Task <DatabaseHeaderResponse> CompactAsync(CompactDatabaseRequest request) { var httpRequest = CreateHttpRequest(request); using (var res = await SendAsync(httpRequest).ForAwait()) { return(ProcessDatabaseHeaderResponse(res)); } }
protected override string GenerateRelativeUrl(CompactDatabaseRequest request) { return(string.Format("/{0}/_compact", new UrlSegment(request.DbName))); }
protected virtual HttpRequest CreateHttpRequest(CompactDatabaseRequest request) { return(CompactHttpRequestFactory.Create(request)); }
protected virtual string GenerateRelativeUrl(CompactDatabaseRequest request) { return("/_compact"); }