Class: Honeybadger::Api::Request

Inherits:
Object
  • Object
show all
Defined in:
lib/honeybadger-api/request.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(path, handler, filters = {}) ⇒ Request

Returns a new instance of Request.



5
6
7
8
9
# File 'lib/honeybadger-api/request.rb', line 5

def initialize(path, handler, filters = {})
  @path = path
  @handler = handler
  @filters = filters
end

Class Method Details

.all(path, handler) ⇒ Object



11
12
13
14
# File 'lib/honeybadger-api/request.rb', line 11

def self.all(path, handler)
  request = Honeybadger::Api::Request.new(path, handler)
  request.all
end

.find(path, handler) ⇒ Object



24
25
26
27
# File 'lib/honeybadger-api/request.rb', line 24

def self.find(path, handler)
  request = Honeybadger::Api::Request.new(path, handler)
  request.find
end

.paginate(path, handler, filters) ⇒ Object



34
35
36
37
# File 'lib/honeybadger-api/request.rb', line 34

def self.paginate(path, handler, filters)
  request = Honeybadger::Api::Request.new(path, handler, filters)
  request.paginate
end

Instance Method Details

#allObject



16
17
18
19
20
21
22
# File 'lib/honeybadger-api/request.rb', line 16

def all
  paginator = Honeybadger::Api::Paginator.new(@path, @filters, @handler)
  while paginator.next?
    paginator.next
  end
  paginator.collection
end

#findObject



29
30
31
32
# File 'lib/honeybadger-api/request.rb', line 29

def find
  response = Honeybadger::Api.client.get(@path)
  @handler.call(response)
end

#paginateObject



39
40
41
# File 'lib/honeybadger-api/request.rb', line 39

def paginate
  Honeybadger::Api::Paginator.new(@path, @filters, @handler)
end