class Tikkie::Api::Resources::List

Base class for all list resources.

Attributes

page_number[R]
page_size[R]

Public Class Methods

new(config, options = {}) click to toggle source
Calls superclass method Tikkie::Api::Resources::Base::new
# File lib/tikkie/api/resources/list.rb, line 12
def initialize(config, options = {})
  @page_number = options.fetch(:page_number, 0)
  @page_size = options.fetch(:page_size, 50)
  super(config, options)
end

Public Instance Methods

next() click to toggle source
# File lib/tikkie/api/resources/list.rb, line 42
def next
  self.class.new(config, options.merge(page_number: next_page)) if next_page?
end
next_page() click to toggle source
# File lib/tikkie/api/resources/list.rb, line 26
def next_page
  page_number + 1 if next_page?
end
next_page?() click to toggle source
# File lib/tikkie/api/resources/list.rb, line 30
def next_page?
  page_number && (page_number + 1) < total_pages
end
previous() click to toggle source
# File lib/tikkie/api/resources/list.rb, line 46
def previous
  self.class.new(config, options.merge(page_number: previous_page)) if previous_page?
end
previous_page() click to toggle source
# File lib/tikkie/api/resources/list.rb, line 34
def previous_page
  page_number - 1 if previous_page?
end
previous_page?() click to toggle source
# File lib/tikkie/api/resources/list.rb, line 38
def previous_page?
  page_number && page_number.positive?
end
total_elements() click to toggle source
# File lib/tikkie/api/resources/list.rb, line 18
def total_elements
  body[:totalElementCount].to_i
end
total_pages() click to toggle source
# File lib/tikkie/api/resources/list.rb, line 22
def total_pages
  (total_elements / BigDecimal(page_size)).ceil
end