class TableauServerClient::PaginatableResponse
Public Class Methods
new(client, request_url, response)
click to toggle source
# File lib/tableau_server_client/paginatable_response.rb, line 7 def initialize(client, request_url, response) @client = client @request_url = request_url @response = response end
Public Instance Methods
each() { |response| ... }
click to toggle source
# File lib/tableau_server_client/paginatable_response.rb, line 13 def each yield @response return unless paginated? res = @response.dup url = @request_url.dup while true pgn = Pagination.parse(res.body) break unless pgn.next_page? res = @client.session.get url.merge_params!(pgn.next_request_params).to_s yield res end end
each_body() { |XML(body)| ... }
click to toggle source
# File lib/tableau_server_client/paginatable_response.rb, line 26 def each_body each do |res| yield Nokogiri::XML(res.body) end end
Private Instance Methods
paginated?()
click to toggle source
# File lib/tableau_server_client/paginatable_response.rb, line 34 def paginated? @paginated ||= !Pagination.parse(@response.body).nil? end