class Orchestrate::API::Request
Uses HTTParty to make the HTTP calls, and returns a Response object.
Attributes
data[RW]
The json document for creating or updating a key.
method[RW]
The HTTP method - must be one of: [ :get, :put, :delete ].
ref[RW]
The ref value associated with a key.
url[RW]
The url for the HTTP request.
user[RW]
The api key for HTTP Basic Authentication over SSL.
verbose[RW]
Boolean
Public Class Methods
new(method, url, user) { |self| ... }
click to toggle source
Sets the universal attributes from the params; any additional attributes are set from the block.
# File api/lib/orchestrate_api/request.rb, line 31 def initialize(method, url, user) @method, @url, @user = method, url, user @data = {} yield self if block_given? end
Public Instance Methods
perform()
click to toggle source
Sends the HTTP request and returns a Response object.
# File api/lib/orchestrate_api/request.rb, line 38 def perform puts "\n------- #{method.to_s.upcase} \"#{url}\" ------" if verbose? Response.new HTTParty.send(method, url, options) end
Private Instance Methods
options()
click to toggle source
Sets up the HTTParty options hash.
# File api/lib/orchestrate_api/request.rb, line 46 def options options = { basic_auth: { username: user, password: nil }} if method == :put headers = { 'Content-Type' => 'application/json' } if ref header = ref == '"*"' ? 'If-None-Match' : 'If-Match' headers.merge!(header => ref) end options.merge!(headers: headers, body: data) end options end
verbose?()
click to toggle source
# File api/lib/orchestrate_api/request.rb, line 59 def verbose? verbose == true end