/// <summary> /// Executes a request given the configuration options supplied. /// </summary> /// <returns> /// A <see cref="Stream"/> /// </returns> public IResponse ExecuteRequest() { AutoResetEvent waitHandle = new AutoResetEvent(false); IAsyncRequestResult result = null; ExecuteRequestAsync(r => { result = r; waitHandle.Set(); }); waitHandle.WaitOne(); return(result.GetResponse()); }
/// <summary> /// Receives a response synchronously. /// </summary> /// <returns>The received response.</returns> private IResponse GetResponse() { AutoResetEvent waitHandle = new AutoResetEvent(false); IAsyncRequestResult result = null; GetAsyncResponse(r => { result = r; waitHandle.Set(); }); waitHandle.WaitOne(); return(result.GetResponse()); }