class MessageExchange::Request

Attributes

params[R]
uri[R]

Public Class Methods

new(uri, params = {}) click to toggle source
# File lib/message_exchange/request.rb, line 5
def initialize(uri, params = {})
  @uri    = URI(uri)
  @params = params
end

Public Instance Methods

http() click to toggle source
# File lib/message_exchange/request.rb, line 24
def http
  Net::HTTP.new(uri.host, port).tap do |http|
    http.open_timeout = 0.1
    http.read_timeout = 0.25
  end
end
port() click to toggle source
# File lib/message_exchange/request.rb, line 14
def port
  80
end
request() click to toggle source
# File lib/message_exchange/request.rb, line 10
def request
  raise NotImplementedError, "Subclasses must implement this"
end
response() click to toggle source
# File lib/message_exchange/request.rb, line 18
def response
  @response ||= Response.new(http.request(request))
rescue Timeout::Error
  @response ||= ServerErrorResponse.new
end