Class: Harbinger::Reporters::RequestReporter

Inherits:
Object
  • Object
show all
Defined in:
lib/harbinger/reporters/request_reporter.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(request, config = {}) ⇒ RequestReporter

Returns a new instance of RequestReporter.



6
7
8
9
# File 'lib/harbinger/reporters/request_reporter.rb', line 6

def initialize(request, config = {})
  @request = request
  @method_names = config.fetch(:method_names) { ['path', 'params', 'user_agent'] }
end

Instance Attribute Details

#requestObject (readonly)

Returns the value of attribute request.



4
5
6
# File 'lib/harbinger/reporters/request_reporter.rb', line 4

def request
  @request
end

Instance Method Details

#accept(message) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/harbinger/reporters/request_reporter.rb', line 11

def accept(message)
  method_names.each do |method_name|
    if request.respond_to?(method_name)
      message.append('request', method_name, request.public_send(method_name))
    end
  end
end