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.



88
89
90
91
# File 'lib/puppetserver/ca/utils/http_client.rb', line 88

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

Instance Method Details

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



114
115
116
117
118
119
120
121
# File 'lib/puppetserver/ca/utils/http_client.rb', line 114

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



93
94
95
96
97
98
99
100
101
# File 'lib/puppetserver/ca/utils/http_client.rb', line 93

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



103
104
105
106
107
108
109
110
111
112
# File 'lib/puppetserver/ca/utils/http_client.rb', line 103

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