lib/sportradar/api/request.rb in sportradar-api-0.9.59 vs lib/sportradar/api/request.rb in sportradar-api-0.10.0
- old
+ new
@@ -2,40 +2,46 @@
module Api
class Request
include HTTParty
- attr_reader :url, :headers, :timeout, :api_key
+ # attr_reader :url, :headers, :timeout, :api_key
def get(path, options={})
- base_setup(path, options)
+ url, headers, options, timeout = base_setup(path, options)
begin
# puts url + "?api_key=#{api_key[:api_key]}" # uncomment for debugging
- response = self.class.get(url, headers: headers, query: options.merge(api_key), timeout: timeout)
+ response = self.class.get(url, headers: headers, query: options, timeout: timeout)
rescue Net::ReadTimeout, Net::OpenTimeout
raise Sportradar::Api::Error::Timeout
rescue EOFError
raise Sportradar::Api::Error::NoData
end
return Sportradar::Api::Error.new(response.code, response.message, response) unless response.success?
response
end
+ def get_request_info(url)
+ base_setup(request_url(url))
+ end
+
private
def base_setup(path, options={})
@url = set_base(path)
@url += format unless options[:format] == 'none'
@headers = set_headers unless options[:format] == 'none'
@timeout = options.delete(:api_timeout) || Sportradar::Api.config.api_timeout
+ [@url, @headers, options.merge(api_key), @timeout]
end
def set_base(path)
protocol = !!Sportradar::Api.config.use_ssl ? "https://" : "http://"
url = "#{protocol}api.sportradar.us"
url += path
end
+
def date_path(date)
"#{date.year}/#{date.month}/#{date.day}"
end
@@ -43,19 +49,22 @@
"#{ year }/#{ season }/#{ week }"
end
def format
- ".#{Sportradar::Api.config.format}" if Sportradar::Api.config.format
+ ".#{content_format}" if Sportradar::Api.config.format
end
def set_headers
- {'Content-Type' => "application/#{Sportradar::Api.config.format}", 'Accept' => "application/#{Sportradar::Api.config.format}"}
+ {'Content-Type' => "application/#{content_format}", 'Accept' => "application/#{content_format}"}
end
+ def content_format
+ Sportradar::Api.config.format
+ end
+
def api_key
raise Sportradar::Api::Error::NoApiKey
end
end
end
end
-