Class: Parse::NetHttpClient

Inherits:
HttpClient show all
Defined in:
lib/parse/http_client.rb

Defined Under Namespace

Classes: NetHttpResponseWrapper

Instance Attribute Summary

Attributes inherited from HttpClient

#base_url, #headers

Instance Method Summary collapse

Methods inherited from HttpClient

#build_query, #initialize

Constructor Details

This class inherits a constructor from Parse::HttpClient

Instance Method Details

#base_url=(url) ⇒ Object



40
41
42
43
44
# File 'lib/parse/http_client.rb', line 40

def base_url=(url)
  @base_url = url
  @client = Net::HTTP.new(@base_url.sub('https://', ''), 443)
  @client.use_ssl = true
end

#request(method, uri, headers, options) ⇒ Object



28
29
30
31
32
33
34
35
36
37
38
# File 'lib/parse/http_client.rb', line 28

def request(method, uri, headers, options)
  request_class = eval("Net::HTTP::#{method.to_s.capitalize}")
  uri = "#{uri}?#{options[:query]}" if options[:query]
  request = request_class.new(uri, @headers.dup.update(headers))
  request.body = options[:data] if options.has_key?(:data)
  NetHttpResponseWrapper.new(
    @client.start do
      @client.request(request)
    end
  )
end