Module: Responders::PaginateResponder

Defined in:
lib/responders/paginate_responder.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.adaptersObject



23
24
25
# File 'lib/responders/paginate_responder.rb', line 23

def adapters
  @adapters ||= ::Set.new
end

.find(responder) ⇒ Object



36
37
38
39
40
# File 'lib/responders/paginate_responder.rb', line 36

def find(responder)
  adapters.find do |adapter|
    adapter.suitable?(responder.resource, responder)
  end
end

.init(responder) ⇒ Object



27
28
29
30
31
32
33
34
# File 'lib/responders/paginate_responder.rb', line 27

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)
end

.register(adapter) ⇒ Object



19
20
21
# File 'lib/responders/paginate_responder.rb', line 19

def register(adapter)
  adapters << adapter
end

Instance Method Details

#respondObject



5
6
7
8
9
# File 'lib/responders/paginate_responder.rb', line 5

def respond
  paginate! if get? || request.head?

  super
end