class Omdb::Api::Request
Constants
- BASE_URI
- PARAMS_MAP
Public Class Methods
new(client, request_method, params)
click to toggle source
# File lib/omdb/api/request.rb, line 10 def initialize(client, request_method, params) @configuration = client.configuration @request_method = request_method @headers = _set_headers(params.delete(:headers)) @params = _set_params(params.delete(:query_params)) end
Public Instance Methods
perform()
click to toggle source
# File lib/omdb/api/request.rb, line 17 def perform _http_client.public_send( @request_method, BASE_URI, headers: @headers, query: @params ) end
Private Instance Methods
_http_client()
click to toggle source
# File lib/omdb/api/request.rb, line 56 def _http_client HTTParty end
_set_headers(headers)
click to toggle source
# File lib/omdb/api/request.rb, line 44 def _set_headers(headers) key_translate = { content_type: 'Content-Type' } translated_headers = headers.each_with_object({}) do |(k, v), o| o[key_translate[k]] = v end { 'Content-Type' => 'application/json' }.merge(translated_headers) end
_set_params(params)
click to toggle source
# File lib/omdb/api/request.rb, line 38 def _set_params(params) {}.tap do |p| params.each { |k, v| p[PARAMS_MAP[k]] = v } end.merge({ apikey: @configuration.api_key }) end