Class: EppoClient::HttpClient
- Inherits:
-
Object
- Object
- EppoClient::HttpClient
- Defined in:
- lib/http_client.rb
Overview
The http request client with retry/timeout behavior
Instance Attribute Summary collapse
-
#is_unauthorized ⇒ Object
readonly
Returns the value of attribute is_unauthorized.
Instance Method Summary collapse
- #get(resource) ⇒ Object
-
#initialize(base_url, sdk_params) ⇒ HttpClient
constructor
A new instance of HttpClient.
Constructor Details
#initialize(base_url, sdk_params) ⇒ HttpClient
Returns a new instance of HttpClient.
51 52 53 54 55 |
# File 'lib/http_client.rb', line 51 def initialize(base_url, sdk_params) @base_url = base_url @sdk_params = sdk_params @is_unauthorized = false end |
Instance Attribute Details
#is_unauthorized ⇒ Object (readonly)
Returns the value of attribute is_unauthorized.
41 42 43 |
# File 'lib/http_client.rb', line 41 def @is_unauthorized end |
Instance Method Details
#get(resource) ⇒ Object
57 58 59 60 61 62 63 64 65 66 67 |
# File 'lib/http_client.rb', line 57 def get(resource) conn = Faraday::Connection.new(@base_url, params: @sdk_params) do |f| f.request :retry, @retry_options end conn..timeout = REQUEST_TIMEOUT_SECONDS response = conn.get(resource) @is_unauthorized = response.status == 401 raise get_http_error(response.status, resource) if response.status != 200 JSON.parse(response.body) end |