Class: Puppetserver::Ca::Utils::HttpClient::Connection

Inherits:
Object
  • Object
show all
Defined in:
lib/puppetserver/ca/utils/http_client.rb

Overview

Helper class that wraps a Net::HTTP connection, a HttpClient::URL and defines methods named after HTTP verbs that are called on the saved connection, returning a Result.

Instance Method Summary collapse

Constructor Details

#initialize(net_http_connection, url_struct) ⇒ Connection

Returns a new instance of Connection.



52
53
54
55
# File 'lib/puppetserver/ca/utils/http_client.rb', line 52

def initialize(net_http_connection, url_struct)
  @conn = net_http_connection
  @url = url_struct
end

Instance Method Details

#delete(url_override = nil, headers = {}) ⇒ Object



78
79
80
81
82
83
84
85
# File 'lib/puppetserver/ca/utils/http_client.rb', line 78

def delete(url_override = nil, headers = {})
  url = url_override || @url
  headers = DEFAULT_HEADERS.merge(headers)

  result = @conn.request(Net::HTTP::Delete.new(url.to_uri, headers))

  Result.new(result.code, result.body)
end

#get(url_overide = nil, headers = {}) ⇒ Object



57
58
59
60
61
62
63
64
65
# File 'lib/puppetserver/ca/utils/http_client.rb', line 57

def get(url_overide = nil, headers = {})
  url = url_overide || @url
  headers = DEFAULT_HEADERS.merge(headers)

  request = Net::HTTP::Get.new(url.to_uri, headers)
  result = @conn.request(request)

  Result.new(result.code, result.body)
end

#put(body, url_override = nil, headers = {}) ⇒ Object



67
68
69
70
71
72
73
74
75
76
# File 'lib/puppetserver/ca/utils/http_client.rb', line 67

def put(body, url_override = nil, headers = {})
  url = url_override || @url
  headers = DEFAULT_HEADERS.merge(headers)

  request = Net::HTTP::Put.new(url.to_uri, headers)
  request.body = body
  result = @conn.request(request)

  Result.new(result.code, result.body)
end