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 -