class MoonropeClient::Responses::PaginatedCollection

Public Instance Methods

next_page() click to toggle source

@return [MoonropeClient::Responses::PaginatedCollection] the collection for the next page

# File lib/moonrope_client/responses/paginated_collection.rb, line 50
def next_page
  request = @request.dup
  request.params[:page] = page + 1
  request.make
end
page() click to toggle source

@return [Integer] the current page

# File lib/moonrope_client/responses/paginated_collection.rb, line 15
def page
  pagination_properties['page']
end
pagination_properties() click to toggle source

@return [Hash] all properties regarding pagination

# File lib/moonrope_client/responses/paginated_collection.rb, line 8
def pagination_properties
  flags['paginated']
end
per_page() click to toggle source

@return [Integer] the total records per page

# File lib/moonrope_client/responses/paginated_collection.rb, line 22
def per_page
  pagination_properties['per_page']
end
previous_page() click to toggle source

@return [MoonropeClient::Responses::PaginatedCollection] the collection for the previous page

# File lib/moonrope_client/responses/paginated_collection.rb, line 59
def previous_page
  if page > 1
    request = @request.dup
    request.params[:page] = page - 1
    request.make
  else
    raise Error, "Cannot return the previous page as there is no page before page #{page}"
  end
end
records() click to toggle source

@return [Array] all the items

# File lib/moonrope_client/responses/paginated_collection.rb, line 43
def records
  data
end
total_pages() click to toggle source

@return [Integer] the total number of pages

# File lib/moonrope_client/responses/paginated_collection.rb, line 29
def total_pages
  pagination_properties['total_pages']
end
total_records() click to toggle source

@return [Integer] the total number of records

# File lib/moonrope_client/responses/paginated_collection.rb, line 36
def total_records
  pagination_properties['total_records']
end