class Openstack::Client::Authenticator::Request
Handles authentication request.
Attributes
credentials[R]
uri[R]
Public Class Methods
new(credentials:, uri:)
click to toggle source
# File lib/openstack/client/authenticator/request.rb, line 16 def initialize(credentials:, uri:) @credentials = credentials @uri = uri end
Public Instance Methods
call()
click to toggle source
# File lib/openstack/client/authenticator/request.rb, line 21 def call set_headers set_body https_client.request(request) end
Private Instance Methods
payload()
click to toggle source
# File lib/openstack/client/authenticator/request.rb, line 41 def payload <<~JSON.squish { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "#{username}", "domain": { "id": "default" }, "password": "#{password}" } } } } } JSON end
request()
click to toggle source
# File lib/openstack/client/authenticator/request.rb, line 33 def request @request ||= Net::HTTP::Post.new(uri) end
set_body()
click to toggle source
# File lib/openstack/client/authenticator/request.rb, line 37 def set_body request.body = payload end
set_headers()
click to toggle source
# File lib/openstack/client/authenticator/request.rb, line 29 def set_headers request.add_field('Content-Type', 'application/json') end