public IResponse Visit(OrderQueryRequest request) { PagedList <OrderDetailsResponse> pagedResponse = _restWrapper.GetWithPaging <OrderDetailsResponse>(GetEndpoint(request), accessTokenHeader: GetHeaderToken(request), currentPageNumber: request.PageNumber); return(new OrderQueryResponse(pagedResponse)); }
public IList <OrderDetailsResponse> ListOrders(string accessToken, int locationId, int startPageNum, int endPageNum, out bool areThereMorePages) { if (endPageNum < startPageNum) { endPageNum = startPageNum; } OrderQueryRequest request = new OrderQueryRequest(accessToken, locationId, startPageNum); PagedList <OrderDetailsResponse> orders = _restWrapper.GetWithPaging <OrderDetailsResponse>( uri: GetOrderQueryRequestEndpoint(request), accessTokenHeader: FormatAccessTokenString(unspecifiedUserAccessToken: request.AccessToken), currentPageNumber: request.PageNumber); // Repackage the returned PagedList as an IList<OrderDetailsResponse> List <OrderDetailsResponse> retval = new List <OrderDetailsResponse>(); do { retval.AddRange(orders); areThereMorePages = orders.HasNextPage; if (areThereMorePages) { orders = orders.NextPage(); } } while (areThereMorePages && orders.CurrentPage <= endPageNum); return(retval); }