Module: VaucharAPI::Connection::RequestNotification

Included in:
ActiveResource::Connection, VaucharAPI::Connection
Defined in:
lib/vauchar_api/connection.rb

Instance Method Summary collapse

Instance Method Details

#notify_about_request(method, path, response, arguments) ⇒ Object



23
24
25
26
27
28
29
30
31
32
33
# File 'lib/vauchar_api/connection.rb', line 23

def notify_about_request(method, path, response, arguments)
  p "RequestNotification======================="
  ActiveSupport::Notifications.instrument("request.active_resource_detailed") do |payload|
    payload[:method] = method
    payload[:path] = path
    payload[:response] = response
    payload[:data] = arguments
    p payload
  end
  p "=========================================="
end

#request(method, path, *arguments) ⇒ Object



14
15
16
17
18
19
20
21
# File 'lib/vauchar_api/connection.rb', line 14

def request(method, path, *arguments)
  super.tap do |response|
    notify_about_request(method, path, response, arguments)
  end
rescue => e
  notify_about_request(method, path, e.response, arguments) if e.respond_to?(:response)
  raise
end