Class: Moiper::Request

Inherits:
Object
  • Object
show all
Defined in:
lib/moiper/request.rb

Constant Summary collapse

CA_FILE =
File.expand_path(File.dirname(__FILE__)) + "/cacert.pem"

HTTP handling collapse

Instance Method Summary collapse

Instance Method Details

#clientNet::HTTP::Session

Returns the http session client.

Returns:

  • (Net::HTTP::Session)

    the http session client



19
20
21
22
23
24
25
# File 'lib/moiper/request.rb', line 19

def client
  @client ||= Net::HTTP.new(uri.host, uri.port).tap do |http|
    http.use_ssl = true
    http.ca_file = CA_FILE
    http.verify_mode = OpenSSL::SSL::VERIFY_PEER
  end
end

#process(payload) ⇒ Response

Process a given payload

Parameters:

  • payload (String)

Returns:



11
12
13
14
# File 'lib/moiper/request.rb', line 11

def process(payload)
  response = post(payload)
  Response.new(response.body)
end

#requestNet::HTTP::Post

Returns the http POST request already configured with the right agent, content type and basic authentication headers.

Returns:

  • (Net::HTTP::Post)

    the http POST request already configured with the right agent, content type and basic authentication headers



30
31
32
33
34
35
36
# File 'lib/moiper/request.rb', line 30

def request
  @request ||= Net::HTTP::Post.new(uri.path).tap do |request|
    request.basic_auth Moiper.token, Moiper.key
    request.content_type = "text/xml"
    request["User-Agent"] = "Moiper/#{Moiper::VERSION}"
  end
end