Exception: Lago::Api::RateLimitError

Inherits:
HttpError
  • Object
show all
Defined in:
lib/lago/api/rate_limit_error.rb

Instance Attribute Summary collapse

Attributes inherited from HttpError

#error_body, #error_code, #uri

Instance Method Summary collapse

Methods inherited from HttpError

#json_message

Constructor Details

#initialize(code, body, uri, **options) ⇒ RateLimitError

Returns a new instance of RateLimitError.



8
9
10
11
12
13
# File 'lib/lago/api/rate_limit_error.rb', line 8

def initialize(code, body, uri, **options)
  super(code, body, uri)
  @limit = options[:limit]
  @remaining = options[:remaining]
  @reset = options[:reset]
end

Instance Attribute Details

#limitObject (readonly)

Returns the value of attribute limit.



6
7
8
# File 'lib/lago/api/rate_limit_error.rb', line 6

def limit
  @limit
end

#remainingObject (readonly)

Returns the value of attribute remaining.



6
7
8
# File 'lib/lago/api/rate_limit_error.rb', line 6

def remaining
  @remaining
end

#resetObject (readonly)

Returns the value of attribute reset.



6
7
8
# File 'lib/lago/api/rate_limit_error.rb', line 6

def reset
  @reset
end

Instance Method Details

#messageObject



15
16
17
18
19
20
# File 'lib/lago/api/rate_limit_error.rb', line 15

def message
  base_message = "HTTP #{error_code} - URI: #{uri}.\nError: #{error_body}"
  return base_message unless reset

  "#{base_message}\nRate limit will reset in #{reset} seconds."
end