/* ASYNC *** ********************************************/ public Task <ElasticsearchResponse <T> > DoRequestAsync <T>(string method, string path, object data = null, IRequestParameters requestParameters = null) { using (var requestState = new TransportRequestState <T>(this.Settings, requestParameters, method, path)) { var bytes = PostData(data); requestState.TickSerialization(bytes); return(this.DoRequestAsync <T>(requestState) .ContinueWith(t => { var tcs = new TaskCompletionSource <ElasticsearchResponse <T> >(); if (t.Exception != null) { tcs.SetException(t.Exception.Flatten()); requestState.SetResult(null); } else { tcs.SetResult(t.Result); requestState.SetResult(t.Result); } return tcs.Task; }).Unwrap() ); } }
public OrientdbResponse <T> Request <T>(TransportRequestState <T> requestState, object data = null) { byte[] postData = PostData(data); requestState.TickSerialization(postData); OrientdbResponse <T> response = DoRequest(requestState); requestState.SetResult(response); return(response); }
public ElasticsearchResponse <T> Request <T>(TransportRequestState <T> requestState, object data = null) { var postData = PostData(data); requestState.TickSerialization(postData); var response = this.DoRequest <T>(requestState); requestState.SetResult(response); return(response); }
public Task <ElasticsearchResponse <T> > RequestAsync <T>(TransportRequestState <T> requestState, object data = null) { // Serialize request and inform requestState so it can keep track of serialization times var bytes = PostData(data); requestState.TickSerialization(bytes); return(this.DoRequestAsync <T>(requestState) // When the request returns again inform the request state so it can do its bookkeeping .ContinueWith(t => this.SetResultOnRequestState(t, requestState)) .Unwrap()); }
/* SYNC *** ********************************************/ public ElasticsearchResponse <T> DoRequest <T>(string method, string path, object data = null, IRequestParameters requestParameters = null) { using (var requestState = new TransportRequestState <T>(this.Settings, requestParameters, method, path)) { var bytes = PostData(data); requestState.TickSerialization(bytes); var result = this.DoRequest <T>(requestState); requestState.SetResult(result); return(result); } }