Class: Chef::REST::RESTRequest
Constant Summary collapse
- UA_COMMON =
"/#{::Chef::VERSION} (#{engine}-#{RUBY_VERSION}-p#{RUBY_PATCHLEVEL}; ohai-#{Ohai::VERSION}; #{RUBY_PLATFORM}; +http://opscode.com)"
- DEFAULT_UA =
"Chef Client" << UA_COMMON
Instance Attribute Summary collapse
-
#headers ⇒ Object
readonly
Returns the value of attribute headers.
-
#http_client ⇒ Object
readonly
Returns the value of attribute http_client.
-
#http_request ⇒ Object
readonly
Returns the value of attribute http_request.
-
#method ⇒ Object
readonly
Returns the value of attribute method.
-
#url ⇒ Object
readonly
Returns the value of attribute url.
Class Method Summary collapse
Instance Method Summary collapse
- #call ⇒ Object
- #config ⇒ Object
- #host ⇒ Object
-
#initialize(method, url, req_body, base_headers = {}) ⇒ RESTRequest
constructor
A new instance of RESTRequest.
- #path ⇒ Object
- #port ⇒ Object
- #query ⇒ Object
Constructor Details
#initialize(method, url, req_body, base_headers = {}) ⇒ RESTRequest
Returns a new instance of RESTRequest.
57 58 59 60 61 62 63 64 |
# File 'lib/chef/rest/rest_request.rb', line 57 def initialize(method, url, req_body, base_headers={}) @method, @url = method, url @request_body = nil @cookies = CookieJar.instance configure_http_client build_headers(base_headers) configure_http_request(req_body) end |
Instance Attribute Details
#headers ⇒ Object (readonly)
Returns the value of attribute headers.
55 56 57 |
# File 'lib/chef/rest/rest_request.rb', line 55 def headers @headers end |
#http_client ⇒ Object (readonly)
Returns the value of attribute http_client.
55 56 57 |
# File 'lib/chef/rest/rest_request.rb', line 55 def http_client @http_client end |
#http_request ⇒ Object (readonly)
Returns the value of attribute http_request.
55 56 57 |
# File 'lib/chef/rest/rest_request.rb', line 55 def http_request @http_request end |
#method ⇒ Object (readonly)
Returns the value of attribute method.
55 56 57 |
# File 'lib/chef/rest/rest_request.rb', line 55 def method @method end |
#url ⇒ Object (readonly)
Returns the value of attribute url.
55 56 57 |
# File 'lib/chef/rest/rest_request.rb', line 55 def url @url end |
Class Method Details
.user_agent ⇒ Object
51 52 53 |
# File 'lib/chef/rest/rest_request.rb', line 51 def self.user_agent @user_agent ||= DEFAULT_UA end |
.user_agent=(ua) ⇒ Object
47 48 49 |
# File 'lib/chef/rest/rest_request.rb', line 47 def self.user_agent=(ua) @user_agent = ua end |
Instance Method Details
#call ⇒ Object
82 83 84 85 86 87 88 89 90 |
# File 'lib/chef/rest/rest_request.rb', line 82 def call hide_net_http_bug do http_client.request(http_request) do |response| (response) yield response if block_given? response end end end |
#config ⇒ Object
92 93 94 |
# File 'lib/chef/rest/rest_request.rb', line 92 def config Chef::Config end |
#host ⇒ Object
66 67 68 |
# File 'lib/chef/rest/rest_request.rb', line 66 def host @url.host end |
#path ⇒ Object
78 79 80 |
# File 'lib/chef/rest/rest_request.rb', line 78 def path @url.path.empty? ? "/" : @url.path end |
#port ⇒ Object
70 71 72 |
# File 'lib/chef/rest/rest_request.rb', line 70 def port @url.port end |
#query ⇒ Object
74 75 76 |
# File 'lib/chef/rest/rest_request.rb', line 74 def query @url.query end |