Exception: Twitter::Error
- Inherits:
-
StandardError
- Object
- StandardError
- Twitter::Error
- Defined in:
- lib/twitter/error.rb
Overview
Custom error class for rescuing from all Twitter errors
Direct Known Subclasses
Defined Under Namespace
Classes: BadGateway, BadRequest, ClientError, EnhanceYourCalm, Forbidden, InternalServerError, NotAcceptable, NotFound, ServerError, ServiceUnavailable, Unauthorized
Instance Attribute Summary (collapse)
-
- (Object) http_headers
readonly
Returns the value of attribute http_headers.
Instance Method Summary (collapse)
-
- (Twitter::Error) initialize(message, http_headers)
constructor
Initializes a new Error object.
- - (Integer) ratelimit_limit
- - (Integer) ratelimit_remaining
- - (Time) ratelimit_reset
- - (Integer) retry_after
Constructor Details
- (Twitter::Error) initialize(message, http_headers)
Initializes a new Error object
11 12 13 14 |
# File 'lib/twitter/error.rb', line 11 def initialize(, http_headers) @http_headers = Hash[http_headers] super() end |
Instance Attribute Details
- (Object) http_headers (readonly)
Returns the value of attribute http_headers
4 5 6 |
# File 'lib/twitter/error.rb', line 4 def http_headers @http_headers end |
Instance Method Details
- (Integer) ratelimit_limit
22 23 24 |
# File 'lib/twitter/error.rb', line 22 def ratelimit_limit @http_headers.values_at('x-ratelimit-limit', 'X-RateLimit-Limit').detect{|value| value}.to_i end |
- (Integer) ratelimit_remaining
27 28 29 |
# File 'lib/twitter/error.rb', line 27 def ratelimit_remaining @http_headers.values_at('x-ratelimit-remaining', 'X-RateLimit-Remaining').detect{|value| value}.to_i end |
- (Time) ratelimit_reset
17 18 19 |
# File 'lib/twitter/error.rb', line 17 def ratelimit_reset Time.at(@http_headers.values_at('x-ratelimit-reset', 'X-RateLimit-Reset').detect{|value| value}.to_i) end |
- (Integer) retry_after
32 33 34 |
# File 'lib/twitter/error.rb', line 32 def retry_after [(ratelimit_reset - Time.now).ceil, 0].max end |