Beispiel #1
0
        public void RestRequestAsync(HttpRequest httpRequest, TransportCallback transportCallback)
        {
            HttpRequestMessage httpRequestMessage = ConstructHttpRequestMessage(httpRequest);

            httpClient.SendAsync(httpRequestMessage)
            .ContinueWith(task =>
            {
                HttpResponse httpResponse;
                try
                {
                    httpResponse = new HttpResponse(task.Result);
                }
                catch (Exception e)
                {
                    httpResponse = new HttpResponse(RestConstants.httpStatusInternalServerError, null, null, new RestliException("Error issuing asynchronous rest request", e));
                }

                transportCallback.OnResponse(httpResponse);
            });
        }
Beispiel #2
0
        public static void GetResponseCallback(IAsyncResult asyncResult)
        {
            RequestState      requestState      = (RequestState)asyncResult.AsyncState;
            HttpWebRequest    httpWebRequest    = requestState.httpWebRequest;
            TransportCallback transportCallback = requestState.transportCallback;

            HttpResponse httpResponse;

            try
            {
                HttpWebResponse httpWebResponse = (HttpWebResponse)httpWebRequest.EndGetResponse(asyncResult);
                httpResponse = new HttpResponse(httpWebResponse);
                httpWebResponse.Close();
            }
            catch (Exception e)
            {
                httpResponse = new HttpResponse(RestConstants.httpStatusInternalServerError, null, null, new RestliException("Error issuing asynchronous rest request", e));
            }

            transportCallback.OnResponse(httpResponse);
        }