public async Task <IHttpActionResult> GetUsersPaging(int?pageSize, int?page = 1)
        {
            if (pageSize == null || pageSize < 0 ||
                page < 0 || page == null)
            {
                return(BadRequest());
            }

            var requestResult = await _hc.GetAsync(_externalUser.GetLink());

            if (!requestResult.IsSuccessStatusCode)
            {
                return(Conflict());
            }

            var data = await requestResult
                       .Content
                       .ReadAsAsync <IEnumerable <UserModel> >();

            var mappedUserViewModel = Mapper.Map <IEnumerable <UserModel>, IEnumerable <UserViewModel> >(data);

            foreach (var item in mappedUserViewModel)
            {
                item.Links = new List <LinkHATEOAS>()
                {
                    CreatorHateoas.CreateHateoas("self",
                                                 $"{Url.Link("DefaultApi", new { id = item.Id})}",
                                                 "GET")
                };
            }

            return(Ok(_pagination.GetPaging(mappedUserViewModel, (int)pageSize, (int)page)));
        }
        public async Task <IHttpActionResult> GetAlbumsPaging(int?pageSize, int?page = 1)
        {
            if (pageSize == null || pageSize < 0 ||
                page < 0 || page == null)
            {
                return(BadRequest());
            }
            var asyncRequset = await GetAlbums();

            var asyncAlbums = await asyncRequset
                              .ExecuteAsync(CancellationToken.None);

            if (!asyncAlbums.IsSuccessStatusCode)
            {
                return(Conflict());
            }
            var allAlbums = await asyncAlbums
                            .Content
                            .ReadAsAsync <IEnumerable <AlbumViewModel> >();

            return(Ok(_pagination.GetPaging(allAlbums, (int)pageSize, (int)page)));
        }