module Sniffer::Adapters::EthonAdapter::Http
overrides http_request method
Public Class Methods
included(base)
click to toggle source
# File lib/sniffer/adapters/ethon_adapter.rb, line 9 def self.included(base) base.class_eval do alias_method :http_request_without_sniffer, :http_request alias_method :http_request, :http_request_with_sniffer end end
Public Instance Methods
http_request_with_sniffer(url, action_name, options = {})
click to toggle source
rubocop:disable Metrics/AbcSize,Metrics/MethodLength
# File lib/sniffer/adapters/ethon_adapter.rb, line 17 def http_request_with_sniffer(url, action_name, options = {}) if Sniffer.enabled? @data_item = Sniffer::DataItem.new uri = URI("http://" + url) @data_item.request = Sniffer::DataItem::Request.new(host: uri.host, method: action_name.upcase, port: options[:port] || uri.port, headers: options[:headers].to_h, body: options[:body].to_s) Sniffer.store(@data_item) end http_request_without_sniffer(url, action_name, options) end