public virtual async Task <IInfluxDataApiResponse> PostAsync(WriteRequest writeRequest) { var httpContent = new StringContent(writeRequest.GetLines(), Encoding.UTF8, "text/plain"); var requestParams = RequestParamsBuilder.BuildRequestParams(writeRequest.DbName, QueryParams.Precision, writeRequest.Precision); var result = await base.RequestAsync(HttpMethod.Post, RequestPaths.Write, requestParams, httpContent).ConfigureAwait(false); return(new InfluxDataApiWriteResponse(result.StatusCode, result.Body)); }
public async Task <IInfluxDbApiResponse> Write(WriteRequest writeRequest) { var requestContent = new StringContent(writeRequest.GetLines(), Encoding.UTF8, "text/plain"); var requestParams = RequestClientUtility.BuildRequestParams(writeRequest.DbName, QueryParams.Precision, writeRequest.Precision); var result = await this.RequestClient.PostDataAsync(requestParams : requestParams, content : requestContent); return(new InfluxDbApiWriteResponse(result.StatusCode, result.Body)); }
/// <summary>Writes the request to the endpoint.</summary> /// <param name="errorHandlers">The error handlers.</param> /// <param name="request">The request.</param> /// <param name="timePrecision">The time precision.</param> /// <returns></returns> public async Task <InfluxDbApiWriteResponse> Write(IEnumerable <ApiResponseErrorHandlingDelegate> errorHandlers, WriteRequest request, string timePrecision) { var content = new StringContent(request.GetLines(), Encoding.UTF8, "text/plain"); var result = await RequestAsync(errorHandlers, HttpMethod.Post, "write", content, new Dictionary <string, string> { { QueryParams.Db, request.Database }, { QueryParams.Precision, timePrecision } }, true, false); return(new InfluxDbApiWriteResponse(result.StatusCode, result.Body)); }
public virtual void WriteRequest_OnGetLines_ShouldReturnNewLineSeparatedPoints() { var points = _fixture.MockPoints(2); var formatter = _fixture.Sut.RequestClient.GetPointFormatter(); var request = new WriteRequest(formatter) { Points = points }; var actual = request.GetLines(); var expected = String.Join("\n", points.Select(p => formatter.PointToString(p))); actual.Should().Be(expected); }
public void WriteRequestGetLines_OnCall_ShouldReturnNewLineSeparatedPoints() { var points = CreateMockPoints(2); var formatter = _influx.GetFormatter(); var request = new WriteRequest(formatter) { Points = points }; var actual = request.GetLines(); var expected = String.Join("\n", points.Select(p => formatter.PointToString(p))); actual.Should().Be(expected); }