public async Task <bool> Call(ITradierCommand cmd) { bool success = false; HttpRequestMessage request = null; if (cmd.HttpMethod == HttpMethod.Get) { request = CreateGetRequest(cmd); } else if (cmd.HttpMethod == HttpMethod.Post) { } else { throw new ArgumentOutOfRangeException(String.Format("Unrecognized HttpMethod value on ITradierCommand: {0}", cmd.HttpMethod.Method)); } //Initialize headers common to every call request.Headers.Accept.Clear(); if (cmd.MessageFormat.CompareTo(MessageFormatEnum.JSON) == 0) { request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); } else //defaulting to Xml { request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/xml")); } request.Headers.Add("Authorization", String.Format("Bearer {0}", cmd.AccessToken)); using (HttpClient client = new HttpClient()) { HttpResponseMessage response = await client.SendAsync(request); success = response.IsSuccessStatusCode; string content = await response.Content.ReadAsStringAsync(); RawResponse raw = new RawResponse((int)response.StatusCode, content); cmd.RawResponse = raw; } return(success); }
public async Task<bool> Call(ITradierCommand cmd) { bool success = false; HttpRequestMessage request = null; if (cmd.HttpMethod == HttpMethod.Get) { request = CreateGetRequest(cmd); } else if (cmd.HttpMethod == HttpMethod.Post) { } else throw new ArgumentOutOfRangeException(String.Format("Unrecognized HttpMethod value on ITradierCommand: {0}", cmd.HttpMethod.Method)); //Initialize headers common to every call request.Headers.Accept.Clear(); if (cmd.MessageFormat.CompareTo(MessageFormatEnum.JSON) == 0) { request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); } else //defaulting to Xml { request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/xml")); } request.Headers.Add("Authorization", String.Format("Bearer {0}", cmd.AccessToken)); using(HttpClient client = new HttpClient()) { HttpResponseMessage response = await client.SendAsync(request); success = response.IsSuccessStatusCode; string content = await response.Content.ReadAsStringAsync(); RawResponse raw = new RawResponse((int)response.StatusCode, content); cmd.RawResponse = raw; } return success; }
public BaseResponse(RawResponse raw) { RawResponse = raw; //Create our object model if applicable based on raw.Content }