Class: Printavo::Connection
- Inherits:
-
Object
- Object
- Printavo::Connection
- Defined in:
- lib/printavo/connection.rb
Instance Method Summary collapse
- #build ⇒ Object
-
#initialize(email:, token:, base_url: Config::BASE_URL, timeout: 30, max_retries: 2, retry_on_rate_limit: true) ⇒ Connection
constructor
A new instance of Connection.
Constructor Details
#initialize(email:, token:, base_url: Config::BASE_URL, timeout: 30, max_retries: 2, retry_on_rate_limit: true) ⇒ Connection
Returns a new instance of Connection.
15 16 17 18 19 20 21 22 23 |
# File 'lib/printavo/connection.rb', line 15 def initialize(email:, token:, base_url: Config::BASE_URL, timeout: 30, # rubocop:disable Metrics/ParameterLists max_retries: 2, retry_on_rate_limit: true) @email = email @token = token @base_url = base_url @timeout = timeout @max_retries = max_retries @retry_on_rate_limit = retry_on_rate_limit end |
Instance Method Details
#build ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/printavo/connection.rb', line 25 def build Faraday.new(url: @base_url) do |f| f.headers['Content-Type'] = 'application/json' f.headers['Accept'] = 'application/json' f.headers['email'] = @email f.headers['token'] = @token f.request :retry, ** f.response :json f..timeout = @timeout f..open_timeout = @timeout f.adapter Faraday.default_adapter end end |