Module: Citrix::Training::Helpers::HttpClient

Included in:
Namespace::Registrants, Namespace::Trainings
Defined in:
lib/citrix/training/helpers/http_client.rb

Instance Method Summary collapse

Instance Method Details

#http_clientObject



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/citrix/training/helpers/http_client.rb', line 13

def http_client
  @http_client ||= Aitch::Namespace.new.tap do |ns|
    ns.configure do |config|
      if $DEBUG
        require 'logger'
        config.logger = Logger.new($stdout)
      end

      config.user_agent = "Citrix::Rubygems/#{Citrix::VERSION}"
      config.default_headers = {
        'Authorization' => -> { "OAuth oauth_token=#{credentials.oauth_token}" },
        'Accept' => 'application/json',
        'Content-Type' => 'application/json'
      }
    end
  end
end

#json_parserObject



5
6
7
# File 'lib/citrix/training/helpers/http_client.rb', line 5

def json_parser
  http_client.configuration.json_parser
end

#url_for(*args) ⇒ Object



9
10
11
# File 'lib/citrix/training/helpers/http_client.rb', line 9

def url_for(*args)
  File.join(API_ENDPOINT, *args.map(&:to_s))
end