public void GetTicksTest() { GetTickersResponse result = client.GetTicksAsync().Result; string strret = JsonConvert.SerializeObject(result, Formatting.Indented); Console.WriteLine(strret); Assert.Equal("ok", result.status); }
public bool Save(string key, GetTickersResponse data) { var cachedData = _client.Get<GetTickersResponse>(key); if (cachedData == null) { var expireInTimespan = new TimeSpan(1, 0, 0, 0); _client.Add(key, data, expireInTimespan); return true; } else { return false; } }
public bool Save(string key, GetTickersResponse data) { var cachedData = _client.Get <GetTickersResponse>(key); if (cachedData == null) { var expireInTimespan = new TimeSpan(1, 0, 0, 0); _client.Add(key, data, expireInTimespan); return(true); } else { return(false); } }
public List <TickerInformation> GetTickers() { GetTickersResponse response = exmoClient.GetTickers(); List <TickerInformation> result = new List <TickerInformation>(); foreach (var ticket in response) { string key = ticket.Key; GetTickersDetail ti = ticket.Value; TickerInformation tickerInfo = new TickerInformation() { Symbol = key, Ask = ti.AskPrice, Bid = ti.BidPrice, Last = ti.Last, Open = default,
public object Get(GetTickers request) { var response = new GetTickersResponse(); try { if (string.IsNullOrEmpty(request.DataSource) && string.IsNullOrEmpty(request.Query)) { throw new ServiceResponseException("Unknown request. Missing parameters."); } if (request.PerPage <= 0) { throw new ArgumentNullException("request", "Invalid [PerPage] field"); } if (request.PageNumber < 0) { throw new ArgumentNullException("request", "Invalid [PageNumber] field"); } var cached = _cachingManager.GetTickers(request.ToJson()); if (cached != null) { return(cached); } else { var result = !string.IsNullOrEmpty(request.Query) ? _dataProvider.GetTickers(request.Query, true, new PagingOptions(request.PerPage, request.PageNumber)) : _dataProvider.GetTickers(request.DataSource, false, new PagingOptions(request.PerPage, request.PageNumber)); if (result != null) { if (result.Success) { response.Success = true; response.Data = result.Data; _cachingManager.Save(request.ToJson(), response); } else { response.ResponseStatus = new ResponseStatus(string.Empty, result.ErrorMessage); } } else { response.ResponseStatus = new ResponseStatus(string.Empty, "Result is empty"); } } } catch (Exception ex) { var status = new ResponseStatus(); status.Message = ex.Message; status.ErrorCode = ex.Source; status.StackTrace = ex.StackTrace; response.ResponseStatus = status; } return(response); }
public object Get(GetTickers request) { var response = new GetTickersResponse(); try { if (string.IsNullOrEmpty(request.DataSource) && string.IsNullOrEmpty(request.Query)) { throw new ServiceResponseException("Unknown request. Missing parameters."); } if (request.PerPage <= 0) { throw new ArgumentNullException("request", "Invalid [PerPage] field"); } if (request.PageNumber < 0) { throw new ArgumentNullException("request", "Invalid [PageNumber] field"); } var cached = _cachingManager.GetTickers(request.ToJson()); if (cached != null) { return cached; } else { var result = !string.IsNullOrEmpty(request.Query) ? _dataProvider.GetTickers(request.Query, true, new PagingOptions(request.PerPage, request.PageNumber)) : _dataProvider.GetTickers(request.DataSource, false, new PagingOptions(request.PerPage, request.PageNumber)); if (result != null) { if (result.Success) { response.Success = true; response.Data = result.Data; _cachingManager.Save(request.ToJson(), response); } else { response.ResponseStatus = new ResponseStatus(string.Empty, result.ErrorMessage); } } else { response.ResponseStatus = new ResponseStatus(string.Empty, "Result is empty"); } } } catch (Exception ex) { var status = new ResponseStatus(); status.Message = ex.Message; status.ErrorCode = ex.Source; status.StackTrace = ex.StackTrace; response.ResponseStatus = status; } return response; }