module Responders::PaginateResponder

Private Class Methods

adapters() click to toggle source
# File lib/responders/paginate_responder.rb, line 21
def adapters
  @adpaters ||= ::Set.new
end
find(responder) click to toggle source
# File lib/responders/paginate_responder.rb, line 34
def find(responder)
  adapters.find do |adapter|
    adapter.suitable?(responder.resource, responder)
  end
end
init(responder) click to toggle source
# File lib/responders/paginate_responder.rb, line 25
def init(responder)
  if responder.controller.respond_to?(:pagination_adapter_init)
    return responder.controller.pagination_adapter_init(responder)
  end

  adapter = find(responder)
  adapter.new(responder) if adapter
end
register(adapter) click to toggle source
# File lib/responders/paginate_responder.rb, line 17
def register(adapter)
  adapters << adapter
end

Public Instance Methods

respond() click to toggle source
Calls superclass method
# File lib/responders/paginate_responder.rb, line 3
def respond
  paginate! if get? || request.head?

  super
end

Private Instance Methods

paginate!() click to toggle source
# File lib/responders/paginate_responder.rb, line 11
def paginate!
  adapter = ::Responders::PaginateResponder.init(self)
  @resource = adapter.paginate! if adapter
end