class Nsa::NetHttpTracker

Attributes

address[R]
method[R]
path[R]
port[R]
protocol[R]
request_body[R]
request_headers[R]
response_body[R]
response_headers[R]
status_code[R]
status_message[R]

Public Class Methods

new(protocol, address, port, path, method, headers, body) click to toggle source
# File lib/nsa/net_http_tracker.rb, line 19
def initialize(protocol, address, port, path, method, headers, body)
  @protocol = protocol
  @address = address
  @port = port
  @path = path
  @method = method
  @request_headers = headers
  @request_body = body
  self.class.on_request.call(self)
end
on_request(&block) click to toggle source
# File lib/nsa/net_http_tracker.rb, line 6
def on_request(&block)
  if block_given?
    @on_request = block
  else
    @on_request
  end
end

Public Instance Methods

on_body(&block) click to toggle source
# File lib/nsa/net_http_tracker.rb, line 42
def on_body(&block)
  if block_given?
    @on_body = block
  else
    @on_body
  end
end
on_response(&block) click to toggle source
# File lib/nsa/net_http_tracker.rb, line 34
def on_response(&block)
  if block_given?
    @on_response = block
  else
    @on_response
  end
end
response_body=(body) click to toggle source
# File lib/nsa/net_http_tracker.rb, line 57
def response_body=(body)
  @response_body = body
  on_body.call
end
set_response_info(status_code, status_message, headers) click to toggle source
# File lib/nsa/net_http_tracker.rb, line 50
def set_response_info(status_code, status_message, headers)
  @status_code = status_code
  @status_message = status_message
  @response_headers = headers
  on_response.call
end
url() click to toggle source
# File lib/nsa/net_http_tracker.rb, line 30
def url
  "#{protocol}://#{address}#{path}"
end