Class: Kameleoon::Network::EMNetProvider

Inherits:
NetProvider show all
Defined in:
lib/kameleoon/network/net_provider.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.em_resp_to_response(request, resp) ⇒ Object



56
57
58
59
60
# File 'lib/kameleoon/network/net_provider.rb', line 56

def self.em_resp_to_response(request, resp)
  return resp if resp.is_a?(Response)

  Response.new(nil, resp.response_header.status, resp.response, request)
end

Instance Method Details

#make_request(request) ⇒ Object



30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'lib/kameleoon/network/net_provider.rb', line 30

def make_request(request)
  connetion_options = {
    tls: { verify_peer: false },
    connect_timeout: request.timeout,
    inactivity_timeout: request.timeout
  }
  headers = collect_headers(request)
  request_options = { head: headers, body: request.data }
  begin
    case request.method
    when Method::POST
      EventMachine::HttpRequest.new(request.url, connetion_options).apost(request_options)
    when Method::GET
      EventMachine::HttpRequest.new(request.url, connetion_options).aget(request_options)
    else
      dfr = DeferrableResponse.new
      dfr.response = unknown_method_response(request.method, request)
      dfr
    end
  rescue => e
    dfr = DeferrableResponse.new
    dfr.response = Response.new(e, nil, nil, request)
    dfr
  end
end