Class: KcoRuby::RequestContext

Inherits:
Object
  • Object
show all
Defined in:
lib/kco_ruby/request_context.rb

Overview

RequestContext is responsible for building the correct request

Instance Method Summary collapse

Constructor Details

#initialize(uri, resource, connector) ⇒ RequestContext



5
6
7
8
9
# File 'lib/kco_ruby/request_context.rb', line 5

def initialize(uri, resource, connector)
  @uri = uri
  @resource = resource
  @connector = connector
end

Instance Method Details

#parse(method, options) ⇒ Object



11
12
13
14
15
16
17
18
19
20
# File 'lib/kco_ruby/request_context.rb', line 11

def parse(method, options)
  case method
    when :get
      create_get_request
    when :post
      create_post_request(options['data'] || @resource.marshal)
    else
      raise Exception.new("#{method} is not a valid HTTP method")
  end
end

#perform_requestObject



23
24
25
26
27
28
29
# File 'lib/kco_ruby/request_context.rb', line 23

def perform_request
  Net::HTTP.start(@uri.hostname,
                  @uri.port,
                  :use_ssl => @uri.scheme == 'https') do |http|
    http.request(@request)
  end
end