Ejemplo n.º 1
0
        public async Task <Tuple <HttpStatusCode, CoinDeskResponse> > Get(string endpoint)
        {
            using (var request = new HttpRequestMessage(HttpMethod.Get, endpoint))
            {
                request.Headers.Add("Accept", "application/json");

                using (var client = new HttpClient {
                    BaseAddress = new Uri(_baseUrl)
                })
                {
                    using (var response = await client.SendAsync(request))
                    {
                        var content = await response.Content.ReadAsStringAsync();

                        var status = response.StatusCode;
                        CoinDeskResponse result = null;

                        if (status == HttpStatusCode.OK)
                        {
                            result = !string.IsNullOrEmpty(content) ?
                                     JsonConvert.DeserializeObject <CoinDeskResponse>(content)
                                : null;
                        }

                        return(new Tuple <HttpStatusCode, CoinDeskResponse>(status, result));
                    }
                }
            }
        }
 internal static PriceIndexResponse Map(CoinDeskResponse data)
 {
     return(new PriceIndexResponse
     {
         LastUpdatedIso = data.time.updatedISO,
         PriceIndexes = new List <PriceIndex>
         {
             Map(data.bpi.EUR),
             Map(data.bpi.GBP),
             Map(data.bpi.USD),
         }
     });
 }
Ejemplo n.º 3
0
 public (HttpStatusCode, CoinDeskResponse) Result(HttpStatusCode httpStatusCode, CoinDeskResponse coinDeskResponse)
 {
     return(httpStatusCode, coinDeskResponse);
 }