Class: Footrest::Pagination
- Inherits:
-
Faraday::Response::Middleware
- Object
- Faraday::Response::Middleware
- Footrest::Pagination
- Defined in:
- lib/footrest/pagination.rb
Defined Under Namespace
Classes: Links
Instance Method Summary collapse
Instance Method Details
#find_link(header, rel) ⇒ Object
29 30 31 32 |
# File 'lib/footrest/pagination.rb', line 29 def find_link(header, rel) link = ::LinkHeader.parse(header).links.find{ |link| link['rel'] == rel } link.to_a.first if link end |
#on_complete(response) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/footrest/pagination.rb', line 15 def on_complete(response) if response[:response_headers] if link_header = response[:response_headers][:link] links = Links.new %w(prev next first last current).each do |page| link = find_link(link_header, page) response["#{page}_page".to_sym] = link links.public_send("#{ page }=", link) end response[:pagination_links] = links end end end |