class TorgMailruApi::Listing

Public Class Methods

new(resource, params=nil) click to toggle source
# File lib/torg_mailru_api.rb, line 129
def initialize resource, params=nil
    @resource = resource
    @params = params.nil? ? {} : params
    @params[:page] = @params.fetch(:page, 1)
    @items = []
    @more = true
end

Public Instance Methods

each() { |shift| ... } click to toggle source
# File lib/torg_mailru_api.rb, line 137
def each
  return to_enum(:each) unless block_given?
  while true
    break unless fetch_next_page if @items.empty?
    yield @items.shift
  end
end
fetch_next_page() click to toggle source
# File lib/torg_mailru_api.rb, line 145
def fetch_next_page
  if @more
    r = TorgMailruApi.get @resource, @params
    @more = (r.results_total-r.results_per_page*r.page) > 0
    @items = r.listing
    @params[:page] += 1
    true
  end
end