class ConfigStore::API
Public Class Methods
new(token:, base_url:)
click to toggle source
# File lib/configstore/apis/api.rb, line 15 def initialize(token:, base_url:) @token = token @options = { base_uri: base_url, headers: headers, } end
Private Instance Methods
handle_error(response)
click to toggle source
# File lib/configstore/apis/api.rb, line 42 def handle_error(response) raise ConfigStore::HTTPError.new(status_code: response.code, response: response.parsed_response) end
headers()
click to toggle source
# File lib/configstore/apis/api.rb, line 25 def headers return { "X-Token" => @token, 'Content-Type' => 'application/json', } end
with_response_handling() { || ... }
click to toggle source
# File lib/configstore/apis/api.rb, line 32 def with_response_handling response = begin yield rescue ::Timeout::Error # includes ::Net::OpenTimeout and ::Net::ReadTimeout raise ConfigStore::Timeout end handle_error(response) unless response.success? return response.parsed_response end